...
redirect flow - Everifin Paygate web page is used to do process the payment
embedded flow - your web page is used to do process the payment and you call only Everifin Paygate API(no Everifin GUI is used, purely the API calls)
Both scenarios have similar steps in the payment process, just the initialization is different.
Steps
The payment flow has these parts:
Common step Authentication - first your system needs to be authenticated to Everifin Paygate. See Authentication
API v1
Payment initialization - this step is different for both scenarios:
Redirect flow - see Redirect Flow (v1)
Embedded flow - see Embedded Flow
Payment processing - optional step for embedded flow, see https://everifin.atlassian.net/wiki/spaces/EPAD/pages/2467561560/Embedded+Flow#3.-Process-payment
Get payment(s) - you can get payment data for single payment or payment list. This can be used to check payment status in case you do not use hooks. See https://everifin.atlassian.net/wiki/spaces/EPAD/pages/2467561608/Payment+Resources#Get-payments
API v2
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 (anmd 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 | Flow | Description |
---|---|---|---|---|
CREATED | no | yes | ALL | Payment is created and waiting for the user. |
SEEN | no | yes | REDIRECT | User opens the Everifin Paygate web page. |
PROCESSING | no | no | ALL | 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 | ALL | The payment has been successfully authorized in the bank by the payer. |
BOOKED | yes | no | ALL | The payment has been booked (settled) in the bank. |
WITHDRAWN | yes | no | ALL | The payment has been withdrawn by merchant. |
FAILED | yes | no | ALL | Payment has failed. Field |
EXPIRED | yes | no | ALL | Payments that stay in CREATED or SEEN for a long time are eventually moved to this state. |
Payment status flow chart
Drawio | ||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
...