Примеры интеграции
Полный цикл — создание счёта, редирект покупателя, приём подписанного вебхука и запрос статуса — на curl, Node.js, PHP и Python. Отдельных SDK-пакетов пока нет: API достаточно простой, чтобы обойтись HTTP-клиентом; ниже — готовые обёртки, которые можно скопировать в проект.
API v1 · обновлено 2026-09-12
Сценарий
- Покупатель нажимает «Оплатить» на вашем сайте → ваш сервер вызывает
POST /invoices. - Сохраняете
idсчёта рядом с заказом, перенаправляете покупателя наurl. - Покупатель платит → на ваш
webhook_urlприходитinvoice.paid. Проверяете подпись, отмечаете заказ оплаченным. - Покупатель возвращается на
successUrl. Если вебхук ещё не обработан, показываете «проверяем оплату» и опрашиваете свой бэкенд (илиGET /invoices/{id}).
curl
Node.js
Без зависимостей — только встроенные fetch и crypto. Подходит для Express, Fastify, Nest, Next.js API routes.
PHP
Один класс на ext-curl. Работает в Laravel, Symfony, WordPress-плагине или чистом PHP.
Python
На requests; для Django, Flask или FastAPI.
Go и другие языки
Проверка подписи вебхука на Go есть в разделе Вебхуки. Клиент к API — три вызова net/http с заголовком Authorization: Bearer; отдельный пример не нужен.
Практика
- Храните
idсчёта Paydex в таблице заказов — по нему ищется платёж в кабинете и в API. - Делайте обработчик вебхука идемпотентным: повторный
invoice.paidне должен выдавать товар дважды. - Не блокируйте ответ на вебхук тяжёлой работой — сначала 200, затем очередь.
- Логируйте
error.codeи HTTP-статус при ошибках API — с ними поддержка разберётся быстрее. - Начинайте с
sk_test_: полный цикл можно прогнать за пять минут, см. Тестирование. - Машиночитаемое описание API — /docs/openapi.json (OpenAPI 3.1): из него генерируются клиенты для любого языка.