Вебхук жана каталардын коддору

Вебхук

Ар бир аяктаган төлөмдөн кийин Finik сиз көрсөткөн callback-эндпоинтке төлөмдүн JSON телеси менен POST-сурам жөнөтөт. Төлөмдүн статусу status талаасында келет: SUCCEEDED же FAILED.

Аныктыгын текшерүү

Ар бир сурам Finik'тин жеке ачкычы менен кол коюлат, кол signature аталышында жөнөтүлөт. Сиз колду Finik'тин ачык ачкычы менен, сурамдарга кол койгондогудай эле алгоритм боюнча текшерүүгө милдеттүүсүз (Аутентификация караңыз).

Prod — public-key.pem
-----BEGIN PUBLIC KEY-----
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuF/PUmhMPPidcMxhZBPb
BSGJoSphmCI+h6ru8fG8guAlcPMVlhs+ThTjw2LHABvciwtpj51ebJ4EqhlySPyT
hqSfXI6Jp5dPGJNDguxfocohaz98wvT+WAF86DEglZ8dEsfoumojFUy5sTOBdHEu
g94B4BbrJvjmBa1YIx9Azse4HFlWhzZoYPgyQpArhokeHOHIN2QFzJqeriANO+wV
aUMta2AhRVZHbfyJ36XPhGO6A5FYQWgjzkI65cxZs5LaNFmRx6pjnhjIeVKKgF99
4OoYCzhuR9QmWkPl7tL4Kd68qa/xHLz0Psnuhm0CStWOYUu3J7ZpzRK8GoEXRcr8
tQIDAQAB
-----END PUBLIC KEY-----
Beta — public-key.pem
-----BEGIN PUBLIC KEY-----
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwlrlKz/8gLWd1ARWGA/8
o3a3Qy8G+hPifyqiPosiTY6nCHovANMIJXk6DH4qAqqZeLu8pLGxudkPbv8dSyG7
F9PZEAryMPzjoB/9P/F6g0W46K/FHDtwTM3YIVvstbEbL19m8yddv/xCT9JPPJTb
LsSTVZq5zCqvKzpupwlGS3Q3oPyLAYe+ZUn4Bx2J1WQrBu3b08fNaR3E8pAkCK27
JqFnP0eFfa817VCtyVKcFHb5ij/D0eUP519Qr/pgn+gsoG63W4pPHN/pKwQUUiAy
uLSHqL5S2yu1dffyMcMVi9E/Q2HCTcez5OvOllgOtkNYHSv9pnrMRuws3u87+hNT
ZwIDAQAB
-----END PUBLIC KEY-----

Вебхук сурамынын мисалы

Finik сиздин callback URL'иңизге POST жөнөтөт. Кол signature аталышында келет — аны Finik'тин ачык ачкычы менен текшериңиз.

POST сиздин callback URL'иңизге
POST /your/callback/path HTTP/1.1
Host: merchant.example.com
Content-Type: application/json
signature: <Finik колу>

{
  "id": "transaction-id-15423_CREDIT",
  "accountId": "your account id",
  "amount": 100,
  "fields": {
    "amount": 100,
    "fieldId1": "value1",
    "fieldId2": "value2"
  },
  "item": { "id": "generated-item-id" },
  "net": 100,
  "receiptNumber": "some-number",
  "requestDate": 1737369012345,
  "service": { "id": "averspay-items" },
  "status": "SUCCEEDED",
  "transactionDate": 1737369012345,
  "transactionId": "transaction-id-241234",
  "transactionType": "DEBIT",
  "data": {
    "amount": 100,
    "fieldId1": "value1"
  }
}

data талаасы WEB-интеграциялар үчүн гана болот жана сиз берген маалыматтарды камтыйт.

Каталардын коддору

statusCodeМаанисиerrorMessage мисалдарыКайталоого болобу
200ИйгиликТөлөмдүн статусу SUCCEEDED, FAILED же PROCESSINGОоба
201Асинхрондук иштетүүгө кабыл алындыЖок
400Сурамдагы катаTransaction ID is required. · A valid service is required. · Fields must be an object and include all required fields. · An invalid amount is provided. Amount must be greater than 0. · User is disabled. · Source and destination accounts must be different.Жок — сурамды оңдоңуз
401Авторизация катасыAn invalid or missing Authorization header is provided. · An invalid client ID is provided.Жок — колду, ачкычты жана timestamp текшериңиз
402Каражат жетишсизInsufficient funds.Эсепти толуктагандан кийин
403Уруксат жокUser has no permissions to access this account. · Client has no permissions to access this payment.Жок
404Ресурс табылган жокUser does not exist.Жок
409Транзакциянын дубликатыTransaction with the same ID already exists.Жок — жаңы transactionId колдонуңуз же учурдагы төлөмдүн статусун сураңыз
500Сервердин ички катасыAn unexpected error has occurred.Ооба
502Кызмат көрсөтүүчү жеткиликсизService "XXX" is temporarily unavailable.Ооба, кийинчерээк
503Сервер ашыкча жүктөлгөн же тейлөөдөОоба, кийинчерээк