Платежная страница

Платежи через общую платежную страницу осуществляются в 2 этапа: инициация и завершение. В запросе инициализации в API Odero отправляется запрос на создание формы. В результате этого запроса отправителю запроса возвращается 2 значения. Одно из этих значений token, а другое pageUrl. После этого шага URL-адрес, возвращаемый pageUrl, открывается в браузере или отображается с помощью iframe. Параметр iframe=True должен быть добавлен к этому значению URL, чтобы можно было отображать с помощью iframe. URL- адрес в параметре callbackUrl отправляется в форме значения token, после процесса создания оплаты. Карту можно сохранить с помощью общей платежной страницы, а также оплату можно произвести с помощью сохраненной карты.

Сохранение карты

Чтобы сохранить карту при оплате через общую платежную страницу, пользователю необходимо выбрать «сохранить мою карту» на странице оплаты. Карты также можно сохранить для платежей, совершенных не через общую страницу оплаты. Сохранение карты

Оплата сохраненной картой

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

Запуск общей платежной страницы

URL

Ниже приведена информация о endpoint и методе http, используемых для запуска платежа с общей платежной страницы:

HTTP Metod URL
POST /payment/v1/checkout-payments/init

Параметры запроса для запуска платежа

В отличие от других платежей, платежи, осуществляемые через общую платежную страницу, требуют отправки параметра callbackUrl. В связи с этим, для запуска платежа с помощью 3D Secure необходимы следующие параметры:

Название параметра Тип Обязательный Объяснение
conversationId string Нет Значение "бумеранг", которое может быть отправлено с запросом и получено с ответом. Его можно использовать для связывания разных запросов друг с другом. Обычно используется номер заказа мерчанта, связанный с платежом.
price decimal Да Общая сумма платежа. Сумма товаров/услуг в корзине, должна быть равна этой сумме.
paidPrice decimal Да Общая сумма, которая заплатит клиент, рассчитывается с учётом таких разниц, как комиссионные и скидки. Платежи, которые полностью или частично собираются в кошельке и сумма, которая взимается с кошелька, включаются в эту сумму.
walletPrice decimal Нет Сумма, которая будет списана с кошелька покупателя, указанна в параметре buyerId. Обязательно отправка платежей, которые будут полностью или частично списаны с кошелька.Он может быть отправлен как 0, при полной оплате с карты или при отсутствии buyerId. (Defolt: 0)
buyerId long Нет ID покупателя, с которым связан платеж. Это относится к значению ID в системе Odero, а не к значению ID в собственной системе мерчанта.
cardUserKey string Нет Просмотр сохраненного ключа карты пользователя: Информация о сохраненной карте
currency Currency Да См. : Валюты Валюта, в которой будет произведена оплата.
paymentGroup PaymentGroup Да См. : группы оплат
callbackUrl string Да* Адрес, который будет использоваться для доставки результата от банка мерчанта при платежах, осуществляемых с помощью 3D Secure (см. Прием оплаты с 3D Secure )
items PaymentItem[] Да (см. : Информация о распределении платежей) Информация о распределении платежей. Должна быть отправлена хотя бы одна часть, а сумма отправленных частей должна быть равна значению полю price .
plan PaymentPlan Нет** (см. : Информация о повторной оплате Информация о повторной оплате. Все поля обязательны для заполнения.

_*: Это поле, которое в обычных условиях не является обязательным, выделено, поскольку оно является обязательным для платежей, осуществляемых через общую страницу оплаты.

**: Это поле является обязательным, если PaymentGroup не произвела оплату (SUBSCRIPTION)

Параметры возврата

Параметры, возвращаемые в результате процесса оплаты через общую страницу, также подчиняются правилам, указанным в разделе Форматы возврата на главной странице API документации . При отсутствии систематичной или структурной ошибки, нижние параметры возвращающегося объекта в data параметрах следующие:

Название параметра Тип Всегда доступен Объяснение
token string Да Значение unique uuid4, созданное для общей страницы оплаты и платежной транзакции.
pageUrl string Да Сюда входит адрес страницы, на которую должен быть перенаправлен пользователь. При переходе на эту страницу через browser открывается общая страница оплаты.

3D Secure

Процесс оплаты 3D Secure, который начинается с запроса на создание платежной формы, отправленного мерчантом, продолжается после подтверждения пользователем. После того, как пользователь вводит отправленный ему код подтверждения, результат проверки передается в API Odero соответствующим банком. API Odero согласовывает полученный результат с некоторой информацией о платеже и отправляет запрос на callbackUrl, отправленный мерчантом в запросе на запуск платежа.

Параметры, отправляемые в Callback URL

Следующие параметры передаются с использованием метода HTTP POST в качестве form variable. Параметры, содержащиеся в запросе, которые будут отправляться со стороны Odero на callbackUrl следующие:

Название параметра Тип Всегда доступен Объяснение
token string Да Значение unique uuid4, созданное для общей страницы оплаты и платежной транзакции.
subscriptionId long Нет ID значение успешной повторной оплаты. Отправляется, когда PaymentGroup SUBSCRIPTION равны.

Запрос на оплату

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

URL

Ниже приведена информация о endpoint и методе http, используемых для запуска платежа с общей платежной страницы:

HTTP Method URL
GET /payment/v1/checkout-payments/{token}

Параметры возврата

Параметры, возвращаемые в результате процесса оплаты через общую страницу, также подчиняются правилам, указанным в разделе Форматы возврата на главной странице API документации . При отсутствии систематичной или структурной ошибки, нижние параметры возвращающегося объекта в data параметрах следующие:

Название параметра Тип Всегда доступен Объяснение
id long Да ID платежа
createdDate date Да Дата первого создания платежа
updatedDate date Да Дата обновления платежа
orderId string Да Отличительный ID номер, созданный в связи с платежом. Для полной оплаты с кошелька, он создается со стороны Odero, в других случаях создается банком.
price decimal Да Общая корзиночная чена платежа.
paidPrice decimal Да Общая взимаемая сумма
walletPrice decimal Да Сумма, снятая с кошелька
paymentType PaymentType Да см. : Валюты
currency Currency Да см. : Валюты
paymentStatus PaymentStatus Да см. : Статусы платежа
conversationId string Нет Значение conversationId, отправленное мерчантом в запросе платежа.
paymentCard PaymentCard Да (см. : Информация о платежной карте и комиссии) Информация о платежной карте и комиссии.
paymentRefunds PaymentRefund[] Да (см. : Информация о возврате платежа) Список возвратов, связанных с оплатой.
paymentTransactions PaymentTransaction[] Да (см. : Информация о распределении платежей) Детали раздач, входящих в оплату.

Информация о платежной карте и комиссии

Сумма отправляется со всеми платежами, в том числе собранными с кошелька.

Название параметра Тип Всегда доступен Объяснение
cardType CardType Нет (см. : Типы карт) Занимает место при полной или частичной оплате с картой. Определяет тип карты.
cardAssociation CardAssociation Нет (см. : Строение карт) Занимает место при полной или частичной оплате с картой. Указывает учреждение, к которому привязана карта.
cardBrand string Нет Занимает место при полной или частичной оплате с картой. Он имеет то же значение, что и cardBrand в данных карты в запросе платежа.
cardHolderName string Нет Занимает место при полной или частичной оплате с картой. Отражает имя и фамилию владельца карты.
binNumber string Нет Занимает место при полной или частичной оплате с картой. Отражает первые 6 цифр карты.
lastFourDigits string Нет Занимает место при полной или частичной оплате с картой. Отражает последние 4 цифры карты.
installment integer Да Показывает количество рассрочек карты. Значения, которые он может получить: 1, 2, 3, 6, 9 и 12
isThreeDS boolean Нет Занимает место при полной или частичной оплате с картой. Указывает, был ли произведен платеж с использованием 3D Secure.
mdStatus integer Нет (см. : MD Статус) Он занимает место в платежах, осуществляемые с помощью 3D Secure, которые полностью или частично снимаются с карты. Указывает статус проверки 3D Secure.
pfCommissionRateAmount decimal Да Размер комиссии, полученной Odero в качестве платежного посредника.
merchantCommissionRate decimal Да Комиссионная ставка, применяемая к платежу мерчантом.
merchantCommissionRateAmount decimal Да Общая комиссионная сумма, полученная мерчантом от платежа.
error Error Нет (см. : Информация о проблеме) Занимает место в платежах, которые завершились с проблемой. Содержит информацию о проблеме.

Информация, связанная с отменой платежа

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

Название платежа Тип Всегда доступен Объяснение
id long Да ID отмененного процесса, созданный Odero.
createdDate date Да Дата отмены
refundStatus string Да см. : Статусы возврата
refundDestinationType RefundDestinationType Да см. : Типы возврата
price decimal Да Отмененная сумма.
refundBankPrice decimal Да Возврат на карту после отмены.
refundWalletPrice decimal Отмена Возврат в кошелек после отмены.
conversationId string Да Значение conversationId отправленное мерчантом в запросе на отмену.
paymentType PaymentType Да (см. : Типы оплат) Тип вычета при отмене платежа.
error Error Нет (см. : Информация о проблеме) Происходит в случае сбоя отмены. Содержит информацию об ошибке

Информация, связанная с распределением платежей

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

Название параметра Тип Всегда доступен Объяснение
id long Да ID распределения платежей.
createdDate date Да Дата создания распределения платежей.
externalId string Нет External ID, связанный с распределением платежа, отправленный в запросе платежа.
transactionStatus TransactionStatus Да (см. : Статусы денежных переводов) Значение, указывающее статус отправки денег, связанных с распределением.
transactionStatusDate date Да Показывает последнюю дату, когда изменился статус денежного перевода для распределения.
price decimal Да Корзиночная цена распределения платежей.
paidPrice decimal Да Доля от общей суммы, собранной для выплаты по соответствующему распределению.
walletPrice decimal Да Доля от общей суммы, собранной с кошелька для оплаты, по соответствующему распределению.
merchantPayoutAmount decimal Да Доля денег, которая будет отправлена мерчанту, в связи с платежом, соответсвующая распределению.
subMerchantId long Нет ID субмерчанта, с которым связан распределение платежей.
subMerchantName string Да Происходит, когда субмерчант связан с распределением платежей. Сюда входит имя соответствующего мерчанта.
subMerchantPrice decimal Да Происходит, когда субмерчант связан с распределением платежей. Это доля от общей суммы, подлежащая переводу из суммы платежа субмерчанту по соответствующему распределению.
subMerchantPayoutRate decimal Да Происходит, когда субмерчант связан с распределением платежей. Это соотношение денег, которые должны быть отправлены субмерчанту, относительно платежа, к деньгам, которые должны быть отправлены мерчанту.
subMerchantPayoutAmount decimal Да Происходит, когда субмерчант связан с распределением платежей. Указывает сумму, которая будет отправлена субмерчанту для оплаты.
payout Payout Да (см. : Распределение платежей Распределение денежных переводов) Сюда входит распределение сумм денежных переводов между мерчантом, субмерчантом и Odero в отношении распределения платежей.
paymentTransactionCard PaymentTransactionCard Да (см. : Информация о карте и комиссиях распределения платежей) Сюда входит информация о карте и комиссионных, связанных с распределением платежей.
paymentTransactionRefunds PaymentTransactionRefund[] Да (см. : Информация о возврате распределения платежей) Список информаций о полном или частичном возврате платежей в отношении распределения платежей.

Информация о карте и комиссии распределении платежей

Сюда входит информация о карте и комиссиях, связанных с разделением платежей.

Название параметра Тип Всегда доступен Объяснение
merchantCommissionRate decimal Да Комиссионная ставка, применяемая субмерчантом к палтежу.
merchantCommissionRateAmount decimal Да Доля платежа от суммы комиссии, полученной мерчантом
pfCommissionRateAmount decimal Да В качестве платежного посредника доля Odero в распределении платежа из суммы комиссии, полученной от платежа.

Распределение платежей Распределение денежных переводов

Сюда входит разделение доли платежного перевода между мерчантом, субмерчантом и Odero. Валютой распределения денег всегда является AZN, поэтому при платежах, осуществляемых в других валютах, будет существовать курсовая разница. Эти различия указаны в полях pfConversionRate и pfConversionRateAmount.

Название параметра Тип Всегда доступен Объяснение
paidPrice decimal Да Доля от общей суммы, собранной для выплаты по соответствующему распределению.
currency Currency Да см. : Валюты
merchantPayoutAmount decimal Да Доля стоимости денег, которая будет отправлена мерчанту в связи с оплатой в валюте AZN, согласно соответствующему распределению.
subMerchantPayoutAmount decimal Да Доля стоимости денег в валюте AZN, подлежащая отправке мерчанту в связи с оплатой, согласно соответствующему распределению.
pfCommissionRateAmount decimal Да Доля стоимости денег, которая будет отправлена в Odero в качестве платежного посредника, в валюте AZN согласно соответствующему распределению.
pfConversionRate decimal Да Разница обменного курса, на которой основан Odero, при денежных переводах, осуществляемых в валюте, отличной от AZN. AZN в платежах равен 0.
pfConversionRateAmount decimal Да Разница обменного курса, на которой основан Odero, при денежных переводах, осуществляемых в валюте, отличной от AZN. AZN в платежах равен 0.

Информация о возврате, связанная с распределением платежей

Полная и частичная, удачная или неудачная информация о возврате платежа.

Название параметра Тип Всегда доступен Объяснение
id long Да ID отмененного процесса, созданный Odero
createdDate date Да Дата отмены
refundStatus string Да см. : Типы возврата
price decimal Да Отмененная сумма
refundBankPrice decimal Да Возврат на карту после отмены.
refundWalletPrice decimal Отмена Возврат в кошелек после отмены.
conversationId string Да Значение conversationId отправленное мерчантом в запросе на отмену.
paymentType PaymentType Да (см. : Типы платежей) Тип вычета при отмене платежа.
isAfterSettlement boolean Да Производится ли возврат средств после перевода выплаты.
error Error Нет (см: Информация о проблеме) Происходит в случае сбоя отмены. Содержит информацию об ошибке

Примеры кодов

Вы можете просмотреть примеры кодов в Odero API client с открытым исходным кодом: