Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. Getting or refreshing existing API access token

  2. Calling Create Order Endpoint (providing payment data, redirect URL). Storing received Payment ID (and Order ID as it is needed later to get payment detail) and redirecting customer to received redirect URL for payment authorization.

  3. The customer authorizes the payment via her/his bank and finally is redirected back to merchant’s redirect URL. During the payment authorization process, merchant’s webhooks are being called (merchant is getting payment status updates).

  4. Once redirected back to merchant’s web site (or application), the merchant should proceed with the following actions:

    1. Only if Webhooks are implemented - Merchant should check the status of his entity (it might have been updated via webhook call and already in final status - success or failure).

    2. If payment is not in the final status yet (via webhooks), the endpoint to get payment detail https://everifin.atlassian.net/wiki/spaces/EPAD/pages/2562228372/Payment+Orders#Order%E2%80%99s-payment-detail should be called (certain polling interval should be set up as backup for webhooks).

  5. Customer is presented with web page informing about payment success and further information about order processing.

  6. in case of failed payment, customer should be presented with page where he can restart checkout procedure (i.e. kept goods/services in the shopping cart and possibility to choose again from payment methods).

Recommended reactions to payment statuses

Please follow the recommendations described here: https://everifin.atlassian.net/wiki/spaces/EPAD/pages/2467561491/Paygate+Payment+Flow#Recommended-reactions-to-payment-statuses

Edge cases handling

Situation

Handling

After redirect back to merchant, the payment is still in PROCESSING status.

In some rare cases it may happen the payment is not in final status at the moment of redirection back to merchant but still in PROCESSING status (i.e. the bank has not processed the payment yet).Merchant should inform the customer the payment is still being processed and that the customer will be notified once the payment is processed successfully (via email, in the customer’s e-shop account etc.). The merchant needs to implement background process of payment status checking (webhooks or polling payment detail endpoint in some intervals as backup).

The possible reactions are described here: https://everifin.atlassian.net/wiki/spaces/EPAD/pages/2467561491/Paygate+Payment+Flow#Recommended-reactions-to-payment-statuses

Customer interrupts the payment process and does not return to merchant’s e-shop page.

These situations can be handled by webhooks functionality. As a backup solution, process of polling the payment detail endpoint by the client in some interval should be implemented by the merchant.

...