Перейти к содержимому

Sandbox

В Sandbox можно проверить приём платежей без отправки криптовалюты. У каждого мерчанта может быть один sandbox-магазин.

Создайте отдельный магазин с "sandbox": true. Переключить существующий боевой магазин в Sandbox нельзя.

  1. Создайте инвойс в sandbox-магазине по быстрому старту.
  2. Сохраните его id как issuance_id.
  3. Имитируйте подтверждённый входящий перевод:
Окно терминала
curl -X POST 'https://platform.invoise.me/api/v1/shops/{shop_id}/sandbox/simulate' \
-H 'Authorization: Bearer ivk_...' \
-H 'Idempotency-Key: <saved-unique-key>' \
-H 'Content-Type: application/json' \
-d '{"issuance_id":"<issuance-id>","kind":"transfer.confirmed","amount":"10000000"}'

Укажите настоящую сумму инвойса в минимальных единицах. Пустое тело {} не указывает платёж и приведёт к ошибке.

В Sandbox один инвойс или имитированный перевод — не больше 10 000 токенов; бо́льшая сумма вернёт 400 sandbox_amount_limit. Инвойсы и депозитные адреса Sandbox считаются отдельно от боевых. См. Лимиты.

Снова запросите статус. Полностью оплаченный инвойс получит funded, а подписчики вебхуков — событие transfer.confirmed. Этот вызов добавляет конкретное событие, а не воспроизводит весь блокчейн-платёж.

Чтобы после оплаты имитировать закрытие инвойса, отправьте новый ключ идемпотентности и тело:

{"issuance_id":"<issuance-id>","kind":"invoice.closed","amount":"0"}

Так проверяется состояние settled. Для проверки корректировок можно отправить transfer.reverted, указав в reference_event_id ID предыдущего события. Каждому новому событию нужен свой сохранённый ключ.

POST /api/v1/shops/{shop_id}/sandbox/reset удаляет историю операций Sandbox. Нужны сессия владельца, свежее подтверждение MFA, если оно включено, и Idempotency-Key.

После сброса старые ключи идемпотентности сохраняют прежние результаты. Для новых тестов используйте новые ключи.

Sandbox проверяет работу с API и событиями. Она не проверяет реальные подтверждения сети, стоимость газа и зачисление на биржу. Для этого отдельно проверьте небольшой реальный платёж.