Перейти к содержанию

ЕРИП

Процесс оплаты

  1. Торговец отправляет в систему Overpay запрос на создание платежного требования, указав уникальный account_number.
  2. Overpay присылает в ответе инструкцию для завершения оплаты.
  3. Торговец отображает инструкцию покупателю.
  4. Покупатель завершает оплату в приложении своего банка.
  5. Overpay отправляет торговцу автоматическое уведомление с результатом оплаты.

Создание платежного требования

Запрос

Отправьте запрос оплаты со следующими данными:

Параметр Тип Описание
request object
amount * обязательный
integer Сумма платежа в копейках, например, 32.45 BYN должны быть отправлены как 3245.
currency * обязательный
string BYN
description * обязательный
string Описание заказа.
ip string IP адрес покупателя.
expired_at string Время, до которого действителен платёж. По умолчанию бессрочно. Формат: ISO 8601. Формат YYYY-MM-DDThh:mm:ssTZD, где YYYY – год (например, 2027), MM – месяц (например, 02), DD – день (например, 09), hh – часы (например, 18), mm – минуты (например, 20), ss – секунды (например, 45), TZD – временная зона (+hh:mm или –hh:mm), например, +03:00 для Минска.
notification_url string URL, на который будут приходить уведомления торговцу. Если не передан, уведомления не будут доставляться.
tracking_id string Параметр для передачи внутренней информации об оплате (номер заказа или покупателя и тд), которая в дальнейшем позволит отследить оплату в пришедшем уведомлении.
return_url
* обязательный
string URL, на который будет возвращен покупатель после завершения операции в платёжной системе.
method object Секция параметров способа оплаты.
type
* обязательный
string erip
account_number
* обязательный
string (30) Идентификатор заказа/услуги/договора, для оплаты через ЕРИП. Данное значение необходимо ввести покупателю, чтобы начать процесс оплаты заказа/услуги/договора через ЕРИП. Если будет прислан запрос на оплату с account_number, который уже есть в системе, то предыдущее требование на оплату получит статус expired.
customer object Секция информации о покупателе.
first_name string Имя покупателя. Максимальная длина: 60 символов.
middle_name string Отчество покупателя. Максимальная длина: 60 символов.
last_name string Фамилия покупателя. Максимальная длина: 60 символов.
country string Страна покупателя в ISO 3166-1 alpha-2 формате
city string Город покупателя. Максимальная длина: 120 символов.
zip string Почтовый индекс покупателя. Максимальная длина: 40 символов
address string Адрес для выставления счёта. Максимальная длина: 510
phone string(200) Номер телефона покупателя.
device_id string Идентификационный номер устройства покупателя.
Пример запроса
{
    "request": {
        "amount": 100,
        "currency": "BYN",
        "description": "description",
        "test": true,
        "expired_at": "2025-05-01T15:00:00+01:00",
        "tracking_id": "your_uniq_number",
        "ip": "127.0.0.1",
        "language": "en",
        "notification_url": "https://merchant.ltd/notification",
        "return_url": "https://merchant.ltd/return",
        "customer": {
            "first_name": "Иван",
            "last_name": "Иванов",
            "middle_name": "Иванович",
            "country": "BY",
            "city": "Минск",
            "zip": "220050",
            "address": "просп. Независимости, 10",
            "phone": "17777777777",
            "device_id": "12312312321fff67"
        },
        "method": {
            "type": "erip",
            "account_number": "1234567-1234567890"
        }
    }
}
Ответ

Если платежный запрос принят успешно, ответ будет выдан в виде JSON-сообщения, содержащего status. Такое же сообщение будет отправлено в уведомлении на notification_url после проведения оплаты.

Параметр Тип Описание
transaction object
status string Статус платежа.
message string Сообщение системы
type string payment
amount integer Сумма платежа в копейках.
currency string Валюта транзакции.
description string Описание заказа.
uid string uid транзакции.
tracking_id string Значение tracking_id из запроса.
expired_at string Дата, до которой действует платёж. Данный параметр отсутствует, если у платежа нет срока действия. Смотрите описание формата в expired_at запроса на оплату.
paid_at string Дата, когда был оплачен платёж. Данный параметр отсутствует, если платеж еще не оплачен. Смотрите описание формата в expired_at запроса на оплату.
created_at string Время создания платёжного требования.
manually_corrected_at string Время корректировки параметров транзакции службой технической поддержки, формат ISO-8601.
language string Значение параметра language из запроса или en по умолчанию.
test boolean true, если платежный запрос является тестовым.
payment_method_type string erip
additional_data object Секция, содержащая дополнительную информацию о платеже.
notifications array Типы уведомлений, отправляемых покупателям при создании платежных требований.
billing_address object Секция информации о покупателе.
first_name string Имя покупателя.
middle_name string Отчество покупателя.
last_name string Фамилия покупателя.
country string Страна покупателя.
city string Город покупателя.
zip string Почтовый индекс или zip-код покупателя.
address string Адрес покупателя.
phone string Телефонный номер покупателя.
customer object Секция информации о покупателе.
ip string IP адрес покупателя.
email string Электронная почта покупателя.
payment object Секция оплаты.
ref_id string Идентификационный номер транзакции в ЕРИП.
message string Сообщение ЕРИП.
status string Статус операции в ЕРИП.
gateway_id string ID внутреннего платежного шлюза.
erip object Данные о ЕРИП платеже.
request_id integer Номер запроса в ЕРИП.
service_no integer Код услуги ЕРИП, присвоенный Overpay.
account_number string Идентификатор заказа/услуги/договора, для оплаты через ЕРИП.
transaction_id integer Номер операции в ЕРИП.
instruction array Массив строк информации, которая описывает путь в дереве ЕРИП для нахождения платежного поручения.
service_info array Массив строк информации, которая будет показана плательщику перед подтверждением оплаты через ЕРИП и описывающая, за что происходит оплата.
receipt array Массив строк информации, которая будет отображена на чеке-подтверждении оплаты через ЕРИП.
agent_code integer Код платежного агента, принявшего платеж.
agent_name string Имя платежного агента, принявшего платеж.
service_no_erip integer Код услуги, присвоенный ЕРИП.
qr_code_raw string Закодированные в base64 данные для генерации QR-кода.
qr_code string Закодированная в base64 PNG картинка QR-кода. Для отображения QR-кода на сайте нужно вставить значение qr_code в img HTML тэг: <img src="здесь значение qr_code">.
Пример ответа
{
  "transaction": {
    "uid": "5046a011-cbbc-4f90-be62-be26aab13253",
    "type": "payment",
    "status": "pending",
    "amount": 100,
    "currency": "BYN",
    "description": "description",
    "created_at": "2025-04-02T07:29:07Z",
    "updated_at": "2025-04-02T07:29:11Z",
    "method_type": "erip",
    "receipt_url": "https://backoffice.overpay.io/customer/transactions/5046a011-cbbc-4f90-be62-be26aab13253/0f2bec00306efcea78f6feaf23bde471afd7ad2f748c64b1b060efb4b04767ff?language=en",
    "payment": {
      "status": "pending",
      "gateway_id": 5202,
      "ref_id": "85d1c616-39fc-4af0-951b-57181a2af70c",
      "message": "Требование на оплату счета создано."
    },
    "erip": {
      "request_id": null,
      "service_no": null,
      "account_number": "1234567-1234567890",
      "transaction_id": null,
      "instruction": [
        "Платежи -> Магазин -> Оплата"
      ],
      "service_info": [
        "Введите номер заказа"
      ],
      "receipt": [
        "Спасибо за оплату"
      ],
      "agent_code": null,
      "agent_name": null,
      "service_no_erip": "12345678",
      "qr_code_raw": "MDAwMjAxMDEwMjEyMzI1NDAwMTBieS5yYXNjaGV0MDEwODEyMzQ1Njc4MTAxODEyMzQ1NjctMTIzNDU2Nzg5MDEyMDIxMjMzMjIwMDE4YnkuZXBvcy5iZUdhdGVUZXN0NTIwNDQ1Njc1MzAzOTMzNTQwNDEuMDA1NTAyMDI1ODAyTFQ1OTA5RGVtb1Rlc3RzNjAwN1ZpbG5pdXM2MjI4MDIxMTE3Nzc3Nzc3Nzc3MDMwOURlbW9UZXN0czY0MTkwMDAyZW4wMTA5RGVtb1Rlc3RzNTYwNDEuMDA2MzA0RTg1QQ==",
      "qr_code": "data:image/png;base64, iVBORw0KGgoAAAANSUhEUgAAALEAAACxAQAAAACjUmFoAAADo0lEQVR4nO2WsW/bRhSH71SYkoe6iDuISmBRHiLPUQYrQwzUGWwNVWY7g2gBkaihKuoOpmhAPCoopUyF48GUjIjkYHauOlgeHKBeoqXOXHuQqAASOdgGnCEijerqPyDA09rCNz58+N33wLvHC9AvLhJAX1539bv6f7VOcTAfMJQSjpSyFRsTMEe2nwzW6gt2YUEVg2N4X1vuEvcvciCfHAo0NInnR41poZLafpacrC895rt/Bj8VD8kkPKcQe7H3mx2nPxbxCOYVbpBLT3Xl971MtxQAeUy9hLn9WNlOGn/s6pRAPA0MP1zPvY/EUtf8kAuCPGKOZGKqObo4L7zb+ATzvDNr+eYD9SOZyjZ0mG/fK+RVkd3MqEe6yoD9ovW0Tr7Lpt04v+ys+yCPv06KG80ofTrqH7+5KIA+VEqF7ilYc0y5gyb4XrjX4ohf3u/1oz5zWIT9rfRyzWiglmguDe0S6IM22SnVwbI9453b96NgPi322yLDP4/TwkNZcOH8/bfCq57hSWLY3t17BPNTAXFOSzOOe2rQUzgf27d31vAb/O+PO9a3v8D59ew+WVv0uEIR9ZlZuN/qErqZJheDzI48lCY4z3xK+L6r1OebV/MJJwP77yVyR6rTEH3vc4+B5xUNDbW+wa+EsL3NRQjoj0flGvvz22o3Fo4z5QrIo4aDqHB7TBm8ceLwMJ9jwwP2lVLtHGgWOwf6o0qFdy63IlypMJQqr2Eee4Unpap33ly7H43sgDzVLg9PosOZd1hFq/wVyGOVRawpicv0zUrS8GAfb0O66DaN8FcLpL/SRCB/yfKtfaWrZs5u93oB+yszv344rRN3CZnjtgXm4793tbbvFpIvgpr/7AzkaczxvUUSPrMYR3/6EPTBunahkJdZ/WSWEneC+dZxNqmioTRKNVM7XZBH+shKO2b8hoQlK92C+5Vq7oNuR7ToDI9aKTifDV9HWR+T6Mb8CIVh/54bWmeOCXvzqFO1v4Hza6xYey2hYSwfL4XWYD7/Aylv2dy1o3dDmTjYL6qParoioNrWtubFRZDHNBsmdrKP1VU89k3YB0XTWL3MD3zG8Mvw/47i6YRXP6NyVRYsB4E8knvO89ixIvmtjMCuwrxNkOGdR+K1q8Rm5WACf2qfuZynoZ8GTmmC9wNCc3skT9x/QqZqwfcLccQkL4PCLMrxRx14niMl1je19WPBlQyHToP87ftqnMO6PWa5nhiZ4P12V7+r/0/q/wK4EMbci6sW9QAAAABJRU5ErkJggg=="
    },
    "customer": {
      "first_name": "Иван",
      "last_name": "Иванов",
      "middle_name": "Иванович",
      "country": "BY",
      "city": "Минск",
      "zip": "220050",
      "address": "просп. Независимости, 10",
      "phone": "17777777777",
      "device_id": "12312312321fff67",
      "email": null,
      "ip": "127.0.0.1"
    },
    "manually_corrected_at": null,
    "version": 0,
    "message": "Требование на оплату счета создано.",
    "tracking_id": "your_uniq_number",
    "test": true,
    "language": "en",
    "expired_at": "2025-05-01T15:00:00+01:00",
    "billing_address": {
      "first_name": "Иван",
      "last_name": "Иванов",
      "middle_name": "Иванович",
      "country": "BY",
      "city": "Минск",
      "zip": "220050",
      "address": "просп. Независимости, 10",
      "phone": "17777777777",
      "device_id": "12312312321fff67"
    },
    "additional_data": {
      "payment_method": {
        "type": "erip"
      }
    },    
    "gateway": {
      "iframe": false
    }
  }
}

Уведомления о ЕРИП платежах

Для информирования вашей IT-системы об изменениях статуса платежного требования и об осуществленной оплате Overpay использует механизм уведомлений на адрес, указанный в notification_url запроса.

Уведомления - это POST-запросы с вашими авторизационными данными и содержащие JSON-сообщения с данными платёжного требования.

Проверяйте авторизационные данные, чтобы убедиться, что запрос пришел от Overpay.

Уведомления приходят в случае изменения статуса операции на pending, expired, failed или successful.

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