Create a Refund for a PayIn
The pay-in refund is a request to reimburse a pay-in and is supported for most payment methods. You can make partial refunds by providing a debited funds Amount
value lower than the initial transaction amount.
Note – Conditions for pay-in refund
- The amount value is 1 or above, regardless of the currency.
- The initial transaction status is
SUCCEEDED
. - The initial transaction hasn’t been disputed.
- The initial transaction was made within the time window specified for the payment method.
Read more about pay-in refunds →
Path parameters
The unique identifier of the pay-in.
Body parameters
Max. length: 255 characters
Custom data that you can add to this object.
For transactions (pay-in, transfer, payout), you can use this parameter to identify corresponding information regarding the user, transaction, or payment methods on your platform.
The unique identifier of the user at the source of the initial transaction.
Default value: The amount and currency values of the debited funds of the initial transaction.
Required if the Fees
parameter is included in the call.
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.
Default value: The amount and currency values of the fees of the initial transaction.
Required if the DebitedFunds
parameter is included in the call.
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.
Max. length: 10 characters; only alphanumeric and spaces
Custom description to appear on the user’s bank statement along with the platform name. Different banks may show more or less information. See the Customizing bank statement references article for details.
Note: On refunds, the StatementDescriptor
is only available for SEPA and BACS direct debit pay-ins (no other payment methods nor transfers).
Responses
200
200
Max length: 128 characters (see data formats for details)
The unique identifier of the object.
Max. length: 255 characters
Custom data that you can add to this object.
For transactions (pay-in, transfer, payout), you can use this parameter to identify corresponding information regarding the user, transaction, or payment methods on your platform.
The date and time at which the object was created.
The unique identifier of the user at the source of the initial transaction.
Default value: The unique identifier of the owner of the credited wallet.
The unique identifier of the user whose wallet is credited.
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.
Information about the funds being credited to the target of the transaction (CreditedFunds
= DebitedFunds
- Fees
).
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.
Returned values: CREATED
, SUCCEEDED
, FAILED
The status of the transaction.
The code indicating the result of the operation. This information is mostly used to handle errors or for filtering purposes.
The explanation of the result code.
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
.
Returned values: PAYIN
, TRANSFER
, CONVERSION
, PAYOUT
The type of the transaction.
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.
The unique identifier of the initial transaction being refunded.
Returned values: PAYIN
, TRANSFER
, PAYOUT
The type of the initial transaction being refunded.
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.
The unique identifier of the debited wallet.
The unique identifier of the credited wallet.
Information about the reasons for the refund.
Max. length: 10 characters; only alphanumeric and spaces
Custom description to appear on the user’s bank statement along with the platform name. Different banks may show more or less information. See the Customizing bank statement references article for details.
Note: On refunds, the StatementDescriptor
is only available for SEPA and BACS direct debit pay-ins (no other payment methods nor transfers).
400 - Fees parameter must be defined
400 - Fees parameter must be defined
400 - Incorrect AuthorId
400 - Incorrect AuthorId
400 - DebitedFunds exceed initial CreditedFunds
400 - DebitedFunds exceed initial CreditedFunds
400 - The transaction is already disputed
400 - The transaction is already disputed
404 - PayInId not found, including if archived after 13 months
404 - PayInId not found, including if archived after 13 months
A 404 is returned if the initial transaction has been archived after 13 months and no longer available via the API (see data availability for details). Note that for many payment methods, the period during which a refund is allowed is shorter than 13 months.