Оплата

Пользователь перенаправляется в сервис провайдера, где выполняет оплату.

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

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

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

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

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

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

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

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

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

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



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

Запрос

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

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

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

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
required

Имя пользователя на китайском языке.

Пример: 爱

customer_last_name
string
required

Фамилия пользователя на китайском языке.

Пример: 李

customer_email
string
strictly required

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

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

payment_currency
string
strictly required

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

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

Пример: CNY

payment_amount
integer
strictly required

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

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

Пример: 100,00 CNY передается как 10000

force_payment_method
string
optional

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

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

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

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: '爱',
		customer_last_name: '李',
		customer_email: 'johndoe@example.com',
		payment_currency: 'CNY',
		payment_amount: 10000,
		force_payment_method: 'alipay',
		signature: 'kUi2x9dKHAVNU0FYldJrxh4yo+52Kt8KU+Y19vySO/RLUkDJrOcZzUCwX6R/ekpZhkIQg=='
	}
)

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

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

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

Рис. 2. Пример тела оповещения об успешно выполненной оплате
{
    "project_id": 1234,
    "payment": {
        "id": "payment_47",
        "type": "purchase",
        "status": "success",
        "date": "2024-12-07T19:08:45+0000",
        "method": "alipay",
        "sum": {
            "amount": 10000,
            "currency": "CNY"
        },
        "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": 10000,
            "currency": "CNY"
        },
        "sum_converted": {
            "amount": 10000,
            "currency": "CNY"
        },
        "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": "alipay",
        "sum": {
            "amount": 10000,
            "currency": "CNY"
        },
        "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": 10000,
            "currency": "CNY"
        },
        "sum_converted": {
            "amount": 10000,
            "currency": "CNY"
        },
        "code": "20000",
        "message": "General decline",
        "provider": {
            "id": 12345,
            "payment_id": "123abc123-123",
            "auth_code": ""
        }
    },
    "signature": "U7HQO7ToISZhMPKdM4XrUKQtoYzFvoB3cs9CRd4xeYG2Q=="
}

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

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

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

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

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



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

Запрос

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

HTTP-метод запроса POST
Формат тела запроса JSON
Конечная точка/v2/payment/wallet/alipay/sale
Полная спецификация конечной точки /v2/payment/wallet/{payment_method}/sale
Табл. 2. Базовые параметры запроса на оплату

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

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
required

Имя пользователя на китайском языке.

Пример: 爱

last_name
string
required

Фамилия пользователя на китайском языке.

Пример: 李

email
string
strictly required

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

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

payment
object
strictly required

currency
string
strictly required

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

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

Пример: CNY

amount
integer
strictly required

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

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

Пример: 100,00 CNY передается как 10000

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

Вот пример тела запроса на оплату с использованием метода Alipay:

Рис. 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": "爱",
        "last_name": "李",
        "email": "johndoe@example.com"
    },
    "payment": {
        "currency": "CNY",
        "amount": 10000
    }
}

Перенаправление пользователей

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

Чтобы перенаправить пользователя, используйте значения следующих параметров, находящихся в объекте redirect_data:

  • url — адрес для перенаправления пользователя;
  • body — данные для отправки в теле запроса;
  • method — метод запроса HTML-страницы сайта (например, POST или GET);
  • encrypted — это служебный параметр. Игнорируйте содержащиеся в нем данные.

Вот пример фрагмента оповещения, содержащего данные для перенаправления пользователя:

"redirect_data": {
    "method": "GET",
    "body": [],
    "encrypted": [],
    "url": "https://example.com/redirect"
}

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

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

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

Рис. 6. Пример тела оповещения об успешно выполненной оплате
{
    "project_id": 1234,
    "payment": {
        "id": "payment_47",
        "type": "purchase",
        "status": "success",
        "date": "2024-12-07T19:08:45+0000",
        "method": "alipay",
        "sum": {
            "amount": 10000,
            "currency": "CNY"
        },
        "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": 10000,
            "currency": "CNY"
        },
        "sum_converted": {
            "amount": 10000,
            "currency": "CNY"
        },
        "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": "alipay",
        "sum": {
            "amount": 10000,
            "currency": "CNY"
        },
        "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": 10000,
            "currency": "CNY"
        },
        "sum_converted": {
            "amount": 10000,
            "currency": "CNY"
        },
        "code": "20000",
        "message": "General decline",
        "provider": {
            "id": 12345,
            "payment_id": "123abc123-123",
            "auth_code": ""
        }
    },
    "signature": "U7HQO7ToISZhMPKdM4XrUKQtoYzFvoB3cs9CRd4xeYG2Q=="
}