In the redirect flow the user is redirected to Everifin Paygate page where the payment is done. In this flow the client system initializes the payment, redirects and then gets the result - success or failure. This makes the redirect flow much simpler for implementation comparing to the embedded flow.
Payment initialization
In payment initialization you send the information about the payment to Everifin. Everifin responds with a redirect link to Everifin Paygate page.
Request
Field | Type | Optional | Description |
---|---|---|---|
instructionId | text, unique (max 64 chars) | yes | Your unique identification string. |
amount | number (0.01 - 9999999999) | no | Amount of the payment. |
currency | text, valid currency (min/max 3 chars) | no | Currency of the payment. Must be a valid currency code, e.g. EUR, CZK, PLN. |
recipientIban | text, valid iban (max 50 chars) | no | Your IBAN account number to collect the payment (not payer`s IBAN). This IBAN must be whitelisted in Everifin Paygate, otherwise the payment will be denied. |
variableSymbol | numeric text (max 10 chars) | yes | Symbol for SK/CZ market. Cannot be combined with reference. |
constantSymbol | numeric text (max 10 chars) | yes | Symbol for SK/CZ market. Cannot be combined with reference. |
specificSymbol | numeric text (max 4 chars) | yes | Symbol for SK/CZ market. Cannot be combined with reference. |
reference | text (max 35 chars) | yes | Payment reference. Cannot be combined with symbols. |
customerEmail | valid email | yes | Email of the customer |
redirectUrl | text (max 5000 chars) | no | Redirect URL back to your system. This redirect URL has to be whitelisted in Everifin Paygate. It must be string satisfying URL rules. E.g. hostname must contain at least one dot (for local development URL like this can be used: http://yourapp.local/xyz). Custom query parameters are accepted. |
paymentMessage | text (max 140 chars) | yes | Message to your customer. This message will be visible in his bank transaction as description of the transfer. |
recipientName | text (max 140 chars) | yes | Your name in case you don’t want to use the registered name. This name will appear in payer’s bank transaction as recipient of the money. |
userLocale | language code | yes | If you want to force Everifin Paygate UI language for your customer, use this property. List of supported languages: 'en', 'sk', 'cs' (it is being extended continuously) . If not defined, browser language will be applied. |
preferredBankCountryCode | ISO 3-char country code | yes | If specified, Paygate UI will open with this country as preselected. The list of the banks of specified country will be displayed. User can still change the country in the dropdown. |
POST {everifin_url}/api/v1/link { "instructionId": "ABCD11234", "amount" : 1.05, "currency": "EUR", "recipientIban": "SK132465798132456", "recipientName": "The best e-shop in the world", "variableSymbol": "0000000001", "constantSymbol": "0308", "specificSymbol": "0000000003", "reference": null, "redirectUrl": "https://thebesteshopintheworld.com", "paymentMessage": "Payment for The best eshop", }
Response
Field | Type | Optional | Description |
---|---|---|---|
id | uuid, unique | no | Payment ID (not your instruction id from the request) |
link | text | no | Redirect URL to Everifin Paygate |
status | enum | no | Payment status |
200: { "meta": { "status": "SUCCESS" }, "data": { "id": "bf4f2fa8-9426-441d-b450-67a5c801a9ef", "link": "{{redirect-to-everifin}}", "status": "CREATED" } }
Your application should then use the link from the response to redirect the customer to that particular link. Once the entire payment process is complete, the customer will be redirected back to your application at the URL registered in the first step. The query parameter id
is added to redirect URL containing the same value as in the field id
in response of payment link endpoint.
Next step is payment status check.