# Bancontact {#pm_bancontact} статья о работе с платёжным методом Bancontact, который позволяет проводить платежи в евро с использованием платёжных карт в Бельгии и для которого в платформе Ecommpay поддерживаются оплаты и возвраты **На уровень выше:**[Банковские платежи](ru_pm_bankpayments.md) ## Обзор {#ru_pm_bancontact_overview} ### Введение {#section_ql3_5fj_stb .section} Bancontact — метод, позволяющий проводить платежи в евро с использованием платёжных карт в Бельгии. Для этого метода в платёжной платформе Ecommpay поддерживаются оплатыи возвраты. В этой статье представлена информация о работе с методом Bancontact: обзорный раздел с общими сведениями и последующие разделы с информацией о действиях, необходимых со стороны мерчанта для решения разных задач. ### Характеристика {#section_tbf_2zk_ggb .section} |Тип платёжного метода|банковские платежи| |Платёжные инструменты|платёжные карты| |Регионы использования|[BE](references/ru/countries/BE.md)| |Валюты платежей|[EUR](references/ru/currencies/EUR.md)| |Конвертация валют|на стороне Ecommpay| |Разовые оплаты|+| |Повторяемые оплаты|–| |Полные возвраты|+| |Частичные возвраты|+| |Выплаты|–| |Опротестования|–| |Особенности|если сумма платежа превышает 500,00 [EUR](references/ru/currencies/EUR.md), то такой платёж не может быть совершён с использованием мобильного приложения Bancontact| |Организация и стоимость подключения|по согласованию с курирующим менеджером Ecommpay; дополнительную информацию можно получить в [ecommshop](https://ecommpay.com/shop/payment-methods/bancontact/)| ### Схема работы {#section_tsp_gzk_ggb .section} В проведении отдельного платежа с использованием метода Bancontact задействуются веб-сервис мерчанта, один из интерфейсов и платёжная платформа Ecommpay, а также технические средства сервиса Bancontact. ![](images/pm/ru_bancontact_functional.svg) ### Основные операции {#section_rnx_4cl_ggb .section} Для проведения платежей и выполнения операций с использованием метода Bancontact могут применяться различные интерфейсы платёжной платформы. Так, оплаты могут проводиться через Payment Page, Gate и Dashboard \(с применением платёжных ссылок\), а возвраты — через Gate и Dashboard. При этом, независимо от используемых интерфейсов, для этого метода характерны следующие свойства и ограничения. ||Суммы, [EUR](references/ru/currencies/EUR.md)|Время¹| |минимум|максимум|базовое|предельное| |--|---------------------------------------------|------| |-------|--------|-------|----------| |Оплаты|1,00|–|–|30 дней| |Возвраты|–|–|–|–| **Прим.:** 1. Базовое и предельное время определяются следующим образом: - Базовое время — среднее расчётное время проведения платежа от момента его инициирования на стороне платёжной платформы до момента отправки инициатору оповещения о результате. Это время определяется для условий штатной работы всех технических средств и каналов связи, а также типичных действий со стороны пользователя. Базовое время рекомендуется использовать для реагирования на отсутствие оповещений о результате платежа и выполнения опроса состояния платежа \([подробнее](ru_Gate_payment_status_request.md#)\). - Предельное время — максимально допустимое время проведения платежа от момента его инициирования на стороне платёжной платформы до момента отправки инициатору оповещения о результате. Если платёж не был проведён или отклонён за это время, он автоматически переводится в статус `decline`. Для индивидуальной настройки предельного времени следует обращаться к специалистам технической поддержки Ecommpay. ### Сценарии использования {#section_fgt_sdl_ggb .section} Проведение оплат с использованием метода Bancontact осуществляется с перенаправлением пользователей к сервису Bancontact, выполнение возвратов — с заявкой со стороны пользователя и уведомлением со стороны веб-сервиса. ![](images/pm/ru_bancontact_interfaces_pp.svg "Оплата через Payment Page") ![](images/pm/ru_bancontact_interfaces_gate.svg "Оплата через Gate") ![](images/pm/ru_bancontact_interfaces_gate_refund.svg "Возврат через Gate") ## Оплаты через Payment Page {#ru_pm_bancontact_pp_purchase} ### Общая информация {#section_gtg_vxk_m2b .section} Для проведения оплаты через Payment Pageс использованием метода Bancontact со стороны веб-сервиса необходимо отправить запрос, содержащий требуемые параметры и подпись, на рабочий URL Ecommpay и принять оповещение о результате.Полная схема проведения оплаты выглядит следующим образом. ![](images/pm/ru_bancontact_uml_pp.svg) 1. Пользователь на стороне веб-сервиса инициирует оплату. 2. От веб-сервиса на заданный URL Ecommpay передаётся запрос на проведение оплаты через Payment Page. 3. Запрос на проведение оплаты поступает в платёжную платформу. 4. В платёжной платформе выполняется приём запроса, с проверкой наличия обязательных параметров и корректной подписи. 5. Осуществляется подготовка Payment Page согласно параметрам проекта и вызова. 6. Пользователю отображается платёжная форма. 7. Пользователь выбирает для оплаты метод Bancontact. 8. В платёжную платформу передаётся запрос на проведение оплаты с использованием метода Bancontact. 9. В платёжной платформе выполняются обработка полученного запроса и его отправка в сервис Bancontact. 10. В сервисе Bancontact выполняется обработка запроса на оплату. 11. От сервиса Bancontact к платёжной платформе передаются данные для перенаправления пользователя к сервису Bancontact. 12. Данные для перенаправления пользователя передаются к Payment Page. 13. Пользователь перенаправляется к сервису Bancontact. 14. Пользователь выполняет необходимые действия для оплаты. Если сумма платежа меньше 500,00 [EUR](references/ru/currencies/EUR.md), то пользователю, помимо полей для ввода данных платёжной карты Bancontact, отображается QR-код для сканирования с использованием мобильного приложения Bancontact. Пользователь может выбрать один из упомянутых вариантов для совершения оплаты. Если сумма платежа больше 500,00 [EUR](references/ru/currencies/EUR.md), то пользователю не отображается QR-код и оплата не может быть совершена с использованием мобильного приложения. 15. В сервисе Bancontact выполняется обработка платежа. 16. Информация о результате оплаты отображается пользователю в сервисе Bancontact. 17. Пользователь перенаправляется к Payment Page. 18. От сервиса Bancontact к платёжной платформе направляется информация о результате оплаты. 19. От платёжной платформы к веб-сервису направляется оповещение о результате оплаты. 20. От платёжной платформы к Payment Page направляется информация о результате оплаты. 21. Информация о результате оплаты отображается пользователю на Payment Page. Информация о форматах запросов и оповещений, используемых для проведения оплат методом Bancontact через Payment Page, приведена далее в этом разделе; общая информация о работе с Payment Page API — в отдельной статье [Организация взаимодействия](ru_pp_interaction_organisation.md#). ### Формат запросов {#section_p5j_fgl_ggb .section} При формировании запросов на открытие платёжной формы с применением метода Bancontact необходимо учитывать следующее: 1. Должен использоваться базовый минимум параметров, обязательный для любого платежа: - `project_id` — идентификатор проекта, полученный от Ecommpay при интеграции; - `payment_id` — идентификатор платежа, уникальный в рамках проекта; - `payment_currency` — код валюты платежа в формате ISO-4217 alpha-3; - `payment_amount` — сумма платежа в дробных единицах валюты; - `customer_id` — идентификатор пользователя в рамках проекта. 2. Дополнительно рекомендуется указывать фамилию пользователя в параметре `customer_last_name` \(для предотвращения ошибок при проведении платежей рекомендуется указывать не менее 3 и не более 100 символов\). Если этот параметров отсутствует в запросе, в платёжной форме может отобразиться поле для ввода пользователем недостающего значения \(подробнее — в разделе [Дополнение информации о платежах](ru_pp_clarification.md)\). 3. Для предварительного выбора метода Bancontact необходимо указывать код этого метода в параметре `force_payment_method` — `bancontact`. 4. Дополнительно могут использоваться любые другие параметры из числа доступных для работы с Payment Page \([подробнее](ru_PP_Parameters.md)\). 5. После указания всех целевых параметров необходимо составлять подпись \([подробнее](ru_platform_signature.md#)\). Таким образом, корректный запрос на открытие платёжной формы с применением метода Bancontact должен содержать идентификатор проекта, базовые сведения о платеже \(идентификатор, сумму и код валюты\), идентификатор и фамилию пользователя, а также подпись. ```language-json { "project_id": 120, "payment_id": "580", "payment_amount": 1000, "payment_currency": "EUR", "customer_id": "customer1", "customer_last_name": "Johnson", "signature": "kUi2x9dKHAVNU0FYldOcZzUCwX6R\/ekpZhkIQg==" } ``` ```language-json { "project_id": 120, "payment_id": "580", "payment_amount": 1000, "payment_currency": "EUR", "customer_id": "customer1", "customer_last_name": "Johnson", "signature": "kUi2x9dKHAVNU0FYldOcZzUCwX6R\/ekpZhkIQg==" } ``` ### Формат оповещений {#section_dpx_2hl_ggb .section} Для оповещений о результатах оплат с применением метода Bancontact используется типовой формат, описание которого представлено в разделе [Работа с оповещениями](ru_platform_callbacks.md#). В следующем примере оповещение свидетельствует о том, что в рамках проекта `211` была проведена оплата в размере `10,00 EUR`. ```language-json { "project_id": 211, "payment": { "id": "ECT_TEST_1562051806691899", "type": "purchase", "status": "success", "date": "2019-07-02T09:28:29+0000", "method": "bancontact", "sum": { "amount": 1000, "currency": "EUR" }, "description": "ECT_TEST_1562051806691810" }, "customer": { "last_name": "Johnson" }, "operation": { "id": 37493000003351, "type": "sale", "status": "success", "date": "2019-07-02T09:28:29+0000", "created_date": "2019-07-02T09:28:24+0000", "request_id": "7e08d48c4f5da3692b65e5426f44ed36896e569c", "sum_initial": { "amount": 1000, "currency": "EUR" }, "sum_converted": { "amount": 1000, "currency": "EUR" }, "provider": { "id": 1241, "payment_id": "", "auth_code": "" }, "code": "0", "message": "Success" }, "signature": "e7wGQAoo1wKMPwsJVCg4zwpWiZVR83hnRnYsIZ84g==" } ``` В следующем примере оповещение свидетельствует об отклонённой оплате. ```language-json { "project_id": 211, "payment": { "id": "ECT_TEST_1562051806691810", "type": "purchase", "status": "decline", "date": "2019-07-02T09:28:29+0000", "method": "bancontact", "sum": { "amount": 50, "currency": "EUR" } }, "customer": { "last_name": "Johnson" }, "operation": { "id": 37493000003351, "type": "sale", "status": "decline", "date": "2019-07-02T09:28:29+0000", "created_date": "2019-07-02T09:28:24+0000", "request_id": "7e08d48c4f5da3692b65e5426f44ed36896e569c", "sum_initial": { "amount": 50, "currency": "EUR" }, "sum_converted": { "amount": 50, "currency": "EUR" }, "provider": { "id": 1241, "payment_id": "", "auth_code": "" }, "code": "20101", "message": "Decline due to amount or frequency limit" }, "signature": "e7wGQAoo1wKMPwsJVCghpAH3AqwpWiZVR83hnRnYsIZ84g==" } ``` ### Дополнительные материалы {#section_xpz_thl_ggb .section} Для организации работы с оплатами через Payment Page также могут быть полезны следующие материалы: - [Организация взаимодействия](ru_pp_interaction_organisation.md#)— о том, как организовать взаимодействие веб-сервиса с платёжной платформой через Payment Page. - [Работа с подписью к данным](ru_platform_signature.md#)— о порядке создания и проверки подписи в программных запросах и оповещениях при взаимодействии с платёжной платформой. - [Проведение платежей](ru_platform_payment_model.md)— о типах, схемах проведения и возможных статусах поддерживаемых платежей и операций. - [Проведение оплат](ru_pp_purchase.md)— о том, как проводить разовые оплаты через Payment Page. - [Работа с информацией об операциях](ru_platform_payment_info_codes.md)— о служебных кодах, которые используются в платёжной платформе, чтобы фиксировать информацию о выполнении операций. ## Оплаты через Gate {#ru_pm_bancontact_gate_purchase} ### Общая информация {#section_lsx_3jl_ggb .section} Для проведения оплаты через Gate с использованием метода Bancontact со стороны веб-сервиса необходимо: 1. Отправить запрос, содержащий требуемые параметры и подпись, на рабочий URL Ecommpay. 2. Принять промежуточное оповещение от платёжной платформы и осуществить перенаправление пользователя к сервису Bancontact. 3. Принять итоговое оповещение от платёжной платформы. Полная схема проведения оплаты выглядит следующим образом. ![](images/pm/ru_bancontact_uml_gate.svg) 1. Пользователь на стороне веб-сервиса инициирует оплату с использованием метода Bancontact. 2. От веб-сервиса на заданный URL Ecommpay передаётся запрос на проведение оплаты через Gate. 3. Запрос на проведение оплаты поступает в платёжную платформу Ecommpay. 4. В платёжной платформе выполняется приём запроса с проверкой наличия обязательных параметров и корректной подписи. 5. От платёжной платформы к веб-сервису направляется ответ с информацией о получении запроса и его корректности \([подробнее](ru_gate_interaction_organisation.md#)\). 6. В платёжной платформе выполняются дальнейшая обработка запроса \(с проверкой согласованности параметров\) и его отправка в сервис Bancontact. 7. В сервисе Bancontact выполняется обработка запроса на оплату. 8. От сервиса Bancontact к платёжной платформе передаются данные для перенаправления пользователя к сервису Bancontact. 9. От платёжной платформы к веб-сервису направляется оповещение с данными для перенаправления пользователя к сервису Bancontact. 10. Пользователь перенаправляется к сервису Bancontact. 11. Пользователь выполняет необходимые действия для оплаты. Если сумма платежа меньше 500,00 [EUR](references/ru/currencies/EUR.md), то пользователю, помимо полей для ввода данных платёжной карты Bancontact, отображается QR-код для сканирования с использованием мобильного приложения Bancontact. Пользователь может выбрать один из упомянутых вариантов для совершения оплаты. Если сумма платежа больше 500,00 [EUR](references/ru/currencies/EUR.md), то пользователю не отображается QR-код и оплата не может быть совершена с использованием мобильного приложения. 12. В сервисе Bancontact выполняется обработка платежа. 13. Пользователю отображается информация о результате оплаты. 14. Пользователь перенаправляется к веб-сервису. 15. От сервиса Bancontact к платёжной платформе направляется информация о результате оплаты. 16. От платёжной платформы к веб-сервису направляется оповещение о результате оплаты. 17. На стороне веб-сервиса обеспечивается информирование пользователя о результате оплаты. Информация о форматах запросов и оповещений, используемых для проведения оплат методом Bancontact через Gate, приведена далее в этом разделе; общая информация о работе с Gate API — в отдельной статье [Организация взаимодействия](ru_gate_interaction_organisation.md#). ### Формат запросов {#section_osx_3jl_ggb .section} При работе с запросами на оплаты с применением метода Bancontact необходимо учитывать следующее: 1. Для инициирования каждой оплаты должен использоваться отдельный POST-запрос к конечной точке `[/v2/payment/bancontact/sale](https://api-developers.ecommpay.com/api-specification/bancontact/post-v2-payment-bancontact-sale)`. 2. В каждом запросе должны использоваться следующие объекты и параметры: - `general` — объект, содержащий основные идентификационные сведения запроса: - `project_id` — идентификатор проекта, полученный от Ecommpay при интеграции; - `payment_id` — идентификатор платежа, уникальный в рамках проекта; - `signature` — подпись запроса, составленная после указания всех целевых параметров \(подробнее — в разделе [Работа с подписью к данным](ru_platform_signature.md#)\); - `payment` — объект, содержащий сведения о платеже: - `amount` — сумма платежа в дробных единицах валюты; - `currency` — код валюты платежав формате ISO-4217 alpha-3; - `customer` — объект, содержащий сведения о пользователе: - `id` — идентификатор пользователя, уникальный в рамках проекта; - `ip_address` — IP-адрес пользователя, актуальный для инициируемого платежа; - `last_name` — фамилия пользователя \(для предотвращения ошибок при проведении платежей рекомендуется указывать не менее 3 и не более 100 символов\). Если параметр не указан в запросе, то он дополнительно запрашивается в оповещении о необходимости дополнить данные \(подробнее — в разделе [Дополнение информации о платеже](ru_Gate_Clarification.md)\); - `return_url` — объект, содержащий URL для перенаправления пользователя в веб-сервис: - `return` — URL для перенаправления пользователя по нажатию кнопки на любом шаге оплаты. 3. Дополнительно могут использоваться любые другие параметры из числа указанных в спецификации. Таким образом, корректный запрос на оплату с применением метода Bancontact должен содержать идентификатор проекта, базовые сведения о платеже \(идентификатор, сумму и код валюты\), информацию о пользователе, URL для перенаправления, а также подпись. ```language-json { "general": { "project_id": 211, "payment_id": "payment_id", "signature": "PLwY3T\/pOMeSaRfBaNIipTv+AWoXW\/9MTO8yJA==" }, "payment": { "amount": 1000, "currency": "EUR" }, "customer": { "last_name": "Johnson", "id": "123", "ip_address": "192.0.2.0" }, "return_url": { "return": "http://example.com/return" } } ``` ```language-json { "general": { "project_id": 211, "payment_id": "payment_id", "signature": "PLwY3T\/pOMeSaRfBaNIipTv+AWoXW\/9MTO8yJA==" }, "payment": { "amount": 1000, "currency": "EUR" }, "customer": { "last_name": "Johnson", "id": "123", "ip_address": "192.0.2.0" }, "return_url": { "return": "http://example.com/return" } } ``` ### Формат промежуточных оповещений для перенаправления пользователей {#section_x23_cpg_vgb .section} Для перенаправления пользователей от веб-сервиса мерчанта к сервису Bancontact при проведении каждого платежа с использованием метода Bancontact необходимо принять промежуточное оповещение от платёжной платформы и использовать информацию из него, включённую в объект `redirect_data`. Формат таких оповещений является типовым \([подробнее](ru_platform_callbacks.md#)\), при этом в состав объекта `redirect_data` включаются следующие объекты и параметры: - `body` — объект с данными для отправки в теле запроса; - `method` — параметр с указанием HTTP-метода отправки запроса\(`GET` или `POST`\); - `url` — параметр со ссылкой для перенаправления. ```language-json "redirect_data": { "body": [], "method": "GET", "url": "https://bancontact.girogate.be/bi/t0bc?tx=example ``` ### Формат итоговых оповещений {#section_wsx_3jl_ggb .section} Для оповещений о результатах оплат с применением метода Bancontact используется типовой формат, описание которого представлено в разделе [Работа с оповещениями](ru_platform_callbacks.md#). В следующем примере оповещение свидетельствует о том, что в рамках проекта `211` была проведена оплата в размере `10,00 EUR`. ```language-json { "project_id": 211, "payment": { "id": "ECT_TEST_1562051806691899", "type": "purchase", "status": "success", "date": "2019-07-02T09:28:29+0000", "method": "bancontact", "sum": { "amount": 1000, "currency": "EUR" }, "description": "ECT_TEST_1562051806691810" }, "customer": { "last_name": "Johnson" }, "operation": { "id": 37493000003351, "type": "sale", "status": "success", "date": "2019-07-02T09:28:29+0000", "created_date": "2019-07-02T09:28:24+0000", "request_id": "7e08d48c4f5da3692b65e5426f44ed36896e569c", "sum_initial": { "amount": 1000, "currency": "EUR" }, "sum_converted": { "amount": 1000, "currency": "EUR" }, "provider": { "id": 1241, "payment_id": "", "auth_code": "" }, "code": "0", "message": "Success" }, "signature": "e7wGQAoo1wKMPwsJVCg4zwpWiZVR83hnRnYsIZ84g==" } ``` В следующем примере оповещение свидетельствует об отклонённой оплате. ```language-json { "project_id": 211, "payment": { "id": "ECT_TEST_1562051806691810", "type": "purchase", "status": "decline", "date": "2019-07-02T09:28:29+0000", "method": "bancontact", "sum": { "amount": 50, "currency": "EUR" } }, "customer": { "last_name": "Johnson" }, "operation": { "id": 37493000003351, "type": "sale", "status": "decline", "date": "2019-07-02T09:28:29+0000", "created_date": "2019-07-02T09:28:24+0000", "request_id": "7e08d48c4f5da3692b65e5426f44ed36896e569c", "sum_initial": { "amount": 50, "currency": "EUR" }, "sum_converted": { "amount": 50, "currency": "EUR" }, "provider": { "id": 1241, "payment_id": "", "auth_code": "" }, "code": "20101", "message": "Decline due to amount or frequency limit" }, "signature": "e7wGQAoo1wKMPwsJVCghpAH3AqwpWiZVR83hnRnYsIZ84g==" } ``` ### Дополнительные материалы {#section_xsx_3jl_ggb .section} Для организации работы с оплатами через Gate также могут быть полезны следующие материалы: - [Организация взаимодействия](ru_gate_interaction_organisation.md#)— о том, как взаимодействовать с платёжной платформой через Gate. - [Работа с подписью к данным](ru_platform_signature.md#)— о порядке создания и проверки подписи в программных запросах и оповещениях при взаимодействии с платёжной платформой. - [Проведение платежей](ru_platform_payment_model.md)— о типах, схемах проведения и возможных статусах поддерживаемых платежей и операций. - [Разовая оплата в одну стадию](ru_platform_sms_model.md)— о том, как проводить разовые оплаты через Gate. - [Работа с информацией об операциях](ru_platform_payment_info_codes.md)— о служебных кодах, используемых в платёжной платформе для фиксации информации о выполнении операций. ## Возвраты через Gate {#ru_pm_bancontact_gate_refund} ### Общая информация {#section_lsx_3jl_ggb .section} Для выполнения возврата через Gate с использованием метода Bancontact со стороны веб-сервиса необходимо отправить запрос, содержащий требуемые параметры и подпись, на рабочий URL Ecommpay и принять оповещение о результате.Полная схема выполнения возврата выглядит следующим образом. ![](images/pm/ru_bancontact_uml_gate_refund.svg) 1. Пользователь инициирует возврат. 2. От веб-сервиса на заданный URL Ecommpay передаётся запрос на выполнение возврата. 3. Запрос на выполнение возврата поступает в платёжную платформу Ecommpay. 4. В платёжной платформе выполняется приём запроса с проверкой наличия обязательных параметров и корректной подписи. 5. От платёжной платформы к веб-сервису направляется ответ с информацией о получении запроса и его корректности \([подробнее](ru_gate_interaction_organisation.md#)\). 6. В платёжной платформе обеспечиваются дальнейшая обработка запроса \(с проверкой согласованности параметров\) и его отправка в сервис Bancontact. 7. В сервисе Bancontact выполняется обработка возврата. 8. От сервиса Bancontact к платёжной платформе направляется информация о результате возврата. 9. От платёжной платформы к веб-сервису направляется оповещение о результате возврата. 10. На стороне веб-сервиса обеспечивается информирование пользователя о результате возврата. Информация о форматах запросов и оповещений, используемых для выполнения возвратов методом Bancontact через Gate, приведена далее в этом разделе; общая информация о работе с Gate API — в отдельной статье [Организация взаимодействия](ru_gate_interaction_organisation.md#). ### Формат запросов {#section_osx_3jl_ggb .section} При работе с запросами на возврат с применением метода Bancontact необходимо учитывать следующее: 1. Для инициирования каждого возврата должен использоваться отдельный POST-запрос к конечной точке `[/v2/payment/bancontact/refund](https://api-developers.ecommpay.com/api-specification/bancontact/post-v2-payment-bancontact-refund)`. 2. В каждом запросе должны использоваться следующие объекты и параметры: - `general` — объект, содержащий основные идентификационные сведения запроса: - `project_id` — идентификатор проекта, полученный от Ecommpay при интеграции; - `payment_id` — идентификатор платежа, для которого необходимо выполнить возврат; - `signature` — подпись запроса, составленная после указания всех целевых параметров \(подробнее — в разделе [Работа с подписью к данным](ru_platform_signature.md#)\); - `payment` — объект, содержащий сведения о возврате: - `description` — комментарий к возврату или его описание; - `amount` — сумма возврата в дробных единицах валюты \(является обязательной при частичном возврате\); - `currency` — код валюты возврата в формате ISO-4217 alpha-3\(является обязательным при частичном возврате\); - `customer` — объект, содержащий сведения о пользователе: - `ip_address` — IP-адрес пользователя, актуальный для инициируемого возврата. 3. Дополнительно могут использоваться любые другие параметры из числа указанных в спецификации. Таким образом, корректный запрос на возврат с применением метода Bancontact должен содержать идентификаторы проекта и платежа, описание возврата, IP-адрес пользователя, подпись, а также, при необходимости, код валюты и сумму возврата. ```language-json { "general": { "project_id": 210, "payment_id": "test_payment", "signature": "PJkV8ej\/UG0Di8hTng6JvipTv+AWoXW\/9MTO8yJA==" }, "payment": { "description": "test refund", "amount": 1000, "currency": "EUR" }, "customer": { "ip_address": "192.0.2.0" } } ``` ```language-json { "general": { "project_id": 210, "payment_id": "test_payment", "signature": "PJkV8ej\/UG0Di8hTng6JvipTv+AWoXW\/9MTO8yJA==" }, "payment": { "description": "test refund", "amount": 1000, "currency": "EUR" }, "customer": { "ip_address": "192.0.2.0" } } ``` ### Формат оповещений {#section_wsx_3jl_ggb .section} Для оповещений о результатах возврата с применением метода Bancontact используется типовой формат, описание которого представлено в разделе [Работа с оповещениями](ru_platform_callbacks.md#). В следующем примере оповещение свидетельствует о том, что в рамках проекта `211` был выполнен возврат в размере `10,00 EUR`. ``` { "project_id": 211, "payment": { "id": "refund_02", "type": "purchase", "status": "refunded", "date": "2019-02-19T14:25:25+0000", "method": "bancontact", "sum": { "amount": 1000, "currency": "EUR" }, "description": "test_02" }, "account": { "number": "035209875690435" }, "operation": { "id": 14153000003282, "type": "refund", "status": "success", "date": "2019-02-19T14:25:25+0000", "created_date": "2019-02-19T14:25:24+0000", "request_id": "9d11b2ca618ec3ba0f588af8af3c4fc9f5fa58f174", "sum_initial": { "amount": 1000, "currency": "EUR" }, "sum_converted": { "amount": 1000, "currency": "EUR" }, "provider": { "id": 1169, "payment_id": "105887607", "date": "2019-02-19T14:25:24+0000", "auth_code": "" }, "code": "0", "message": "Success" }, "signature": "of8k9xerKSKpFBR4XL1QFaDH3p9ZYO56lCv+f1M0Sf/7eg==" } ``` В следующем примере оповещение свидетельствует об отклонённом возврате. ```language-json { "project_id": 211, "payment": { "id": "refund_02", "type": "purchase", "status": "success", "date": "2019-02-19T14:25:25+0000", "method": "bancontact", "sum": { "amount": 100000, "currency": "EUR" }, "description": "test_02" }, "account": { "number": "035209875690435" }, "operation": { "id": 14153000003282, "type": "refund", "status": "decline", "date": "2019-02-19T14:25:25+0000", "created_date": "2019-02-19T14:25:24+0000", "request_id": "9d11b2ca618ec3ba0f588af8af3c4fc9f5fa58f174", "sum_initial": { "amount": 100000, "currency": "EUR" }, "sum_converted": { "amount": 100000, "currency": "EUR" }, "provider": { "id": 1169, "payment_id": "105887607", "date": "2019-02-19T14:25:24+0000", "auth_code": "" }, "code": "3283", "message": "Refund amount more than init amount" }, "signature": "of8k9xerKSKpFwKJ7KLTZYO56lCv+f1M0Sf/7eg==" } ``` ### Дополнительные материалы {#section_xsx_3jl_ggb .section} Для организации работы с возвратами через Gate также могут быть полезны следующие материалы: - [Организация взаимодействия](ru_gate_interaction_organisation.md#)— о том, как взаимодействовать с платёжной платформой через Gate. - [Работа с подписью к данным](ru_platform_signature.md#)— о порядке создания и проверки подписи в программных запросах и оповещениях при взаимодействии с платёжной платформой. - [Проведение платежей](ru_platform_payment_model.md)— о типах, схемах проведения и возможных статусах поддерживаемых платежей и операций. - [Возвраты средств после оплат](ru_Gate_Refund.md)— о том, как выполнять возвраты через Gate. - [Работа с информацией об операциях](ru_platform_payment_info_codes.md)— о служебных кодах, используемых в платёжной платформе для фиксации информации о выполнении операций. ## Анализ результатов проведения платежей {#ru_pm_bancontact_dash_analysis} Для анализа информации о платежах и операциях, как в отдельности по методу Bancontact, так и в совокупности с другими методами, можно использовать: - инструментарийинтерфейса Dashboard, с различными реестрами и аналитическими панелями; - отчёты в формате CSV, выгружаемые\(как разово, так и периодически\) черезраздел **Отчёты** интерфейса Dashboard; - данные в формате JSON, получаемыепо программным запросам черезинтерфейс Data API. С вопросами по анализу информации можно обращаться к разделам документации \([Dashboard](ru_dbl_about.md) и [Использование Data API](ru_dbl_api_protocol.md)\) и специалистам Ecommpay.