POST /payment_initiation/payment/reverse
Reverse a settled payment from a Plaid virtual account.
The original payment must be in a settled state to be refunded. To refund partially, specify the amount as part of the request. If the amount is not specified, the refund amount will be equal to all of the remaining payment amount that has not been refunded yet.
The refund will go back to the source account that initiated the payment. The original payment must have been initiated to a Plaid virtual account so that this account can be used to initiate the refund.
Providing counterparty information such as date of birth and address increases the likelihood of refund being successful without human intervention.
Servers
- https://production.plaid.com
- https://sandbox.plaid.com
Request headers
Name | Type | Required | Description |
---|---|---|---|
Content-Type |
String | Yes |
The media type of the request body.
Default value: "application/json" |
Request body fields
Name | Type | Required | Description |
---|---|---|---|
client_id |
String | No |
Your Plaid API |
counterparty_address |
Object | No |
The optional address of the payment recipient's bank account. Required by most institutions outside of the UK. |
counterparty_address.postal_code |
String | Yes |
The postal code where the recipient is located. Maximum of 16 characters. |
counterparty_address.country |
String | Yes |
The ISO 3166-1 alpha-2 country code where the recipient is located. |
counterparty_address.street[] |
Array | Yes |
An array of length 1-2 representing the street address where the recipient is located. Maximum of 70 characters. |
counterparty_address.city |
String | Yes |
The city where the recipient is located. Maximum of 35 characters. |
payment_id |
String | Yes |
The ID of the payment to reverse |
reference |
String | Yes |
A reference for the refund. This must be an alphanumeric string with 6 to 18 characters and must not contain any special characters or spaces. |
secret |
String | No |
Your Plaid API |
idempotency_key |
String | Yes |
A random key provided by the client, per unique wallet transaction. Maximum of 128 characters. The API supports idempotency for safely retrying requests without accidentally performing the same operation twice. If a request to execute a wallet transaction fails due to a network connection error, then after a minimum delay of one minute, you can retry the request with the same idempotency key to guarantee that only a single wallet transaction is created. If the request was successfully processed, it will prevent any transaction that uses the same idempotency key, and was received within 24 hours of the first request, from being processed. |
counterparty_date_of_birth |
String | No |
The counterparty's birthdate, in ISO 8601 (YYYY-MM-DD) format. |
How to start integrating
- Add HTTP Task to your workflow definition.
- Search for the API you want to integrate with and click on the name.
- This loads the API reference documentation and prepares the Http request settings.
- Click Test request to test run your request to the API and see the API's response.