Статус рахунку та депозиту
Читайте стан рахунку або депозиту через GET-запити. Вебхуки сповіщають вас про зміни автоматично.
Прочитайте рахунок або депозит
Section titled “Прочитайте рахунок або депозит”Використовуйте id, повернутий під час створення рахунку або депозиту:
curl 'https://platform.invoise.me/api/v1/shops/{shop_id}/issuances/{issuance_id}' \ -H 'Authorization: Bearer ivk_...'Відповідні поля з прикладу відповіді (інші поля опущено):
{ "id": "f06b8a31-19c7-4687-ade3-1c09466d2751", "kind": "invoice", "status": "funded", "amount": "10000000", "received": "10000000", "token_decimals": 6, "expires_at": "2026-10-19T10:00:00Z", "cancelled_at": null, "disabled_at": null, "payout_tx_hash": null}Обидві суми — рядки цілих чисел у базових одиницях. У цьому прикладі надійшло 10 токенів, але підтверджена транзакція виплати ще не показана.
Інтерпретація рахунку
Section titled “Інтерпретація рахунку”status |
Що робити |
|---|---|
registering |
Чекайте на непорожню address. Не формуйте її самостійно. |
open |
Продовжуйте чекати. received може показувати частковий платіж. |
funded |
Достатньо підтверджених коштів для розрахунку. |
settled |
Рахунок закрито в мережі. |
reconciling |
Чекайте узгодження; не вважайте це успішним платежем. |
Також перевіряйте cancelled_at. Це часова мітка або null, а не значення статусу. Вона встановлюється, коли ви скасовуєте рахунок, коли неоплачений рахунок проходить свій expires_at, або коли персонал Invoise блокує мерчанта; вебхук invoice.cancelled розрізняє ці випадки через data.reason. Скасування приховує сторінку оплати, але не зупиняє вхідні кошти чи розрахунок. Вирішіть явно, як ваш бізнес обробляє оплачений, але скасований рахунок.
funded означає, що платіж отримано, а не що виплату завершено. settled фіксує закриття рахунку. Для повного обліку виплати використовуйте payout.confirmed; payout_tx_hash вказує на останній підтверджений вихідний переказ отримувачу, коли він доступний.
Якщо ви отримуєте transfer.reverted, Invoise повідомляє про відкат конкретного вхідного переказу в мережі. Визначте його через chain_event.reference_event_id, прочитайте поточний стан рахунку й скоригуйте свій запис про цей переказ один раз. Формат події див. у Вебхуках.
Відстеження депозитів
Section titled “Відстеження депозитів”Депозитна адреса багаторазова. Вона може повернутися до open після виплати, тож не чекайте, що вона стане settled назавжди.
received — це накопичена підтверджена вхідна сума, а не залишок. Виплата не віднімається від неї. Вона може зменшитися, якщо переказ відкотять. Зараховуйте кожен вхідний платіж лише один раз; для цього зручні вебхуки, оскільки кожна подія має стабільний ID.
disabled_at керує доступністю сторінки оплати. Вимкнення депозиту не зупиняє відстеження його адреси.
Список рахунків і депозитів
Section titled “Список рахунків і депозитів”curl 'https://platform.invoise.me/api/v1/shops/{shop_id}/payments?limit=50' \ -H 'Authorization: Bearer ivk_...'З limit (1–100) відповідь має вигляд {"items":[...],"next_cursor":"..."}. Надсилайте cursor для наступної сторінки, поки next_cursor не стане порожнім. Без параметрів пагінації ендпоінт повертає обмежений масив; це не вся історія.
Список підтримує фільтри kind, status і q. Його фільтр status=paid обирає funded і settled; paid не є статусом рахунку, який повертає ендпоінт деталей.
Поле transfers ендпоінту деталей містить лише десять останніх підтверджених вхідних/вихідних записів. Не використовуйте його як повний реєстр.
Публічний статус сторінки оплати
Section titled “Публічний статус сторінки оплати”GET /api/v1/checkout/{public_id} не потребує облікових даних. Він надає стан сторінки оплати, зокрема status, received, amount і expires_at. Для записів магазину на своєму бекенді використовуйте автентифікований ендпоінт рахунку.
Про надсилання оновлень і перевірку підпису див. Вебхуки.