Обычные платежи
Обычные платежи позволяют мерчанту создавать платежные ссылки для своих клиентов. Эти ссылки могут быть использованы для оплаты товаров и услуг картой через платформу CapitalPay.
Создание платежной ссылки
Важно: Ранее в API использовалось поле
cash_desk_uuid(UUID кассы).
Сейчас оно заменено на полеshop_uuid(UUID магазина).
Полеcash_desk_uuidсчитается устаревшим (deprecated) и не должно использоваться в новых интеграциях.
Если вы ранее отправлялиcash_desk_uuid, обновите интеграцию и передавайтеshop_uuid.
Пример запроса
POST https://api.capitalpay.biz/api/public/order
Content-Type: application/json
Accept: application/json
Signature: {generated_hmac_signature}
{
"amount": 100.50,
"currency_code": "KZT",
"shop_uuid": "123e4567-e89b-12d3-a456-426614174000",
"title": "Order Title",
"description": "Order Description",
"external_client_id": 123456,
"external_data": "{\"key\": \"value\"}",
"external_order_id": 123456,
"locale": "ru|en",
"fail_url": "https://example.com/fail",
"success_url": "https://example.com/success",
"webhook_url": "https://example.com/webhook"
}Особенности формирования подписи в заголовке можно посмотреть в разделе Создание подписи
Для формирования подписи используются следующие поля в указанном порядке:
amountcurrency_codeexternal_client_idexternal_dataexternal_order_id
{amount};{currency_code};{external_client_id};{external_data};{external_order_id};
100.50;KZT;123456;{"key": "value"};123456;Пример ответа
В ответе вы получите URL для перехода на страницу оплаты, а также информацию о заказе.
HTTP/1.1 200 OK
{
"status": true,
"data": {
"url": "https://platform.capitalpay.biz/order/123e4567-e89b-12d3-a456-426614174000",
"order": {
"id": 123456,
"uuid": "123e4567-e89b-12d3-a456-426614174000",
"shop_uuid": "123e4567-e89b-12d3-a456-426614174000",
"external_order_id": 123456,
"external_client_id": 123456,
"external_data": "{\"key\": \"value\"}",
"status_id": 1,
"status": "Created",
"error_code": null,
"error_message": null,
"payment_method_id": 1,
"recur_frequency": null,
"recur_status": null,
"recur_expired_at": null,
"amount": 100.50,
"currency_id": 1,
"currency": "KZT",
"title": "Order Title",
"description": "Order Description",
"refund_amount": null,
"refund_description": null,
"webhook_url": "https://example.com/webhook",
"success_url": "https://example.com/success",
"fail_url": "https://example.com/fail",
"locale": "ru",
"transaction_end_at": null,
"is_test": false,
"created_at": "2023-10-01T12:00:00Z",
}
}
}Поля запроса
| Поле | Тип | Обязательное | Описание | Примечания |
|---|---|---|---|---|
shop_uuid | string | Да | UUID магазина | Максимальная длина: 36 символов. Ранее использовалось поле cash_desk_uuid (deprecated). |
external_order_id | integer | Нет | Внешний ID заказа | |
external_client_id | integer | Нет | Внешний ID клиента | |
external_data | string | Нет | Внешние данные | Должен быть в формате JSON |
amount | number | Да | Сумма | Максимум: 999999999.99, минимум: 0, формат: число с двумя десятичными знаками |
currency_code | string | Да | Код валюты | Максимальная длина: 3 символа |
description | string | Нет | Описание | |
title | string | Да | Название | Минимальная длина: 3 символа, максимальная длина: 60 символов |
webhook_url | string | Нет | URL для вебхука | Должен быть валидным URL |
success_url | string | Нет | URL для успешного платежа | Должен быть валидным URL |
fail_url | string | Нет | URL для неуспешного платежа | Должен быть валидным URL |
locale | string | Нет | Локаль | Максимальная длина: 10 символов, допустимые значения: ru, en |
external_order_id, external_client_id и external_data поля для внешнего идентификатора заказа и клиента. Они могут
быть использованы для связывания платежного API с внешней системой мерчанта. Эти поля не обязательны, но могут быть
полезны при интеграции с системой мерчанта.
Webhook events
При создании платежа вы можете указать URL для вебхука (webhook_url), на который будут отправляться следующие события:
- order.create
- order.status.update
Детальней о вебхуках можно прочитать в разделе Вебхуки.