After the Consumer is redirected back to your environment, get payment details by sending us a Get payment details request.
Additionally, if you send notificationUrl
in Initiate payment request body and domain of notification URL is added in your DevApp configuration, we will send you a status change notification. Request body matches Get payment details body, and we expect your 200 response. If we don’t receive a 200 response, we retry 5 times each minute and then abort. Please, keep in mind that notifications are sent asynchronously, so status mapping is a key thing.
Response body will contain all information about the payment. In addition to payment data provided in Payment Initiation request, Response will have set of various statuses and Consumer details.
Our Gateway provides these statuses (parameter status.code
) :
Initiated | Payment initiation request received from Merchant. |
PendingMerchant | Payment initiation response sent to Merchant. |
InProgress | Redirect received from Merchant. |
Processing | Payment initiation request sent to Provider. |
PendingProvider | A redirect was received from the Provider OR a Payment status update was received from the Provider; however, the payment status is not terminal. |
Approved | Payment approved. |
Settled | Funds has been received in Merchant Account. Currently, in non-prod you won’t be able to receive this status . If you want to test it, inform us, and our dev-support team will change Approved transactions to Settled. Important! Some PIS payment method providers send funds faster than we receive approval from them (in SEPA INST cases), thus there is a case where you might receive this status before Approved. |
Failed | Payment failed. |
Abandoned | Payment canceled or abandoned at the Provider OR the Session expires OR the Consumer cancels payment before initiating it. |
Refunded | The payment was refunded. |
PendingRefund | Refund is in progress. |
PartialyRefunded | A partial amount of the payment was refunded. |
To understand if the status is terminal, check status.isTerminal
: Boolean finalisation indicator:
- True – if payment is finalised and its status won‘t change.
- False – payment is not completed yet.
Tips! There are some exemptions with terminal status when it’s moving from one terminal state to another:
- Approved → Settled. When funds are settled, we notify you separately. Currently commercial card transactions don’t have this status for delayed settlement, this is why 2 states can be terminal.
- Approved/Settled → Refunded/PartialyRefunded. If your customer required a refund, we move one terminal state to another terminal state that is related to refund action. Usually before changing state to Refunded/PartialyRefunded we add one intermediate status PendingRefund while we process a refund.
- Settled → Approved. This change can happen only for SEPA INST payments and it’s caused by asynchronous notifications. Sometimes, funds are received faster than a response from the bank.