Перейти к содержанию

Песочница

Песочница — отдельное окружение, где интеграцию можно проверить целиком, не двигая деньги. API, подпись, лимиты и ошибки там такие же, как в бою.

Песочница
API {{base_url}} песочницы — выдаётся вместе с доступом
Кабинет {{cabinet_url}} песочницы
Токен начинается с nl_test_
Подпись запросов обязательна, как в бою

Раздел дописывается

Песочница сейчас доделывается. Ниже — как она будет работать. Места, которые ещё могут поменяться, отмечены TBD. Следите за изменениями.

Как устроена

  1. Тестовый проект. В кабинете песочницы включите у проекта тестовый режим. Заявки такого проекта не проводят настоящих платежей. У тестовой заявки в ответе is_test: true.
  2. Тестовые реквизиты. В ответ на создание заявки приходят тестовые реквизиты: тестовый номер телефона для СБП или тестовый номер карты. Переводить по ним ничего не нужно.
  3. Исход заявки задаёте вы. Отметьте заявку оплаченной или отменённой — из кабинета или вызовом API (TBD).
  4. Результат читайте через API. Тестовые заявки автоматически callback не получают (TBD: способ получить callback по тестовой заявке ещё проектируется). Итоговый статус читайте через GET /api/v1/payments/{id}; формат тела callback-а и его подпись проверяйте на проверочном примере.

Задать исход заявки

TBD: API эмуляции исхода

Метод API, которым можно задать исход тестовой заявки, ещё проектируется. Пока используйте кнопки в карточке заявки в кабинете песочницы. Когда метод появится, здесь будут запрос, ответ и примеры на всех языках.

Что хотите проверить Что сделать
Успешная оплата Отметить заявку оплаченной → статус completed
Отказ или отмена Отменить заявку → статус canceled
Истёкший срок Создать заявку и не трогать её дольше срока заявки проекта (по умолчанию 15 минут) → canceled
Идемпотентность Отправить тот же запрос дважды → 201, затем 200 с той же заявкой
Конфликт номера Тот же merchant_payment_id с другой суммой → 409 payment_idempotency_conflict
Повтор nonce Отправить один и тот же подписанный запрос дважды → 409 request_replayed
Неверная подпись Изменить тело после подписи → 401 signature_invalid

Что отличается от боя

  • Деньги не двигаются, реквизиты ненастоящие.
  • Тестовые заявки не получают callback автоматически и отмечены is_test: true. У песочницы свой {{base_url}} и токен nl_test_.
  • Токен, ключ подписи и секрет callback-ов у песочницы свои. Для боя выпустите новые.
  • Адрес API другой: держите его в настройке — см. Окружения.