Перейти до основного вмісту

Автентифікація

Усі запити до API потребують автентифікації через підпис запиту. Кожен запит повинен містити:
{
  {
  "data": "base64-encoded-json-string",
  "signature": "base64-encoded-signature"
  }
}

Базова структура запиту

  • Метод: POST
  • Формат даних: JSON
  • Кодування: UTF-8
  • Підпис: base64( ed25519_sign( data, PRIVATE_KEY ) )

Типи підписів

ED25519 (Рекомендований)

  1. Створити об’єкт payload: id, delivered_at, event
  2. JSON.stringify(payload)
  3. Закодувати JSON-рядок у Base64
  4. Підписати за допомогою ED25519 (ed25519.signAsync)
  5. Закодувати підпис у Base64

Legacy (Застарілий)

  1. Створити об’єкт payload: id, delivered_at, event
  2. JSON.stringify(payload)
  3. Закодувати JSON-рядок у Base64
  4. SHA256 хеш (privateKey + data)
  5. Закодувати хеш у Base64
** Важливо: * * при інтеграції через Box Exchanger, Premium Exchanger, Lara Script, IEX Exchanger використовуйте Legacy Ключі

Зовнішнє посилання для отримання курсів

URL: https://rates.crypto-cash.world/api/v1/market/rates/export/xml URL: https://rates.crypto-cash.world/api/v1/market/rates/export/json

Статуси транзакцій у відповідях API

  • Queued (Черга - В черзі на обробку)
  • New (Нова - Замовлення створено, очікується депозит)
  • Waiting (Очікування - Підтвердження в блокчейні)
  • Paid (Оплачений - Депозит відповідає очікуваній сумі)
  • Underpaid (Недоплата - Депозит менший за очікувану суму)
  • Overpaid (Переплата - Депозит перевищує очікувану суму)
  • Canceled (Скасований - Транзакцію скасовано / помилка)
  • CurrencyMismatch (Невідповідність валют - Внесено невірну криптовалюту)
  • CanceledButPaid (Скасовано, але оплачено - Замовлення прострочено/відхилено, але отримано точний депозит)
  • CanceledButOverpaid (Скасований, але переплачений - Замовлення прострочено/відхилено, але отримано переплату)
  • CanceledButUnderpaid (Скасовано, але недоплачено - Замовлення прострочено/відхилено, але отримано недоплату)

Помилки

У разі виникнення помилок у відповіді буде повернено список кодів помилок. Приклад відповіді з помилкою:
{
  "errors": [1000]
}

Список помилок:

  • 1000 - Невірний запит
  • 2010 - Помилка декодування даних
  • 2011 - Помилка декодування підпису
  • 2020 - Невірний підпис
  • 3000 - Компанію не знайдено
  • 3001 - Замовлення не знайдено
  • 3002 - Транзакцію не знайдено
  • 4003 - Акаунт не активовано

Crypto API

Основні запити