...
Order initialization - redirect URL and payment ID are present in the response
Order processing
Redirect flow - Redirecting to URL obtained in step 1. Details of the redirect flow can be found here: Redirect Flow
Embedded flow - Calling Process Order endpoint until the payment is processed (and react on specific responses like inputs requests etc.). Details of the embedded flow can be found here: Embedded Flow
Checking status
Either by getting the order detail (Get Order endpoint) - it provides detail of the order together of details of all its payments
Or by getting the detail of the specific payment in the order (Get Order Payment endpoint)
Order statuses
Status | Withdrawable | Description |
---|---|---|
UNPAID | yes | Payment of the order is not paid yet. The order is withdrawable in this status in case the related payment is in one of statuses CREATED and SEEN. |
PARTIALLY_PAID | no | Payment of the order is paid but order amount is higher than the paid payment amount (this can happen by updating the order with higher amount what creates another payment in the order which is to be paid). |
PAID | no | The order is fully paid. |
Payment statuses
During the payment process the payment changes its status. The status defines not only state of the payment, but also possible operations - payments in some statuses cannot be updated or cancelled.
Status | Final | Withdrawable | Description |
---|---|---|---|
CREATED | no | yes | Payment is created and waiting for the user. |
SEEN | no | yes | User opens the Everifin Paygate web page or processing via Process Order endpoint is started. |
PROCESSING | no | no | The payment is being processed (user is authorizing payment on bank`s page or authorization is done and payment is being processed in the bank). |
CONFIRMED | yes | no | The payment has been successfully authorized in the bank by the payer. |
BOOKED | yes | no | The payment has been booked (settled) in the bank. |
WITHDRAWN | yes | no | The payment has been withdrawn by merchant. |
FAILED | yes | no | Payment has failed. Field |
EXPIRED | yes | no | Payments that stay in CREATED or SEEN for a long time are eventually moved to this state. |
Payment status flow chart
...
Payment Failure reason codes
Reason code | Description | Flow |
---|---|---|
CANCELED_BY_PAYER_AT_EVERIFIN | Payer rejected the payment on Everifin Paygate page before authorization has been initiated. | REDIRECT |
BANK_NOT_FOUND | Payer has not found the desired bank and wants to choose different payment method at the merchant's site. | REDIRECT |
MANUAL_TRANSFER_REQUESTED | Payer has not found the desired bank and decided to receive payment details for the manual bank transfer via email (generating and sending the email to customer need to be handled by merchant). This feature is turned off by default. | REDIRECT |
CANCELED_BY_PAYER_AT_BANK | Payer canceled the payment on the bank’s page. | ALL |
INSUFFICIENT_AMOUNT | Payer does not have enough funds on his account to make the payment. | ALL |
AML_BLOCKED | Payer’s funds have been blocked at the bank as a result of bank’s AML checks. Payer needs to contact the bank to treat the situation further. | ALL |
OTHER | Other, unspecified failure reasons (e.g. payment authorization failed, bank API temporary outage etc.) | ALL |
API v1 vs. v2
Main differences between API v1 and v2 are:
...