Versions Compared

Key

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

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"
    }
}