Передача дополнительных сведений об оплатах для их учёта на стороне веб-сервиса
Введение
В некоторых случаях при проведении платежей может быть актуально передавать не только обязательные и рекомендуемые со стороны провайдера параметры, но и те сведения, которые могут быть полезны в дальнейшем на стороне мерчанта (с привязкой к конкретным платежам и их статусам). Для таких ситуаций в структуре Gate API предусмотрены параметры, позволяющие передавать различные сведения в запросах и получать эти сведения вместе с другой информацией в составе итоговых оповещений.
Передача сведений о бронировании товаров и услуг
Общая информация
С помощью объекта booking_info можно фиксировать в запросах сведения о бронированиях, связанных с оплатами, и получать эти сведения в оповещениях от платёжной платформы. В отличие от используемых в отдельных индустриях «длинных записей» (подробнее) эта возможность может применяться более широко (например, для указания сведений о бронировании билетов на концерты) и гибко — без ограничений на категорию мерчанта (согласно коду Merchant Category Code, MCC). Вместе с тем, использование объекта booking_info не обеспечивает тех преимуществ, которые могут быть доступны при работе с «длинными записями», и при наличии вопросов о работе с этими возможностями можно обращаться к курирующему менеджеру Openpayze.
Объект booking_info может использоваться практически для всех типов платежей с прямым использованием платёжных карт: в частности, для разовых оплат (одностадийных и двухстадийных), нерегулярных повторяемых оплат (экспресс-оплат и автооплат) и для проверки платёжных инструментов.
С помощью объекта booking_info можно фиксировать в запросах сведения о бронировании товаров и услуг. Эта возможность доступна при проведении платежей с прямым использованием платёжных карт.
Пример использования
В качестве примера можно рассмотреть ситуацию, когда мерчанту, ведущему бизнес в сфере музыкальных фестивалей, актуально обеспечить:
- сбор и обработку информации о бронировании билетов на фестивали;
- оперативный доступ своих сотрудников к актуальной информации такого рода по каждому пользователю.
Для этого настраивается следующая схема работы:
- По результатам выполнения соответствующей операции информация из объекта
booking_infoпередаётся к веб-сервису в итоговом оповещении. - На стороне веб-сервиса обеспечивается необходимая обработка получаемой информации вместе с другой информацией о выполняемых операциях.
Подключение
Указывать объект booking_info в запросах и получать передаваемые в нём сведения в оповещениях (при использовании типовой структуры оповещений) можно без согласований и каких-либо дополнительных действий. Эти возможности доступны по умолчанию.
Возможности использования объекта booking_info доступны по умолчанию и не требуют отдельного подключения.
Формат данных
Объект booking_info может включаться в запросы к различным конечным точкам и в оповещения о результатах операций, при этом его структура определяется моделью, а его расположение в структуре запросов — спецификацией этих конечных точек.
- Для разовых одностадийных оплат:
- /v2/payment/card/sale — с прямым указанием платёжных данных;
- /v2/payment/card/sale/saved — с указанием платёжных данных через идентификаторы;
- /v2/payment/card/sale/token — с указанием платёжных данных через токены.
- Для разовых двухстадийных оплат:
- /v2/payment/card/auth — с прямым указанием платёжных данных;
- /v2/payment/card/auth/saved — с указанием платёжных данных через идентификаторы;
- /v2/payment/card/auth/token — с указанием платёжных данных через токены;
- Для оплат по платёжным ссылкам:
- /v2/payment/invoice/create — без указания платёжных данных в запросе;
- /v2/payment/invoice/card/token/create — с указанием платёжных данных через токены.
- Для повторяемых оплат:
- Для проверки платёжных инструментов:
- /v2/payment/card/account_verification — с прямым указанием платёжных данных;
- /v2/payment/card/account_verification/token — с указанием данных через токены.
- Для возвратов средств после оплат:
В итоговых оповещениях о результатах операций сведения из объекта booking_info передаются в таком же виде (как и в запросах) в объекте с названием booking info.
{
"payment": {
"date": "2024-01-24T06:24:45+0000",
"method": "card",
"id": "FESTIVAL_PASS_1781",
"sum": {
"amount": 0,
"currency": "EUR"
},
"type": "purchase",
"status": "refunded",
"description": "FESTIVAL_PASS_1781"
},
"project_id": 111738,
"customer": {
"id": "musicaficionado_83"
},
"account": {
"number": "551115******1822",
"token": "7123ba1f24f16a115f3390a9",
"type": "mastercard",
"card_holder": "WILLIAM HERSCHEL",
"expiry_month": "08",
"expiry_year": "2030"
},
"booking info": { // Объект с информацией о бронировании
"start_date": "12-08-2026",
"end_date": "14-08-2026",
"description": "Sideris music festival full pass",
"total": 200000,
"pax": 2,
"bookers": [
{
"first_name": "William",
"last_name": "Herschel",
"email": "rsfellow@mail.com"
},
{
"first_name": "Caroline",
"last_name": "Herschel",
"email": "salariedastronomer@mail.com"
}
],
"items": [
{
"description": "VIP Arrival",
"start_date": "12-08-2026",
"end_date": "12-08-2026"
},
{
"description": "Hotel",
"start_date": "12-08-2026",
"end_date": "14-08-2026"
},
{
"description": "Concerts",
"start_date": "12-08-2026",
"end_date": "14-08-2026"
},
{
"description": "VIP Departure",
"start_date": "14-08-2026",
"end_date": "14-08-2026"
}
],
"reference": "musicfestlink",
"id": "83"
},
"operation": {
"provider": {
"payment_id": "0010000124258736",
"auth_code": "",
"endpoint_id": 414,
"id": 414
},
"sum_converted": {
"amount": 200000,
"currency": "EUR"
},
"code": "0",
"message": "Success",
"id": 55386010114429,
"type": "refund",
"status": "success",
"date": "2024-01-24T06:24:45+0000",
"sum_initial": {
"amount": 200000
"currency": "EUR"
},
"created_date": "2024-01-24T06:24:43+0000",
"request_id": "abcaf52323381a-d988c158cc4b43046-00055387"
}
}
Передача дополнительных сведений об оплатах для их учёта на стороне веб-сервиса
Подключение
Возможности применения параметра merchant.data для передачи и получения различных сведений следует согласовывать с курирующим менеджером Openpayze. После согласований специалисты Openpayze выполняют необходимые действия в платёжной платформе и уведомляют о готовности к включению расширенных сведений в оповещения и к отображению этих сведений в интерфейсе Dashboard.