Rapipago

Обзор

Введение

Rapipago — метод, позволяющий проводить платежи в аргентинских песо и долларах США с использованием ваучеров в Аргентине. Для этого метода в платёжной платформе ecommpay поддерживаются оплаты.

В этой статье представлена информация о работе с методом Rapipago: обзорный раздел с общими сведениями и последующие разделы с информацией о действиях, необходимых со стороны мерчанта для решения разных задач.

Характеристика

Тип платёжного метода платежи через точки оплаты
Платёжные инструменты ваучеры
Регионы использования AR
Валюты платежей ARS, USD
Конвертация валют
Разовые оплаты +
Повторяемые оплаты
Полные возвраты
Частичные возвраты
Выплаты
Опротестования
Особенности
  • в зависимости от провайдера, обрабатывающего платёж, срок действия ваучера для оплаты может быть:
    • 5 дней, но пользователь может совершить оплату в течение 30 дней, обратившись в банк
    • 3 дня
  • в зависимости от провайдера платежи могут быть целочисленными, за более подробной информацией следует обращаться к курирующему менеджеру ecommpay
Организация и стоимость подключения по согласованию с курирующим менеджером ecommpay

Схема работы

В проведении отдельного платежа с использованием метода Rapipago задействуются веб-сервис мерчанта, один из интерфейсов и платёжная платформа ecommpay, а также технические средства сервиса Rapipago.



Основные операции

Для проведения платежей и выполнения операций с использованием метода Rapipago могут применяться различные интерфейсы платёжной платформы. Так, оплаты могут проводиться через Payment Page, Gate и Dashboard (с применением платёжных ссылок).

Сценарии использования

Проведение оплат с использованием метода Rapipago осуществляется с перенаправлением пользователей к сервису Rapipago.

Оплаты через Payment Page

Общая информация

Для проведения оплаты через Payment Page с использованием метода Rapipago со стороны веб-сервиса необходимо отправить запрос, содержащий требуемые параметры и подпись, на рабочий URL ecommpay и принять оповещение о результате. Полная схема проведения оплаты выглядит следующим образом.



Рис.: Проведение оплаты через Payment Page. Описание шагов

  1. Пользователь на стороне веб-сервиса инициирует оплату.
  2. От веб-сервиса на заданный URL ecommpay передаётся запрос на проведение оплаты через Payment Page.
  3. Запрос на проведение оплаты поступает в платёжную платформу.
  4. В платёжной платформе выполняется приём запроса, с проверкой наличия обязательных параметров и корректной подписи.
  5. Осуществляется подготовка Payment Page согласно параметрам проекта и вызова.
  6. Пользователю отображается платёжная форма.
  7. Пользователь выбирает для оплаты метод Rapipago.
  8. Пользователю отображается платёжная форма, соответствующая запросу.
  9. Пользователь вводит данные для оплаты.
  10. В платёжную платформу передаётся запрос на проведение оплаты с использованием метода Rapipago.
  11. В платёжной платформе выполняются обработка полученного запроса и его отправка в сервис Rapipago.
  12. В сервисе Rapipago выполняется обработка запроса на оплату.
  13. От сервиса Rapipago к платёжной платформе передаются данные для перенаправления пользователя к сервису Rapipago.
  14. Данные для перенаправления пользователя передаются к Payment Page.
  15. Пользователю на Payment Page отображается ссылка для перенаправления в сервис Rapipago.
  16. Пользователь перенаправляется к сервису Rapipago.
  17. Пользователю отображается сгенерированный ваучер со штрихкодом для оплаты в терминале. Статус платежа awaiting redirect result остается до тех пор, пока пользователь не завершит оплату. В зависимости от провайдера, обрабатывающего платёж ваучер может быть действителен в течение 5 (но пользователь может совершить оплату в течение 30 дней, обратившись в банк) или 3 дней с момента получения.
  18. Пользователь завершает оплату в одном из доступных терминалов оплаты, предъявляя полученный ваучер.
  19. В сервисе терминалов оплаты происходит обработка платежа.
  20. От сервиса терминалов к сервису Rapipago направляется информация о результате оплаты.
  21. От сервиса Rapipago к платёжной платформе направляется информация о результате оплаты.
  22. От платёжной платформы к веб-сервису направляется оповещение о результате оплаты.
  23. На стороне веб-сервиса обеспечивается информирование пользователя о результате оплаты.

Информация о форматах запросов и оповещений, используемых для проведения оплат методом Rapipago через Payment Page, приведена далее в этом разделе; общая информация о работе с Payment Page API — в отдельной статье Организация взаимодействия.

Формат запросов

При формировании запросов на открытие платёжной формы с применением метода Rapipago необходимо учитывать следующее:

  1. Должен использоваться базовый минимум параметров, обязательный для любого платежа:
    • project_id — идентификатор проекта, полученный от ecommpay при интеграции;
    • payment_id — идентификатор платежа, уникальный в рамках проекта;
    • payment_currency — код валюты платежа в формате ISO-4217 alpha-3;
    • payment_amount — сумма платежа в дробных единицах валюты;
    • customer_id — идентификатор пользователя в рамках проекта.
  2. Должен использоваться базовый минимум параметров: project_id, payment_id, payment_currency, payment_amount, customer_id.
  3. Валютой платежа может быть только ARS или USD.
  4. Дополнительно должны передаваться следующие данные пользователя:
    • customer_first_name и customer_last_name — имя и фамилияпользователя,
    • customer_email — адрес электронной почты пользователя,
    • identify_doc_number — номер документа пользователя, подтверждающего личность, который должен состоять из 7, 8 или 11 цифр;
  5. Для предварительного выбора метода Rapipago необходимо указывать код этого метода в параметре force_payment_methodrapipago.
  6. Дополнительно могут использоваться любые другие параметры из числа доступных для работы с Payment Page (подробнее).
  7. После указания всех целевых параметров необходимо составлять подпись (подробнее).

Таким образом, корректный запрос на открытие платёжной формы с применением метода Rapipago должен содержать идентификатор проекта, базовые сведения о платеже (идентификатор, сумму и код валюты), информацию о пользователе и подпись.

{
   "project_id": 120,
   "payment_id": "580",
   "payment_amount": 10000,
   "payment_currency": "ARS",
   "customer_id": "customer1",
   "customer_first_name": "Guido",
   "customer_last_name": "Marques",
   "customer_email": "customer@example.com",
   "identify_doc_number": "12345678901",
   "signature": "kUi2x9dKHAVNU0FYldOcZzUCwX6R\/ekpZhkIQg=="
}

Рис.: Пример достаточного набора данных для запроса на оплату

{
   "project_id": 120,
   "payment_id": "580",
   "payment_amount": 10000,
   "payment_currency": "ARS",
   "customer_id": "customer1",
   "customer_first_name": "Guido",
   "customer_last_name": "Marques",
   "customer_email": "customer@example.com",
   "identify_doc_number": "12345678901",
   "signature": "kUi2x9dKHAVNU0FYldOcZzUCwX6R\/ekpZhkIQg=="
}

Формат оповещений

Для оповещений о результатах оплат с применением метода Rapipago типовой стандартный формат, описание которого представлено в разделе Оповещения.

В следующем примере оповещение свидетельствует о том, что в рамках проекта 198 была проведена оплата в размере 500,00 ARS.

Рис.: Пример данных из оповещения о проведении оплаты

{
        "project_id": 198,
        "payment": {
            "id": "TEST_Argentina_PC_2",
            "type": "purchase",
            "status": "success",
            "date": "2018-12-14T13:11:44+0000",
            "method": "rapipago",
            "sum": {
                "amount": 50000,
                "currency": "ARS"
            },
            "description": "TEST_Argentina_PC_2"
        },
        "customer": {
            "id": "1"
        },
        "operation": {
            "id": 15,
            "type": "sale",
            "status": "success",
            "date": "2018-12-14T13:11:44+0000",
            "created_date": "2018-12-14T11:21:35+0000",
            "request_id": "7a1482b612d642a",
            "sum_initial": {
                "amount": 50000,
                "currency": "ARS"
            },
            "sum_converted": {
                "amount": 50000,
                "currency": "ARS"
            },
            "provider": {
                "id": 1167,
                "payment_id": "316",
                "date": "2018-12-14T13:07:15+0000",
                "auth_code": ""
            },
            "code": "0",
            "message": "Success"
        },
        "signature": "U+CDYj96jASxGI/KctgFQ4NzrZdOTaNUi+E/BBcR+g=="
    }
}

В следующем примере оповещение свидетельствует об отклонённой оплате.

Рис.: Пример данных из оповещения об отклонении оплаты

 {
        "project_id": 198,
        "payment": {
            "id": "TEST_15447012171635547",
            "type": "purchase",
            "status": "decline",
            "date": "2018-12-13T11:45:17+0000",
            "method": "rapipago",
            "sum": {
                "amount": 50200,
                "currency": "ARS"
            },
            "description": "TEST_1544701217163"
        },
        "customer": {
            "id": "1"
        },
        "errors": [
            {
                "code": 20101,
                "message": "Operation amount is great than max limit"
            }
        ],
        "operation": {
            "id": 4100000002248,
            "type": "sale",
            "status": "decline",
            "date": "2018-12-13T11:45:17+0000",
            "created_date": "2018-12-13T11:45:01+0000",
            "request_id": "fa22737fc8780b0b85b0",
            "sum_initial": {
                "amount": 50200,
                "currency": "ARS"
            },
            "sum_converted": {
                "amount": 50200,
                "currency": "ARS"
            },
            "provider": {
                "id": 1167,
                "payment_id": ""
            },
            "code": 20101,
            "message": "Operation amount is great than max limit"
        },
        "signature": "MMVpxlW/hsMybuF6u2SrRlSqNNslFp37JPhy4sdTpg=="
    }

Дополнительные материалы

Для организации работы с оплатами через Payment Page также могут быть полезны следующие материалы:

Оплаты через Gate

Общая информация

Для проведения оплаты через Gate с использованием метода Rapipago со стороны веб-сервиса необходимо:

  1. Отправить запрос, содержащий требуемые параметры и подпись, на рабочий URL ecommpay.
  2. Принять промежуточное оповещение от платёжной платформы и осуществить перенаправление пользователя к сервису Rapipago.
  3. Принять итоговое оповещение от платёжной платформы.

Полная схема проведения оплаты выглядит следующим образом.



Рис.: Проведение оплаты через Gate. Описание шагов

  1. Пользователь на стороне веб-сервиса инициирует оплату с использованием метода Rapipago.
  2. От веб-сервиса на заданный URL ecommpay передаётся запрос на проведение оплаты через Gate.
  3. Запрос на проведение оплаты поступает в платёжную платформу ecommpay.
  4. В платёжной платформе выполняется приём запроса с проверкой наличия обязательных параметров и корректной подписи.
  5. От платёжной платформы к веб-сервису направляется ответ с информацией о получении запроса и его корректности (подробнее).
  6. В платёжной платформе выполняются дальнейшая обработка запроса (с проверкой согласованности параметров) и его оправка в сервис Rapipago.
  7. В сервисе Rapipago выполняется обработка запроса на оплату.
  8. От сервиса Rapipago к платёжной платформе передаются данные для перенаправления пользователя к сервису Rapipago.
  9. От платёжной платформы к веб-сервису направляется оповещение с данными для перенаправления пользователя к сервису Rapipago.
  10. Пользователю отображается ссылка для перенаправления в сервис Rapipago.
  11. Пользователь перенаправляется в сервис Rapipago.
  12. Пользователю отображается сгенерированный ваучер со штрихкодом для оплаты в терминале. Статус платежа awaiting redirect result остается до тех пор, пока пользователь не завершит оплату. В зависимости от провайдера, обрабатывающего платёж ваучер может быть действителен в течение 5 (но пользователь может совершить оплату в течение 30 дней, обратившись в банк) или 3 дней с момента получения.
  13. Пользователь завершает оплату в одном из доступных терминалов оплаты, предъявляя полученный ваучер.
  14. В сервисе терминалов оплаты выполняется обработка платежа.
  15. От сервиса терминалов оплаты к сервису Rapipago направляется информация о результате оплаты.
  16. От сервиса Rapipago к платёжной платформе направляется информация о результате оплаты.
  17. От платёжной платформы к веб-сервису направляется оповещение о результате оплаты.
  18. На стороне веб-сервиса обеспечивается информирование пользователя о результате оплаты.

Информация о форматах запросов и оповещений, используемых для проведения оплат методом Rapipago через Gate, приведена далее в этом разделе; общая информация о работе с Gate API — в отдельной статье Организация взаимодействия.

Формат запросов

При работе с запросами на оплаты с применением метода Rapipago необходимо учитывать следующее:

  1. Для инициирования каждой оплаты должен использоваться отдельный POST-запрос к конечной точке /v2/payment/voucher/rapipago/sale. Эта точка относится к группе /v2/payment/voucher/{payment_method}/sale.
  2. В каждом запросе должны использоваться следующие объекты и параметры::
    • general — объект, содержащий основные идентификационные сведения запроса:
      • project_id — идентификатор проекта, полученный от ecommpay при интеграции;,
      • payment_id — идентификатор платежа, уникальный в рамках проекта;,
      • signature — подпись запроса, составленная после указания всех целевых параметров (подробнее — в разделе Работа с подписью к данным); (подробнее),
    • payment — объект, содержащий сведения о платеже:
      • amount — сумма платежа в дробных единицах валюты;,
      • currency — код валюты платежа в формате ISO-4217 alpha-3;,
    • customer — сведения о пользователе:
      • id — идентификатор пользователя, уникальный в рамках проекта;,
      • ip_address — IP-адрес пользователя, актуальный для инициируемого платежа;,
      • first_name — имя пользователя;,
      • last_name — фамилия пользователя;,
      • email — адрес электронной почты пользователя;,
      • identify — объект, содержащий сведения о документе, подтверждающем личность:
        • doc_number — номер документа, подтверждающего личность, который должен состоять из 7, 8 или 11 цифр.
  3. Валютой платежа может быть только ARS или USD.
  4. Дополнительно могут использоваться любые другие параметры из числа указанных в спецификации.

Таким образом, корректный запрос на оплату с применением метода Rapipago должен содержать идентификатор проекта, базовые сведения о платеже (идентификатор, сумму и код валюты), информацию о пользователе, а также подпись.

{
    "general": {
        "project_id": 580,
        "payment_id": "38202000002316",
        "signature": "h4ZxUifBXnBeF+iSR0K5OFdK0B9CjMCc2DbkDrk3qhLg=="
    },
    "payment": {
        "amount": 10000,
        "currency": "USD",
        "description": "38202000002316"
    },
    "customer": {
        "idv: "589256",
        "email": "Paul@mail.com",
        "first_name": "Paul",
        "last_name": "Marques",
        "identify": {
            "doc_number": "84887177100"
        },
        "ip_address": "192.0.2.0"
    }
}

Рис.: Пример достаточного набора данных для запроса на оплату

{
    "general": {
        "project_id": 580,
        "payment_id": "38202000002316",
        "signature": "h4ZxUifBXnBeF+iSR0K5OFdK0B9CjMCc2DbkDrk3qhLg=="
    },
    "payment": {
        "amount": 10000,
        "currency": "USD",
        "description": "38202000002316"
    },
    "customer": {
        "idv: "589256",
        "email": "Paul@mail.com",
        "first_name": "Paul",
        "last_name": "Marques",
        "identify": {
            "doc_number": "84887177100"
        },
        "ip_address": "192.0.2.0"
    }
}

Формат промежуточных оповещений для перенаправления пользователей

Для перенаправления пользователей от веб-сервиса мерчанта к сервису Rapipago при проведении каждого платежа с использованием метода Rapipago необходимо принять промежуточное оповещение от платёжной платформы и использовать информацию из него, включённую в объект redirect_data. Формат таких оповещений является типовым (подробнее), при этом в состав объекта redirect_data включаются следующие объекты и параметры:

  • body — объект с данными для отправки в теле запроса;
  • method — параметр с указанием HTTP-метода отправки запроса (GET или POST);
  • url — параметр со ссылкой для перенаправления.

Рис.: Пример объекта redirect_data

  "redirect_data": {
    "body": {},
    "method": "GET",
    "url": "https://www.example.com/pay"
  }

Формат итоговых оповещений

Для оповещений о результатах оплат с применением метода Rapipago используется типовой формат, описание которого представлено в разделе Оповещения.

В следующем примере оповещение свидетельствует о том, что в рамках проекта 842 была проведена оплата в размере 100,00 USD.

Рис.: Пример данных из оповещения о проведении оплаты

{
        "project_id": 842,
        "payment": {
            "id": "EP8a3e-3e96",
            "type": "purchase",
            "status": "success",
            "date": "2019-06-03T12:09:38+0000",
            "method": "boleto",
            "sum": {
                "amount": 10000,
                "currency": "USD"
            },
            "description": ""
        },
        "operation": {
            "id": 1001313740,
            "type": "sale",
            "status": "success",
            "date": "2019-06-03T12:09:38+0000",
            "created_date": "2019-06-03T12:08:52+0000",
            "request_id": "46b8b94eabf",
            "sum_initial": {
                "amount": 10000,
                "currency": "USD"
            },
            "sum_converted": {
                "amount": 10000,
                "currency": "USD"
            },
            "provider": {
                "id": 1414,
                "payment_id": "9d7e3e16b6a5",
                "auth_code": ""
            },
            "code": "0",
            "message": "Success"
        },
        "signature": "hTnUho5lgWxu+wgKzmhLdj3e5d8PwovSQGtyFSH7OBlJ8bQ=="
    }

В следующем примере оповещение свидетельствует об отклонённой оплате.

Рис.: Пример данных из оповещения об отклонении оплаты

 {
        "project_id": 842,
        "payment": {
            "id": "EP2ea6-f489",
            "type": "purchase",
            "status": "decline",
            "date": "2019-06-03T12:14:18+0000",
            "method": "boleto",
            "sum": {
                "amount": 1000,
                "currency": "EUR"
            },
            "description": ""
        },
        "operation": {
            "id": 2001313740,
            "type": "sale",
            "status": "decline",
            "date": "2019-06-03T12:14:18+0000",
            "created_date": "2019-06-03T12:13:38+0000",
            "request_id": "d5978bf20bae024",
            "sum_initial": {
                "amount": 1000,
                "currency": "EUR"
            },
            "sum_converted": {
                "amount": 1000,
                "currency": "EUR"
            },
            "provider": {
                "id": 1414,
                "payment_id": "D-30006-7729dab9-3782-4c0a-8192-840622f63f08",
                "auth_code": ""
            },
            "code": "20000",
            "message": "General decline"
        },
        "signature": "eL+OigWVAgeT85JjOOUIkg5KYy+MkG9SCynp47KzdImN3tAy0kA=="
    }

Дополнительные материалы

Для организации работы с оплатами через Gate также могут быть полезны следующие материалы:

Анализ результатов проведения платежей

Для анализа информации о платежах и операциях, как в отдельности по методу Rapipago, так и в совокупности с другими методами, можно использовать:

  • инструментарий интерфейса Dashboard, с различными реестрами и аналитическими панелями;,
  • отчёты в формате CSV, выгружаемые (как разово, так и периодически) через раздел Отчёты интерфейса Dashboard;,
  • данные в формате JSON, получаемые по программным запросам через интерфейс Data API.

С вопросами по анализу информации можно обращаться к разделам документации (Dashboard и Использование Data API) и специалистам ecommpay.