Оплата

При оплате пользователь сканирует QR-код или щелкает кнопку на странице оплаты или в вашей системе (при работе через Gate), после чего перенаправляется в мобильное приложение для совершения оплаты.

Регионы использования Беларусь
Валюты оплаты BYN
Суммы платежей Информацию уточняйте у курирующего менеджера EtoPlatezhi. Также вы можете уточнить в Dashboard минимальную и максимальную сумму платежа, доступную в вашем проекте.
Время проведения платежа Информацию уточняйте у курирующего менеджера EtoPlatezhi.
Конвертация валют
Возврат
Организация и стоимость подключения По согласованию с курирующим менеджером EtoPlatezhi
Особенности
  • В качестве валюты оплаты можно использовать только BYN.
  • Список поддерживаемых банков можно уточнить на сайте ЕРИП или обратиться к своему курирующему менеджеру EtoPlatezhi.
  • При использовании запросов через Gate ваша система должна добавить URL банка к полученной в промежуточном колбеке ссылке (deep_link).

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

Интерфейсы
Payment Page Gate Dashboard
Оплата

Уточнить минимальную и максимальную сумму платежа, доступную в вашем проекте, вы можете в Dashboard. Для этого в Dashboard перейдите в раздел Проекты и выберите вкладку Платежные методы.

Далее подробно рассказывается, что вам нужно делать для проведения платежа, а также о возможностях анализа уже проведенных платежей.

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

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

Чтобы выполнить оплату через Payment Page с использованием метода ЕРИП:

  1. Отправьте запрос с нужными параметрами и подписью на рабочий URL-адрес платежной платформы EtoPlatezhi.
  2. Примите от платежной платформы EtoPlatezhi оповещение (callback) с результатом оплаты.

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



Рис. 1. Здесь описаны шаги оплаты через Payment Page
  1. Пользователь инициирует оплату в вашей системе.
  2. Ваша система передает запрос на оплату через Payment Page на URL-адрес платежной платформы EtoPlatezhi.
  3. Страница оплаты отображается пользователю.
  4. Пользователь выбирает на странице оплаты метод ЕРИП.
  5. Пользователю отображаются кнопки для перенаправления в приложения вместе с QR-кодом на странице оплаты.
  6. Пользователь сканирует QR-код или щелкает одну из кнопок, после чего перенаправляется в мобильное приложение и выполняет оплату.
  7. Сервис провайдера оповещает платежную платформу о результате оплаты.
  8. Платежная платформа отправляет вашей системе оповещение (callback) о результате оплаты.
  9. Результат оплаты отображается пользователю на странице оплаты.

Запрос

В запросе на открытие страницы оплаты с использованием метода ЕРИП укажите необходимые параметры:

Табл. 1. Базовые параметры запроса в Payment Page

strictly required — параметр обязательно должен присутствовать в начальном запросе.

optional — параметр необязателен, но в общем случае его наличие в запросе способствует оптимизации проведения платежа, например упрощает процесс платежа для пользователя или повышает процент успешных платежей.

ПараметрОписание

project_id
integer
strictly required

Идентификатор проекта, полученный от EtoPlatezhi при интеграции.

Пример: 1234

payment_id
string
strictly required

Идентификатор платежа, уникальный в рамках проекта.

Пример: payment_47

customer_id
string
strictly required

Идентификатор пользователя, уникальный в рамках проекта.

Пример: customer_123

customer_first_name
string
strictly required

Имя пользователя.

Пример: John

customer_last_name
string
strictly required

Фамилия пользователя.

Пример: Doe

customer_email
string
strictly required

Адрес электронной почты пользователя.

Пример: johndoe@example.com

payment_currency
string
strictly required

Код валюты платежа в формате ISO-4217 alpha-3.

В качестве валюты оплаты можно использовать только BYN.

Пример: BYN

payment_amount
integer
strictly required

Сумма платежа в дробных единицах валюты без десятичного разделителя (точки или запятой) и пробелов за исключением случаев, когда у валюты нет дробной части.

Если у валюты нет дробных единиц (то есть количество разрядов дробных единиц равно нулю), то в этом параметре нужно указывать сумму в основных единицах валюты. Подробнее о разрядах дробных единиц у валют см. Использование дробных единиц валюты и Коды валют.

Пример: 10,00 BYN передается как 1000

force_payment_method
string
optional

Параметр, позволяющий пропустить страницу выбора метода и принудительно выбрать ЕРИП в качестве платежного метода.

Чтобы пропустить страницу выбора метода и принудительно выбрать ЕРИП в качестве платежного метода, добавьте в запрос параметр force_payment_method со значением erip. (Подробнее о предварительном выборе метода см. Предварительный выбор платёжных методов.)

Пример: force_payment_method: 'erip'

signature
string
strictly required

Подпись запроса, составленная после определения всех параметров запроса. Подробнее о составлении подписи см. Работа с подписью к данным.
При необходимости добавьте в запрос необязательные параметры из числа доступных для работы с Payment Page. Подробнее о параметрах запросов в Payment Page см. Параметры вызова платёжной формы.

Вот пример параметров из запроса на открытие страницы оплаты с использованием виджета EPayWidget:

EPayWidget.run(
	{
		project_id: 1234,
		payment_id: 'payment_47',
		customer_id: 'customer_123',
		customer_first_name: 'John',
		customer_last_name: 'Doe',
		customer_email: 'johndoe@example.com',
		payment_currency: 'BYN',
		payment_amount: 1000,
		force_payment_method: 'erip',
		signature: 'kUi2x9dKHAVNU0FYldJrxh4yo+52Kt8KU+Y19vySO/RLUkDJrOcZzUCwX6R/ekpZhkIQg=='
	}
)

Оповещение (callback)

В методе ЕРИП результат оплаты платежная платформа возвращает в оповещении. Подробнее о структуре оповещений см. Оповещения.

Вот пример тела оповещения с информацией об успешно выполненной оплате:

Рис. 2. Пример тела оповещения об успешно выполненной оплате
{
    "project_id": 1234,
    "payment": {
        "id": "payment_47",
        "type": "purchase",
        "status": "success",
        "date": "2024-12-07T19:08:45+0000",
        "method": "erip",
        "sum": {
            "amount": 1000,
            "currency": "BYN"
        },
        "description": ""
    },
    "customer": {
        "id": "customer_123"
    },
    "operation": {
        "id": 47,
        "type": "sale",
        "status": "success",
        "date": "2024-12-07T19:08:45+0000",
        "created_date": "2024-12-07T19:08:05+0000",
        "request_id": "1a23456bc7890de",
        "sum_initial": {
            "amount": 1000,
            "currency": "BYN"
        },
        "sum_converted": {
            "amount": 1000,
            "currency": "BYN"
        },
        "code": "0",
        "message": "Success",
        "provider": {
            "id": 12345,
            "payment_id": "123abc123-123",
            "auth_code": ""
        }
    },
    "signature": "U7HQO7ToISZhMPKdM4XrUKQtoYzFvoB3cs9CRd4xeYG2Q=="
}

Вот пример тела оповещения с информацией об отклоненной оплате.

Рис. 3. Пример тела оповещения об отклоненной оплате
{
    "project_id": 1234,
    "payment": {
        "id": "payment_47",
        "type": "purchase",
        "status": "decline",
        "date": "2024-12-07T19:08:45+0000",
        "method": "erip",
        "sum": {
            "amount": 1000,
            "currency": "BYN"
        },
        "description": ""
    },
    "customer": {
        "id": "customer_123"
    },
    "operation": {
        "id": 47,
        "type": "sale",
        "status": "decline",
        "date": "2024-12-07T19:08:45+0000",
        "created_date": "2024-12-07T19:08:05+0000",
        "request_id": "1a23456bc7890de",
        "sum_initial": {
            "amount": 1000,
            "currency": "BYN"
        },
        "sum_converted": {
            "amount": 1000,
            "currency": "BYN"
        },
        "code": "20000",
        "message": "General decline",
        "provider": {
            "id": 12345,
            "payment_id": "123abc123-123",
            "auth_code": ""
        }
    },
    "signature": "U7HQO7ToISZhMPKdM4XrUKQtoYzFvoB3cs9CRd4xeYG2Q=="
}

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

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

Чтобы выполнить оплату через Gate с использованием метода ЕРИП:

  1. Отправьте запрос с нужными параметрами и подписью на рабочий URL-адрес платежной платформы EtoPlatezhi.
  2. Отобразите пользователю QR-код и кнопки для перехода в приложения для оплаты.
  3. Примите от платежной платформы EtoPlatezhi оповещение (callback) с результатом оплаты.

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



Рис. 4. Здесь описаны шаги оплаты через Gate
  1. Пользователь инициирует оплату в вашей системе.
  2. Ваша система передает запрос на оплату в платежную платформу.
  3. Платежная платформа отправляет вашей системе ответ с информацией о получении запроса и о результате проверки его корректности. (Подробнее о структуре ответа см. Формат ответа.)
  4. Платежная платформа отправляет вашей системе ссылки для перенаправления в приложения вместе с QR-кодом в массиве display_data.
  5. Ваша система отображает пользователю кнопки для перенаправления в приложения вместе с QR-кодом.
  6. Пользователь сканирует QR-код или щелкает одну из кнопок, после чего перенаправляется в мобильное приложение и выполняет оплату.
  7. Сервис провайдера оповещает платежную платформу о результате оплаты.
  8. Платежная платформа отправляет в вашу систему оповещение (callback) с результатом оплаты.
  9. Ваша система направляет пользователю информацию о результате оплаты.

Запрос

Далее представлена информация, необходимая для создания и отправки запроса на оплату с использованием метода ЕРИП.

HTTP-метод запроса POST
Формат тела запроса JSON
Конечная точка /v2/payment/erip/sale
Табл. 2. Базовые параметры запроса на оплату

strictly required — параметр обязательно должен присутствовать в начальном запросе.

ОбъектПараметрОписание

general
object
strictly required

project_id
integer
strictly required

Идентификатор проекта, полученный от EtoPlatezhi при интеграции.

Пример: 1234

payment_id
string
strictly required

Идентификатор платежа, уникальный в рамках проекта.

Пример: payment_47

signature
string
strictly required

Подпись запроса, составленная после определения всех параметров запроса. Подробнее о составлении подписи см. Использование подписи к данным.

customer
object
strictly required

id
string
strictly required

Идентификатор пользователя, уникальный в рамках проекта.

Пример: customer_123

ip_address
string
strictly required

IP-адрес устройства пользователя.

Пример: 198.51.100.47

first_name
string
strictly required

Имя пользователя.

Пример: John

last_name
string
strictly required

Фамилия пользователя.

Пример: Doe

email
string
strictly required

Адрес электронной почты пользователя.

Пример: johndoe@example.com

payment
object
strictly required

currency
string
strictly required

Код валюты платежа в формате ISO-4217 alpha-3.

В качестве валюты оплаты можно использовать только BYN.

Пример: BYN

amount
integer
strictly required

Сумма платежа в дробных единицах валюты без десятичного разделителя (точки или запятой) и пробелов за исключением случаев, когда у валюты нет дробной части.

Если у валюты нет дробных единиц (то есть количество разрядов дробных единиц равно нулю), то в этом параметре нужно указывать сумму в основных единицах валюты. Подробнее о разрядах дробных единиц у валют см. Использование дробных единиц валюты и Коды валют.

Пример: 10,00 BYN передается как 1000

При необходимости добавьте в запрос необязательные параметры, указанные в спецификации Gate: API Reference.

Вот пример тела запроса на оплату с использованием метода ЕРИП:

Рис. 5. Пример тела запроса на оплату
{
    "general": {
        "project_id": 1234,
        "payment_id": "payment_47",
        "signature": "kUi2x9dKHAVNU0FYldJrxh4yo+52Kt8KU+Y19vySO/RLUkDJrOcZzUCwX6R/ekpZhkIQg=="
    },
    "customer": {
        "id": "customer_123",
        "ip_address": "198.51.100.47",
        "first_name": "John",
        "last_name": "Doe",
        "email": "johndoe@example.com"
    },
    "payment": {
        "currency": "BYN",
        "amount": 1000
    }
}

Отображение платежной инструкции пользователю

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

Чтобы отобразить пользователю платежную инструкцию, используйте информацию из массива display_data.

Табл. 3. Состав массива display_data
Элемент Описание
{
    "type": "qr_img",
    "title": "qr_img",
    "data": "data:image/png;base64, iVBORw0KGgoAAAANSUhEUgAAALIAAACyAQA="
}
Данные, которые нужно отобразить в виде QR-кода.

Пример: data:image/png;base64, iVBORw0KGgoAAAANSUhEUgAAALIAAACyAQA=

{
    "type": "deep_link",
    "title": "deep_link",
    "data": "MDAwMjAxMDEwMjEyMzI1N..."
}
Завершающая часть ссылки (URL) для перехода в мобильное приложение провайдера для оплаты. Начальную часть ссылки, включающую в себя URL требуемого банка, должна подставить ваша система.

Пример: MDAwMjAxMDEwMjEyMzI1N...

Далее представлен фрагмент оповещения с массивом display_data.

"display_data": [
    {
        "type": "qr_img",
        "title": "qr_img",
        "data": "data:image/png;base64, iVBORw0KGgoAAAANSUhEUgAAALIAAACyAQA="
    },
    {
        "type": "deep_link",
        "title": "deep_link",
        "data": "MDAwMjAxMDEwMjEyMzI1N..."
    }
]

Оповещение (callback)

В методе ЕРИП результат оплаты платежная платформа возвращает в оповещении. Подробнее о структуре оповещений см. Оповещения.

Вот пример тела оповещения с информацией об успешно выполненной оплате:

Рис. 6. Пример тела оповещения об успешно выполненной оплате
{
    "project_id": 1234,
    "payment": {
        "id": "payment_47",
        "type": "purchase",
        "status": "success",
        "date": "2024-12-07T19:08:45+0000",
        "method": "erip",
        "sum": {
            "amount": 1000,
            "currency": "BYN"
        },
        "description": ""
    },
    "customer": {
        "id": "customer_123"
    },
    "operation": {
        "id": 47,
        "type": "sale",
        "status": "success",
        "date": "2024-12-07T19:08:45+0000",
        "created_date": "2024-12-07T19:08:05+0000",
        "request_id": "1a23456bc7890de",
        "sum_initial": {
            "amount": 1000,
            "currency": "BYN"
        },
        "sum_converted": {
            "amount": 1000,
            "currency": "BYN"
        },
        "code": "0",
        "message": "Success",
        "provider": {
            "id": 12345,
            "payment_id": "123abc123-123",
            "auth_code": ""
        }
    },
    "signature": "U7HQO7ToISZhMPKdM4XrUKQtoYzFvoB3cs9CRd4xeYG2Q=="
}

Вот пример тела оповещения с информацией об отклоненной оплате.

Рис. 7. Пример тела оповещения об отклоненной оплате
{
    "project_id": 1234,
    "payment": {
        "id": "payment_47",
        "type": "purchase",
        "status": "decline",
        "date": "2024-12-07T19:08:45+0000",
        "method": "erip",
        "sum": {
            "amount": 1000,
            "currency": "BYN"
        },
        "description": ""
    },
    "customer": {
        "id": "customer_123"
    },
    "operation": {
        "id": 47,
        "type": "sale",
        "status": "decline",
        "date": "2024-12-07T19:08:45+0000",
        "created_date": "2024-12-07T19:08:05+0000",
        "request_id": "1a23456bc7890de",
        "sum_initial": {
            "amount": 1000,
            "currency": "BYN"
        },
        "sum_converted": {
            "amount": 1000,
            "currency": "BYN"
        },
        "code": "20000",
        "message": "General decline",
        "provider": {
            "id": 12345,
            "payment_id": "123abc123-123",
            "auth_code": ""
        }
    },
    "signature": "U7HQO7ToISZhMPKdM4XrUKQtoYzFvoB3cs9CRd4xeYG2Q=="
}