Get payment
This operation can be used to get payment status in case you are not using hooks.
Request
Code Block |
---|
GET {everifin_url}/api/v1/payments/:id |
Response - successful payment
Code Block |
---|
200: { "meta": { "status": "SUCCESS" }, "data": { "id": {{:id}} "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", "status": "FINISHED" } } |
Response - failed payment
Code Block |
---|
200: { "meta": { "status": "SUCCESS" }, "data": { "id": {{:id}} "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", "status": "FAILED", "errorCode": "INSUFFICIENT_AMOUNT" } } |
Get payments
To get list of payments, you can use this operation. Getting multiple payments requires pagination and supports filtering and sorting.
Request
Code Block |
---|
GET {everifin_url}/api/v1/payments?page=1&countPerPage=5&sort=id:asc |
Filter
Field | Type | Description |
---|---|---|
id | UUID | Id of the payment |
instructionId | text | Your id of the payment |
recipientIban | IBAN | Your bank account IBAN |
senderBankId | text | Sender`s (Payer`s) bank id |
amount | number range | Amount of the payment defined in a number range |
currency | text | Currency code of the payment |
variableSymbol | numeric text | Variable symbol of the payment |
specificSymbol | numeric text | Specific symbol of the payment |
constantSymbol | numeric text | Constant symbol of the payment |
reference | text | Payment reference |
paymentMessage | text | Payment message |
status | enum | Payment status |
Sorting
Sorting by following fields is supported
id
instructionId
amount
currency
senderBankId
variableSymbol
specificSymbol
constantSymbol
reference
paymentMessage
status
recipientIban
Response
Code Block |
---|
200: { "meta": { "status": "SUCCESS" }, "data": [{ "id": "ABC1" "instructionId": "ABCD11234", "amount" : 1.05, "currency": "EUR", "recipientIban": "SK132465798132456", "variableSymbol": "0000000001", "constantSymbol": "0308", "specificSymbol": "0000000003", "redirectUrl": "https://thebesteshopintheworld.com", "paymentMessage": "Payment for The best eshop", "status": "FINISHED" }, { "id": "ABC2" "instructionId": "ABCD11235", "amount" : 1100.50, "currency": "EUR", "recipientIban": "SK132465798132456", "variableSymbol": "0000000002", "constantSymbol": "0308", "specificSymbol": "0000000003", "redirectUrl": "https://thebesteshopintheworld.com", "status": "FAILED", "errorCode": "INSUFFICIENT_AMOUNT" }] } |
Payment update
The payment data can be changed in case payment the state allows it. The payment data cannot be changed for:
finalized payments (successful or failure)
when the user has already opened the link to Everifin Paygate web page in redirect flow (payment status = SEEN)
when the user has already started the payment authorization on the bank’s side (payment status = PROCESSING)
Request
The fields are the same as in payment initialization.
Code Block |
---|
PUT {everifin_url}/api/v1/payments/:id { "instructionId": "XXX", "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", "hookData": {} // your hook data } |
Response
The response is identical to the response in payment initialization.
Code Block |
---|
200: { "meta": { "status": "SUCCESS" }, "data": { "id": {{:id}} "instructionId": "XXX", "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", "status": "FINISHED", "hookData": {} // your hook data } } |
Withdraw payment
You can withdraw (invalidate / cancel) a payment by calling Everifin Paygate endpoint with DELETE method. The payment cannot be invalidated for finalized payments (successful or failure) and also in case the user has already started a payment authorization on bank’s side.
Request
Code Block |
---|
DELETE {everifin_url}/api/v1/payments/:id |
Response
Code Block |
---|
200: { "meta": { "status": "SUCCESS" }, "data": { "id": {{:id}}, "status": "WITHDRAWN" } } |