Интеграция IZI с CloudPayments
Интеграция IZI с CloudPayments
Заголовок раздела «Интеграция IZI с CloudPayments»CloudPayments — один из поддерживаемых платёжных шлюзов в IZI. После подключения клиенты клуба могут пополнять баланс картой, через Apple Pay или Google Pay прямо из CRM или мобильного приложения — без перехода на сторонние страницы.
Что нужно перед началом
Заголовок раздела «Что нужно перед началом»- Аккаунт мерчанта в CloudPayments (с пройденным KYC)
- Public ID и API Secret из личного кабинета CloudPayments
- Токен IZI API с ролью
OWNERилиADMINна уровне организации
Шаг 1 — Настройка в IZI API
Заголовок раздела «Шаг 1 — Настройка в IZI API»mutation ConfigurePaymentGateway($input: PaymentGatewayInput!) { configurePaymentGateway(input: $input) { id type isActive publicId }}{ "input": { "organizationId": "org_abc123", "type": "CLOUDPAYMENTS", "publicId": "pk_your_public_id", "apiSecret": "your_api_secret", "description": "Основной эквайринг" }}apiSecret хранится зашифрованным, в ответе не возвращается. Для его обновления нужно вызвать мутацию повторно.
Шаг 2 — Webhook от CloudPayments
Заголовок раздела «Шаг 2 — Webhook от CloudPayments»В личном кабинете CloudPayments: Настройки → Уведомления → Check (проверка платежа) и Pay (успешный платёж).
URL для обоих типов:
https://api.izi.is/payments/cloudpayments/callbackIZI принимает Check и Pay уведомления. При Check валидирует сумму и существование клиента. При Pay зачисляет баланс и создаёт транзакцию.
Шаг 3 — Инициировать платёж через API
Заголовок раздела «Шаг 3 — Инициировать платёж через API»Для пополнения баланса клиента через виджет:
mutation InitiateTopUp($input: InitiatePaymentInput!) { initiateTopUpPayment(input: $input) { paymentUrl transactionId expiresAt }}{ "input": { "clientId": "client_xyz", "clubId": "club_abc123", "amount": 500, "returnUrl": "https://yourapp.example.com/payment/success", "description": "Пополнение баланса" }}В ответе — paymentUrl для редиректа клиента. После оплаты CloudPayments отправит уведомление на IZI, баланс зачислится автоматически.
Шаг 4 — Тестирование
Заголовок раздела «Шаг 4 — Тестирование»CloudPayments предоставляет тестовые карты:
| Карта | Результат |
|---|---|
4111 1111 1111 1111 | Успешная оплата |
4444 4444 4444 4441 | Отказ банка |
5500 0000 0000 0004 | 3DS-подтверждение |
Тестовый режим включается в панели CloudPayments. Все транзакции в тестовом режиме не списывают реальные деньги, но проходят полный цикл через IZI включая зачисление баланса в тестовый профиль клиента.
Отслеживание статуса платежа
Заголовок раздела «Отслеживание статуса платежа»query PaymentStatus($transactionId: ID!) { payment(id: $transactionId) { id status amount clientId createdAt confirmedAt gatewayTransactionId }}Статусы: PENDING → AUTHORIZED → CONFIRMED | CANCELLED | FAILED.
Или через webhook от IZI — подпишитесь на PAYMENT_RECEIVED:
mutation CreatePaymentWebhook { createWebhook(input: { url: "https://your-service.example.com/payments", events: ["PAYMENT_RECEIVED", "PAYMENT_FAILED"] }) { id secret }}Возврат платежа
Заголовок раздела «Возврат платежа»mutation RefundPayment($input: RefundInput!) { refundPayment(input: $input) { success refundId amount }}{ "input": { "transactionId": "txn_abc123", "amount": 500, "reason": "Запрос клиента" }}Частичные возвраты поддерживаются. amount не может превышать сумму исходной транзакции.
Связанные страницы
Заголовок раздела «Связанные страницы»- Авторизация и токены — токен для вызова мутаций
- Webhooks — события PAYMENT_RECEIVED
- Коды ошибок API — ошибки платёжных операций
- Примеры SDK — готовые обёртки для платёжных операций
См. также
Заголовок раздела «См. также»Частые вопросы
Сколько времени занимает подключение CloudPayments?
Техническая интеграция — 1–2 часа при готовом аккаунте CloudPayments. Само подключение мерчанта в CloudPayments занимает от 1 до 3 рабочих дней на стороне платёжного сервиса.
Какие платёжные методы поддерживает CloudPayments через IZI?
Карты Visa/MasterCard/МИР, Apple Pay, Google Pay, SberPay. Криптовалюты и СБП зависят от тарифа CloudPayments вашего мерчанта.
Что происходит с балансом если платёж отменён?
При отмене (refund) IZI автоматически списывает соответствующую сумму с баланса клиента. Если баланс потрачен частично — списывается остаток, разница возвращается не автоматически и требует ручной обработки.
Можно ли использовать несколько платёжных шлюзов одновременно?
Да. IZI поддерживает несколько шлюзов на одну организацию. Можно настроить CloudPayments для одних клубов и другой эквайринг для других.