Description

Mangopay relies on the Refund object to manage the reimbursement of a past transaction. A Refund object has the value REFUND as its Nature and is linked to the transaction being reimbursed by its InitialTransactionId property.

Two types of refund are initiated by the platform (see the Refunds guide for details):

  • Pay-in refund – Platform request to reimburse a pay-in.
  • Transfer refund – Platform request to reimburse a transfer.

There are two other cases generated automatically by Mangopay:

  • Payout return – Return of funds created when, for instance, the end user’s bank account is closed or if the acquiring bank refuses the funds. This transaction re-credits the wallet from which the payout was sent. See the Payouts guide for more details.
  • Repudiation return – Return of funds created when a dispute is won in favor of the platform. This transaction re-credits the Repudiation Wallet, from which the repudiation was debited. See the Disputes guide for more details.

Note – Transaction data retained for 13 months

The API retains all transaction objects for 13 months from CreationDate. This applies to refunds and the initial transaction linked to a refund.

A call to retrieve the initial transaction of a refund, based on the refund’s InitialTransactionId, may return a 404 Not Found if it occurred more than 13 months ago.

For more information, see the Data availability periods article.

Attributes

Id
string

The unique identifier of the object.

Tag
string

Max. length: 255 characters

Custom data that you can add to this object.

CreationDate
timestamp

The date and time at which the object was created.

AuthorId
string

The unique identifier of the user at the source of the initial transaction.

CreditedUserId
string

Default value: The unique identifier of the owner of the credited wallet.

The unique identifier of the user whose wallet is credited.

DebitedFunds
object

Default value: The amount and currency values of the debited funds of the initial transaction.

Information about the debited funds. Debited funds:

  • Takes by default the amount and currency values of the initial transaction when left empty.
  • Must be entered manually to perform a partial refund.
  • Cannot exceed the initial transaction CreditedFunds value when entered manually. This also applies to the sum of debited funds when making multiple partial refunds.
CreditedFunds
object

Information about the credited funds (CreditedFunds = DebitedFunds - Fees).

Fees
object

Default value: The amount and currency values of the fees of the initial transaction.

Information about the fees. This value:

  • Should be preceded by a minus sign (-) to refund the fees, otherwise more fees will be taken.
  • Takes by default the amount and currency values of the fees of the initial transaction when left empty (preceded by a -).
  • Cannot exceed the initial transaction fees amount when entered manually. This also applies to the sum of the amount of the fees when making multiple partial refunds.
Status
string

Returned values: CREATED, SUCCEEDED, FAILED

The status of the transaction.

ResultCode
string

The code indicating the result of the operation. This information is mostly used to handle errors or for filtering purposes.

ResultMessage
string

The explanation of the result code.

ExecutionDate
timestamp

The date and time at which the status changed to SUCCEEDED, indicating that the transaction occurred. The statuses CREATED and FAILED return an ExecutionDate of null.

Type
string

Returned values: PAYIN, TRANSFER, CONVERSION, PAYOUT

The type of the transaction.

Nature
string

Returned values: REGULAR, REPUDIATION, REFUND, SETTLEMENT

The nature of the transaction, providing more information about the context in which the transaction occurred:

  • REGULAR – Relative to most of the transactions (pay-ins, payouts, and transfers) in a usual workflow.
  • REPUDIATION – Automatic withdrawal of funds from the platform’s repudiation wallet as part of the dispute process (when the user has requested a chargeback).
  • REFUND – Reimbursement of a transaction to the user (pay-in refund), to a wallet (transfer refund), or of a payout (payout refund, only initiated by Mangopay).
  • SETTLEMENT – Transfer made to the repudiation wallet by the platform to settle a lost dispute.
InitialTransactionId
string

The unique identifier of the initial transaction being refunded.

InitialTransactionType
string

Returned values: PAYIN, TRANSFER, PAYOUT

The type of the initial transaction being refunded.

InitialTransactionNature
string

Returned values: REGULAR, REPUDIATION, REFUND, SETTLEMENT

The nature of the initial transaction being refunded, providing more information about the context in which the transaction occurred:

  • REGULAR – Relative to most of the transactions (pay-ins, payouts, and transfers) in a usual workflow.
  • REPUDIATION – Automatic withdrawal of funds from the platform’s repudiation wallet as part of the dispute process (when the user requested a chargeback).
  • REFUND – Reimbursement of a transaction to the user (pay-in refund), to a wallet (transfer refund), or of a payout (payout refund, only initiated by Mangopay).
  • SETTLEMENT – Transfer made to the repudiation wallet by the platform to settle the credit from a repudiation following a lost dispute.
DebitedWalletId
string

The unique identifier of the debited wallet.

CreditedWalletId
string

The unique identifier of the credited wallet.

RefundReason
object

Information about the reasons for the refund.