Payment-Refund-v2
Barion API: Execute the refund of a payment
POST | /v2/Payment/Refund |
---|
The /payment/refund
API endpoint is used to execute a refund of an existing, completed payment.
Prerequisites before use:
- Creating an account in Barion
- Creating a shop in Barion
- Calling the Barion API
- Barion Shop Authentication
- API: /Payment/Start
- API: /Payment/GetPaymentState
v2 This API endpoint is available in API v2 only.
Use cases
This API endpoint is designed to be used in the following scenarios:
Input properties
Property name | Property type | Limitations and constraints | Description |
---|---|---|---|
POSKey | Guid |
|
The secret API key of the shop, generated by Barion. This lets the shop to authenticate through the Barion API, but does not provide access to the account owning the shop itself. |
PaymentId | Guid |
|
The identifier of the payment in the Barion system. |
TransactionsToRefund | TransactionToRefund[] |
|
An array containing the payment transactions to refund. |
Output properties
Property name | Property type | Description |
---|---|---|
PaymentId | Guid | The identifier of the payment in the Barion system. |
RefundedTransactions | RefundedTransaction[] | An array containing information about the refunded transactions. |
Possible error responses
Error code | Description |
---|---|
ModelValidationError | This happens when some of the input properties fail the basic validation. For example a string property exceeds its allowed length. |
NotExistingPaymentId | The specified payment id is invalid. |
SuspendedUserTriedToRefund | You are not allowed to refund a payment if you are suspended. |
TheSourceAndDestinationAccountsAreMatched | Very rare error, this happens in case the payment was payed by the shop owner. |
PaymentStatusNotValid | Only payments in Succeeded status can be refunded.
|
TransactionDoesNotBelongToPayment | The transaction specified in the request body does not belong to a payment. |
InvalidTransactionType | The transaction specified is not a refundable transaction type. Only CardPayment , Shop and BankTransferPayment types are refundable.
|
InvalidAccount | The account is not eligable for refund. |
TooLowBalanceToMakeRefund | There is not enough funds to fulfill the refund request. |
AmountToRefundIsGreaterThanTransactionAmount | The amount specified to refund is greater than the original payment transaction itself. |
InternalServerError | Something unexpected happened. |