Indonesian Online Banking
Обзор
Indonesian Online Banking — метод интернет-банкинга для проведения платежей через банки Индонезии. Оплаты осуществляются через Payment Page и Gate, выплаты — через Gate и Dashboard.
Характеристика
Тип платёжного метода | банковские платежи |
---|---|
Платёжные инструменты | банковские счета |
Регионы использования | ID |
Валюты платежей | IDR |
Конвертация валют | на стороне ecommpay |
Оплаты | + |
Выплаты | + |
Оплаты по сохранённым данным | – |
Возвраты | – |
Опротестования | – |
Особенности |
|
Организация и стоимость подключения | По согласованию с курирующим менеджером ecommpay |
Схема работы
В проведении отдельного платежа с использованием метода Indonesian Online Banking задействуются веб-сервис мерчанта, один из интерфейсов и платёжная платформа ecommpay, а также сервис одного из банков, поддерживающих работу с этим методом.
Основные операции
Суммы, IDR | ||
---|---|---|
минимум | максимум | |
Оплаты | 100 000,00 | 25 000 000,00 |
Выплаты | 100 000,00 | 10 000 000,00 |
Ограничения по времени выполнения операций зависят от банков, поддерживающих оплату этим методом.
Сценарии использования
Проведение оплат с использованием метода Indonesian Online Banking выполняется с перенаправлением пользователей на сайты банков, поддерживающих работу с этим методом, проведение выплат — с уведомлением пользователей со стороны веб-сервиса.
Рис.: Оплата через Payment Page
Рис.: Оплата через Gate
Рис.: Выплата через Gate
Поддержка со стороны банков
Проведение платежей с применением метода Indonesian Online Banking осуществляется через банки, поддерживающие работу с этим методом. Банкам соответствуют свои идентификаторы, которые используются при инициировании оплат и выплат через Gate, а также при вызове Payment Page для отображения страницы с выбором метода оплаты.
Далее в таблице в ознакомительных целях представлена информация об этих банках, которую следует уточнять у курирующего менеджера ecommpay или по запросу /v2/info/banks/{payment_method}/{operationType}/list, отправляемым методом POST через Gate API: /v2/info/banks/indonesia/sale/list
для уточнения списка банков, поддерживающих проведение оплат, или /v2/info/banks/indonesia/payout/list
— проведение выплат.
Запрос должен содержать идентификаторы проекта и платежа, подпись, валюту и сумму платежа, как указано в примере. Важно передавать реальные данные о платеже, но в случае если платёж еще не сформирован, для идентификатора платежа в запросе можно указать случайное значение.
Рис.: Пример запроса списка банков
{ "general": { "project_id": 200, "payment_id": "ORDER_155860015", "signature": "K6jllym+PtObocZtr345st...==" }, "payment": { "amount": 15000, "currency": "IDR" } }
Банк | ID | Оплаты | Выплаты |
---|---|---|---|
Bank Artha Graha | 2871 | – | + |
Bank Bukopin | 549 | – | + |
Bank Central Asia | 140 | + | + |
Bank CIMB Niaga | 507 | – | + |
Bank Commonwealth | 567 | – | + |
Bank Danamon Indonesia | 398 | – | + |
Bank HSBC | 513 | – | + |
Bank Mandiri | 143 | + | + |
Bank Maspion | 2891 | – | + |
Bank MayBank Indonesia | 565 | – | + |
Bank Mega | 547 | – | + |
Bank Mestika | 2901 | – | + |
Bank Negara Indonesia | 141 | + | + |
Bank OCBC NISP | 509 | – | + |
Bank Panin | 506 | – | + |
Bank Permata | 396 | – | + |
Bank Rakyat Indonesia | 142 | + | + |
Bank Rakyat Indonesia Syariah | 545 | – | + |
Bank Sinar Mas | 2911 | – | + |
Bank Sumut | 525 | – | + |
Bank Tabungan Pensiunan Nasional /BTPN | 544 | – | + |
Bank UOB Buana Indonesia | 508 | – | + |
OCBC Indonesia | 2921 | – | + |
Детальные сведения о том, что необходимо делать со стороны мерчанта для проведения оплат и выплат, а также о том, что можно использовать для анализа информации о проведённых платежах и операциях, представлены далее.
Оплаты через Payment Page
Общая информация
Для оплаты через Payment Page с использованием метода Indonesian Online Banking со стороны веб-сервиса необходимо отправить запрос, содержащий требуемые параметры и подпись, на рабочий URL ecommpay и принять оповещение о результате оплаты. При этом метод Indonesian Online Banking можно сделать предварительно выбранным (подробнее — в разделе Предварительный выбор платёжных методов).
Рис.: Проведение оплаты через Payment Page
- Пользователь на стороне веб-сервиса инициирует оплату.
- От веб-сервиса на заданный URL ecommpay передаётся запрос на проведение оплаты через Payment Page.
- Запрос на проведение оплаты поступает в платёжную платформу.
- Выполняется начальная обработка запроса, в рамках которой обеспечивается проверка наличия обязательных параметров и корректной подписи.
- Осуществляется генерация Payment Page согласно настройкам проекта и параметрам вызова.
- Пользователю отображается сгенерированная платёжная форма.
- Пользователь выбирает один из банков, поддерживающих работу с платёжным методом Indonesian Online Banking, и подтверждает готовность использовать этот метод (если метод был задан предварительно выбранным, то только подтверждает готовность).
- Запрос на проведение оплаты через банк поступает в платёжную платформу.
- Выполняются дальнейшая обработка запроса и его отправка в сервис банка.
- На стороне банка выполняется обработка запроса на оплату.
- От сервиса банка к платёжной платформе передаются данные для перенаправления пользователя на сайт банка.
- Данные для перенаправления пользователя на сайт банка передаются к Payment Page.
- Пользователь перенаправляется на сайт банка.
- Пользователь выполняет необходимые действия для оплаты на сайте банка.
- На стороне сервиса банка выполняется обработка платежа.
- Результат оплаты отображается пользователю на сайте банка.
- Пользователь перенаправляется к Payment Page.
- От сервиса банка к платёжной платформе направляется уведомление о результате оплаты.
- От платёжной платформы к веб-сервису направляется оповещение о результате оплаты.
- От платёжной платформы к Payment Page направляется результат проведения оплаты.
- Результат оплаты отображается пользователю на Payment Page.
Информация о формате запросов и параметрах вызова Payment Page при работе с методом Indonesian Online Banking, а также о формате оповещений о результатах оплат приведена далее; общая информация о работе с API — в разделе Описание Payment Page API.
Формат запросов
При формировании запросов на открытие платёжной формы с применением метода Indonesian Online Banking необходимо учитывать следующее:
- Должен использоваться базовый минимум параметров — параметры, обязательные для любого платёжного метода:
- project_id — идентификатор проекта, полученный от ecommpay при интеграции;
- payment_id — идентификатор платежа, уникальный в рамках проекта;
- payment_amount — округлённая до целого числа сумма платежа в дробных единицах валюты;
- payment_currency — код валюты платежа в формате ISO-4217 alpha-3;
- customer_id — идентификатор пользователя, уникальный в рамках проекта.
При использовании платёжного метода Indonesian Online Banking можно настраивать отображение страницы Payment Page с выбором метода оплаты.
По умолчанию банки, поддерживающие проведение оплат методом Indonesian Online Banking, объединены в группу и отображаются одной кнопкой Online Indonesian Banks, поэтому выбор банка осуществляется в два этапа. Сначала выбирается метод Indonesian Online Banking среди прочих, а затем на следующей странице с перечнем банков выбирается конкретный банк. Существует несколько вариантов отображения страницы Payment Page с выбором метода оплаты:
- Отображение каждого банка группы отдельной кнопкой. Для этого необходимо передавать параметр split_banks со значением
true
в строке payment_methods_options."payment_methods_options": "{\"online_indonesian_banks\": {\"split_banks\": true}}"
- Отображение кнопок конкретных банков (одного или нескольких). В списке методов может присутствовать метод Indonesian Online Banking. Для этого необходимо передавать идентификаторы банков в параметре banks_id. Для отображения нескольких банков необходимо перечислять идентификаторы этих банков через запятую c пробелом.
"payment_methods_options": "{\"online_indonesian_banks\": {\"split_banks\": true, \"banks_id\": [140, 141]}}"
- Отображение только банков группы без других методов. Для этого используется предварительный выбор метода Indonesian Online Banking. Необходимо передавать код платежного метода
online-indonesian-banks
в параметре force_payment_method. Пользователю отображается страница с выбором банков, минуя страницу с выбором метода оплаты. - Отображение сайта конкретного банка. Для этого используется предварительный выбор метода Indonesian Online Banking. Необходимо передавать код платежного метода
online-indonesian-banks
в параметре force_payment_method и идентификатор банка banks_id в параметре payment_methods_options. Перенаправление пользователя на сайта банка осуществляется без подтверждения готовности оплатить, минуя страницы с выбором метода оплаты и с выбором банков.Рис.: Пример данных из запроса на оплату с перенаправлением на сайт банка
EPayWidget.run( { payment_id: 'X03936', payment_amount: 20000000, payment_currency: 'IDR', project_id: 5555, customer_id: '1', force_payment_method: 'online-indonesian-banks', payment_methods_options: '{\"online_indonesian_banks\": {\"banks_id\": [140]}}', signature: "kUi2x9dKHAVNU0FYlSCQ9vySO\/RLCvhtT4DqtVUkDJrOcZzUCwX6R\/ekpZhkIQg==" } )
- Отображение каждого банка группы отдельной кнопкой. Для этого необходимо передавать параметр split_banks со значением
- Дополнительно могут использоваться любые другие параметры из числа доступных для работы с Payment Page. Детальная информация обо всех параметрах приведена в разделе Параметры вызова платёжной формы.
- После определения всех параметров необходимо составить подпись. Подробнее — в разделе Работа с подписью к данным.
Таким образом, корректный запрос на открытие платёжной формы с применением метода Indonesian Online Banking должен содержать идентификатор, сумму и валюту платежа, идентификаторы проекта и пользователя, а также подпись:
EPayWidget.run( { payment_id: 'X03936', payment_amount: 20000000, payment_currency: 'IDR', project_id: 5555, customer_id: '1', signature: "kUi2x9dKHAVNU0FYldJrxh4yo+52Kt8KURLCvhtT4DqtOcZzUCwX6R\/ekpZhkIQg==" } )
Формат оповещений
Для оповещений о результатах оплат с применением метода Indonesian Online Banking используется стандартный формат, описание которого представлено в разделе Оповещения.
В следующем примере оповещение свидетельствует о том, что в рамках проекта 200
была успешно проведена оплата в размере 200 000,00 IDR
.
Рис.: Пример данных из оповещения о проведении оплаты
{ "project_id": 200, "payment": { "id": "154383173598055", "type": "purchase", "status": "success", "date": "2022-09-03T10:50:29+0000", "method": "Indonesian banks", "sum": { "amount": 20000000, "currency": "IDR" }, "description": "1543831735980" }, "customer": { "id": "1" }, "operation": { "id": 15788000002076, "type": "sale", "status": "success", "date": "2022-09-03T10:50:29+0000", "created_date": "2022-09-03T10:40:20+0000", "request_id": "72cb91e7586004", "sum_initial": { "amount": 20000000, "currency": "IDR" }, "sum_converted": { "amount": 20000000, "currency": "IDR" }, "provider": { "id": 1153, "payment_id": "", "date": "2022-09-03T10:44:27+0000", "auth_code": "" }, "code": "0", "message": "Success" }, "signature": "Cug4rIB6OimEkwmMBi1OfYpapSpZrz00YrFyBErmi0OVw34WpHt5CzEA==" }
В следующем примере оплата была отклонена из-за нарушения ограничения на сумму.
Рис.: Пример данных из оповещения об отклонении оплаты
{ "project_id": 200, "payment": { "id": "154356886034811111", "type": "purchase", "status": "decline", "date": "2022-09-10T14:11:13+0000", "method": "Indonesian banks", "sum": { "amount": 1000, "currency": "IDR" }, "description": "154356886034811111" }, "operation": { "id": 9830000002095, "type": "sale", "status": "decline", "date": "2022-09-10T14:11:13+0000", "created_date": "2022-09-10T14:11:06+0000", "request_id": "3b14e5b0fd1", "sum_initial": { "amount": 1000, "currency": "IDR" }, "sum_converted": { "amount": 10, "currency": "IDR" }, "provider": { "id": 1153, "payment_id": "", "auth_code": "" }, "code": "20101", "message": "Decline due to amount or frequency limit" }, "signature": "cQbMiD0pON9eJc5ZugNK0iT5SwHc0feItZRcABrPdFA4EKQiyWj7NWQRmVyHzNTmOX6Zg5w==" }
Дополнительные материалы
Для организации работы с оплатами через Payment Page также могут быть полезны следующие материалы:
Оплаты через Gate
Общая информация
Для оплаты через Gate с использованием метода Indonesian Online Banking со стороны веб-сервиса необходимо:
- Отправить запрос, содержащий требуемые параметры и подпись, на рабочий URL ecommpay.
- Осуществить перенаправление пользователя на сайт банка (или на страницу выбора банка), поддерживающего работу с методом Indonesian Online Banking.
- Принять оповещение о результате оплаты.
Рис.: Проведение оплаты через Gate
- Пользователь на стороне веб-сервиса инициирует оплату через один из банков, поддерживающих работу с методом Indonesian Online Banking.
- От веб-сервиса на заданный URL ecommpay передаётся запрос на проведение оплаты через Gate.
- Запрос на проведение оплаты поступает в платёжную платформу.
- Выполняется начальная обработка запроса, в рамках которой обеспечивается проверка наличия обязательных параметров и корректной подписи.
- От платёжной платформы к веб-сервису направляется ответ с информацией о получении запроса и его корректности. Подробнее см. в разделе Формат ответа.
- В платёжной платформе выполняются дальнейшая обработка запроса и его отправка в сервис банка.
- На стороне банка выполняется обработка запроса на оплату.
- От сервиса банка к платёжной платформе передаются данные для перенаправления пользователя на сайт банка.
-
От платёжной платформы к веб-сервису направляется оповещение с данными для перенаправления пользователя на сайт банка.
- Пользователь перенаправляется на сайт банка.
- Пользователь выполняет необходимые действия для оплаты на сайте банка.
- На стороне сервиса банка выполняется обработка платежа.
- Пользователю отображается результат оплаты на сайте банка.
- Пользователь перенаправляется к веб-сервису.
- От сервиса банка к платёжной платформе направляется уведомление о результате оплаты.
- От платёжной платформы к веб-сервису направляется оповещение о результате оплаты.
- От веб-сервиса пользователю направляется результат оплаты.
Информация о формате запросов и параметрах инициирования оплат через Gate при работе с методом Indonesian Online Banking, а также о форматах данных для перенаправления пользователей и о формате оповещений о результатах оплат приведена далее; общая информация о работе с API — в разделе Работа с API.
Формат запросов
При формировании запросов на оплату с применением метода Indonesian Online Banking необходимо учитывать следующее:
- Должен использоваться запрос
/v2/payment/banks/indonesia/sale
, отправляемый методом POST. Этот запрос относится к группе запросов /v2/payment/banks/{payment_method}/sale. - В запросе должны использоваться следующие объекты и параметры:
- general — объект, содержащий основные идентификационные сведения запроса:
- project_id — идентификатор проекта, полученный от ecommpay при интеграции;
- payment_id — идентификатор платежа, уникальный в рамках проекта;
- signature — подпись запроса, составленная после указания целевых параметров (подробнее — в разделе Использование подписи к данным);
- customer — объект, содержащий сведения о пользователе:
- ip_address — используемый IP-адрес,
- id — идентификатор, уникальный в рамках проекта,
- payment — объект, содержащий сведения о платеже:
- amount — округлённая до целого числа сумма платежа в дробных единицах валюты. Со стороны мерчанта необходимо предупреждать пользователей об округлении.
- currency — валюта платежа в формате ISO-4217 alpha-3;
- account — объект, содержащий сведения о банковском счёте пользователя:
- bank_id — идентификатор банка.
- general — объект, содержащий основные идентификационные сведения запроса:
- Дополнительно могут использоваться любые другие параметры, указанные в спецификации.
Таким образом, корректный запрос на оплату с применением метода Indonesian Online Banking должен содержать идентификаторы проекта и платежа, подпись, сумму и валюту платежа, IP-адрес и идентификаторы пользователя и банка.
{ "general": { "project_id": 2990, "payment_id": payment_id, "signature": "PJkV8ej\/UG0Di8hTng6JvC7vQsaC6tajQVVfBaNIipTv+AWoXW\/9MTO8yJA==" }, "payment": { "amount": 35000000, "currency": "IDR" }, "customer": { "id":"2990", "ip_address": "248.121.176" }, "account":{ "bank_id": 140 } }
Форматы данных для перенаправления пользователей
Для перенаправления пользователя от веб-сервиса на сайт банка (или на страницу выбора банка) необходимо принять оповещение от платёжной платформы, содержащее ссылку для перенаправления в параметре redirect_data.url и данные для отправки в теле запроса redirect_data.body, и использовать эти параметры при открытии HTML-страницы банка методом, указанным в redirect_data.method.
Далее приведён фрагмент оповещения, содержащего данные для перенаправления.
"redirect_data": { "body": {}, "method": "POST", "url": "https://www.example.com/payment.php" },
Формат оповещений о результатах оплат
Для оповещений о результатах оплат с применением метода Indonesian Online Banking используется стандартный формат, описание которого представлено в разделе Оповещения.
В следующем примере оповещение свидетельствует о том, что в рамках проекта 200
была успешно проведена оплата в размере 200 000,00 IDR
.
Рис.: Пример данных из оповещения о проведении оплаты
{ "project_id": 200, "payment": { "id": "154383173598055", "type": "purchase", "status": "success", "date": "2022-09-03T10:50:29+0000", "method": "Indonesian banks", "sum": { "amount": 20000000, "currency": "IDR" }, "description": "1543831735980" }, "customer": { "id": "1" }, "operation": { "id": 15788000002076, "type": "sale", "status": "success", "date": "2022-09-03T10:50:29+0000", "created_date": "2022-09-03T10:40:20+0000", "request_id": "72cb91e7586004", "sum_initial": { "amount": 20000000, "currency": "IDR" }, "sum_converted": { "amount": 20000000, "currency": "IDR" }, "provider": { "id": 1153, "payment_id": "", "date": "2022-09-03T10:44:27+0000", "auth_code": "" }, "code": "0", "message": "Success" }, "signature": "Cug4rIB6OimEkwmMBi1OfYpapSpZrz00YrFyBErmi0OVw34WpHt5CzEA==" }
В следующем примере оплата была отклонена из-за нарушения ограничения на сумму.
Рис.: Пример данных из оповещения об отклонении оплаты
{ "project_id": 200, "payment": { "id": "154356886034811111", "type": "purchase", "status": "decline", "date": "2022-09-10T14:11:13+0000", "method": "Indonesian banks", "sum": { "amount": 1000, "currency": "IDR" }, "description": "154356886034811111" }, "operation": { "id": 9830000002095, "type": "sale", "status": "decline", "date": "2022-09-10T14:11:13+0000", "created_date": "2022-09-10T14:11:06+0000", "request_id": "3b14e5b0fd1", "sum_initial": { "amount": 1000, "currency": "IDR" }, "sum_converted": { "amount": 10, "currency": "IDR" }, "provider": { "id": 1153, "payment_id": "", "auth_code": "" }, "code": "20101", "message": "Decline due to amount or frequency limit" }, "signature": "cQbMiD0pON9eJc5ZugNK0iT5SwHc0feItZRcABrPdFA4EKQiyWj7NWQRmVyHzNTmOX6Zg5w==" }
Дополнительные материалы
Для организации работы с оплатами через Gate также могут быть полезны следующие материалы:
Выплаты через Gate
Общая информация
Для выплаты через Gate с использованием метода Indonesian Online Banking со стороны веб-сервиса необходимо отправить запрос, содержащий требуемые параметры и подпись, на рабочий URL ecommpay и принять оповещение о результате выплаты.
Рис.: Проведение выплаты через Gate
- Пользователь на стороне веб-сервиса инициирует выплату через один из банков, поддерживающих работу с методом Indonesian Online Banking.
- От веб-сервиса на заданный URL ecommpay передаётся запрос на проведение выплаты через Gate.
- Запрос на проведение выплаты поступает в платёжную платформу.
- Выполняется начальная обработка запроса, в рамках которой обеспечивается проверка наличия обязательных параметров и корректной подписи.
- От платёжной платформы к веб-сервису направляется ответ с информацией о получении запроса и его корректности. Подробнее см. в разделе Формат ответа.
- В платёжной платформе выполняются дальнейшая обработка запроса и его отправка в сервис банка.
- На стороне банка выполняется обработка платежа.
- От сервиса банка к платёжной платформе направляется уведомление о результате выплаты.
- От платёжной платформы к веб-сервису направляется оповещение о результате выплаты.
- От веб-сервиса пользователю направляется результат выплаты.
Информация о формате запросов и параметрах инициирования выплат с применением метода Indonesian Online Banking через Gate, а также о формате оповещений о результатах выплат приведена далее, общая информация о работе с API — в разделе Работа с API.
Формат запросов
При формировании запросов на выплату с применением метода Indonesian Online Banking необходимо учитывать следующее:
- Должен использоваться запрос
/v2/payment/banks/indonesia/payout
, отправляемый методом POST. Этот запрос относится к группе запросов для проведения платежей в одном из поддерживаемых банков /v2/payment/banks/{payment_method}/payout. - В запросе должны использоваться указанные далее объекты и параметры:
- general — объект, содержащий основные идентификационные сведения запроса:
- project_id — идентификатор проекта, полученный от ecommpay при интеграции;
- payment_id — идентификатор выплаты, уникальный в рамках проекта;
- signature — подпись запроса, составленная после указания целевых параметров (подробнее — в разделе Использование подписи к данным);
- customer — объект, содержащий сведения о пользователе:
- id — идентификатор,
- ip_address — IP-адрес;
- account — объект, содержащий сведения о банковском счёте пользователя:
- number — номер счёта,
- customer_name — имя держателя банковского счета,
- bank_id — идентификатор банка,
- payment — объект, содержащий сведения о платеже:
- amount — округлённая до целого числа сумма выплаты в дробных единицах валюты,
- currency — код валюты платежа в формате ISO-4217 alpha-3.
- general — объект, содержащий основные идентификационные сведения запроса:
- Дополнительно могут использоваться любые другие параметры, указанные в спецификации.
Таким образом, корректный запрос на выплату с применением метода Indonesian Online Banking должен содержать идентификаторы проекта и платежа, подпись, сумму и валюту платежа, идентификатор и IP-адрес пользователя, а также данные о счёте пользователя: идентификатор банка, имя держателя, номер (для зачисления средств):
Рис.: Пример запроса на выплату
{ "general": { "project_id": 2990, "payment_id": payment_id, "signature": "PJkV8ej\/UG0Di8hTng6JvC7vQsaC6tajQVVLhNN5e7aRfBaNIipTv+AWoXW\/9MTO8yJA==" }, "payment": { "amount": 35000000, "currency": "IDR" }, "customer": { "id":"2990", "ip_address": "248.121.176" }, "account":{ "bank_id": 140, "customer_name": "Putra account", "number": "314159265358979" } }
Формат оповещений
Для оповещений о результатах выплат с применением метода Indonesian Online Banking используется стандартный формат, описание которого представлено в разделе Оповещения.
В следующем примере оповещение свидетельствует о том, что в рамках проекта 200
была успешно проведена выплата в размере 200 000,00 IDR
на счёт № 6419422222
банка Bank Central Asia
.
Рис.: Пример данных из оповещения о проведении выплаты
{ "project_id": 200, "payment": { "id": "PAYOUT7891022555", "type": "payout", "status": "success", "date": "2022-09-12T13:28:58+0000", "method": "Indonesian banks", "sum": { "amount": 20000000, "currency": "IDR" }, "description": "payout" }, "account": { "number": "6419422222", "bank_id": 140, "region_id": 236 }, "customer": { "id": "1" }, "operation": { "id": 15112000002236, "type": "payout", "status": "success", "date": "2022-09-12T13:28:58+0000", "created_date": "2022-09-12T13:22:15+0000", "request_id": "b54610e94a76", "sum_initial": { "amount": 20000000, "currency": "IDR" }, "sum_converted": { "amount": 20000000, "currency": "IDR" }, "provider": { "id": 1153, "payment_id": "E80NPPQ6Z1YSYPZTPH0NBON42", "date": "2022-09-12T13:28:34+0000", "auth_code": "" }, "code": "0", "message": "Success" }, "signature": "qV2FRs/wxoOaywQS0GYQDi+6spZFbiRXxt8zG 10zy9TNiJLT0P/+EOrpMkoW80mynkaQfSAUJpfQ==" }
В следующем примере выплата была отклонена из-за нарушения ограничения на сумму выплаты.
Рис.: Пример оповещения об отказе в проведении выплаты
{ "project_id": 200, "payment": { "id": "PAYOUT789", "type": "payout", "status": "decline", "date": "2022-09-07T09:44:43+0000", "method": "Indonesian banks", "sum": { "amount": 5000, "currency": "IDR" }, "description": "" }, "account": { "number": "6419422222", "bank_id": 140, "region_id": 236 }, "customer": { "id": "1" }, "errors": [ { "code": "3104", "message": "Payment Constraint Invalid Payout Amount", "description": "Gate. Operation was declined. Maximum payout limit is exceeded" } ], "operation": { "id": 533000002202, "type": "payout", "status": "decline", "date": "2022-09-07T09:44:43+0000", "created_date": "2022-09-07T09:44:43+0000", "request_id": "205d3536a91f4737d679ae44f5c707eaace0b 009-7b37cb0b1b4d62a602dd42fa7d248258224fe3f6", "sum_initial": { "amount": 5000, "currency": "IDR" }, "sum_converted": { "amount": 5000, "currency": "IDR" }, "provider": { "id": 1153, "payment_id": "" }, "code": "3104", "message": "Payment Constraint Invalid Payout Amount" }, "signature": "j4cxKDvx0EaDe4zKLbLcb8isoHFxBB/eV5hPzvsN+iFpGJELstSJw0bHot6v83rzDMlinxE915lAWGHKVjurpQ==" }
Дополнительные материалы
Для организации работы с выплатами через Gate также могут быть полезны следующие материалы:
Выплаты через Dashboard
При использовании интерфейса Dashboard можно проводить одиночные и массовые выплаты методом Indonesian Online Banking с единичной и пакетной отправкой запросов, называемые соответственно одиночными и массовыми.
- Для проведения одиночной выплаты необходимо открыть форму выплаты, задать все необходимые параметры (включая метод), отправить запрос и убедиться в проведении выплаты.
-
Для проведения массовой выплаты необходимо подготовить и загрузить файл с информацией обо всех целевых выплатах, отправить пакет запросов и убедиться в проведении выплат.
При этом должен использоваться файл формата CSV, структура которого соответствует требованиям, представленным в разделе Сведения о массовых платежах, а параметры выплат — требованиям, представленным в разделе Выплаты через Gate этой статьи (за исключением пункта о подписи).
Более подробная информацияИнформация о проведении выплат через Dashboard представлена в отдельном разделе.
Тестирование
Общая информация
Для метода Indonesian Online Banking доступно тестирование оплат через Payment Page и Gate, а также выплат через Gate.
Тестирование может выполняться в рамках тестового проекта, и для подключения и отключения этой функциональности необходимо обращаться к специалистам технической поддержки ecommpay support@ecommpay.com.
При проведении тестовых платежей следует учитывать, что в запросах должен указываться идентификатор тестового проекта, а интерфейсы эмулятора платёжных форм Payment Page и Indonesian Online Banking могут отличаться от рабочих.
Статусы тестовых платежей
При тестировании оплат их итоговые статусы определяются исходя из сумм, указанных в запросах:
decline
— при указании суммы40000
или40400
,success
— при указании любой другой суммы.
При тестировании выплат их итоговые статусы определяются исходя из сумм, указанных в запросах:
decline
— при указании суммы40000
или40400
,success
— при указании любой другой суммы.
Оплаты через Payment Page
Для проведения тестовой оплаты через Payment Page необходимо:
- Отправить в платёжную платформу корректный тестовый запрос на открытие Payment Page.
- Если в запросе не был указан метод
online-indonesian-banks
— выбрать метод Indonesian Online Banking на странице эмулятора. - Если для выбора доступно несколько банков, то выбрать банк; если для выбора доступен только один банк, то щёлкнуть кнопку Оплатить.
- Щёлкнуть кнопку Success или Decline (в зависимости от запрашиваемой суммы).
- Принять оповещение с информацией о результате оплаты.
Подробная информация о проведении оплат с использованием метода Indonesian Online Banking через Payment Page представлена в пункте Оплаты через Payment Page.
Оплаты через Gate
Для проведения тестовой оплаты через Gate необходимо:
- Отправить в платёжную платформу корректный тестовый запрос на оплату (с указанием идентификатора банка в параметре bank_id, идентификатор следует уточнять у службы технической поддержки ecommpay).
- Принять оповещение с данными для перенаправления.
- Перейти по полученному URL и щёлкнуть кнопку Success или Decline (в зависимости от запрашиваемой суммы) — на странице эмулятора.
- Принять оповещение с информацией о результате оплаты.
Подробная информация о проведении оплат с использованием метода Indonesian Online Banking через Gate представлена в пункте Оплаты через Gate.
Выплаты через Gate
Для проведения тестовой выплаты через Gate необходимо отправить в платёжную платформу корректный тестовый запрос и принять оповещение с информацией о результате. Подробная информация о проведении выплат с использованием метода Indonesian Online Banking через Gate представлена в пункте Выплаты через Gate.
Анализ результатов проведения платежей
Как и при работе с другими платёжными методами, которые предоставляет ecommpay, при использовании метода Indonesian Online Banking доступны разные способы анализа информации о платежах и операциях с применением этого метода — как в отдельности, так и в совокупности с другими методами.
Всю необходимую информацию можно получать и анализировать средствами Dashboard, в том числе с помощью аналитических панелей на вкладке Analytics.
Также можно выгружать нужную информацию для последующего анализа с помощью специализированных аналитических средств сторонних разработчиков:
- Dashboard позволяет выгружать данные в форматах CSV и XLS с помощью инструментов на вкладке Платежи. При этом можно выполнять разовые выгрузки информации на локальный компьютер и задействовать периодическую выгрузку и отправку информации на заданные адреса электронной почты.
- Data API позволяет получать информацию в формате JSON и отправлять ее на заданный URL — для этого применяются запросы /operations/get.
С любыми вопросами о возможностях анализа можно обращаться в службу технической поддержки ecommpay.