Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

...

7. Опентао передает платежные данные в ответ на вызов метода GetPaymentParameters

Раскрыть
Блок кода
languagecsharp
titleСтруктура ответа PaymentFormAnswer
linenumberstrue
public class PaymentFormAnswer
{
	public PaymentForm Result { get; set; }
	public OtapiErrorCode ErrorCode { get; set; }
	public string ErrorDescription { get; set; }
	public string SubErrorCode { get; set; }
}
public class PaymentForm
{
    public string RequestMethod { get; set; }
    public string RequestUrl { get; set; }
    [ XmlArrayItem( "Parameter" ) ] 
	public PaymentFormParameter[] Parameters { get; set; }
}
public class PaymentFormParameter
{
    public string Name { get; set; }
    public string Value { get; set; }
}

где PaymentForm

Параметр
Описание
 
RequestUrlАдрес оповещения сервиса, который используется в шаге 15 
RequestMethodСпособ отправки запроса на адрес оповещенияGET/POST

PaymentFormParameter - платежный параметр, являющийся по сути KeyValuePair

Параметр
Описание
Примечание
NameИмя параметра

Обязательные параметры (описание см. в 3.3.1):

orderId
paymentId
usertIduserId
amount
currency
description
ValueЗначение 

 

...

Раскрыть

Необходимо передать нижеследующие параметры на адрес оповещения RequestUrl методом RequestMethod (получены от Опентао на 7 шаге), используя транспорт HTTP.

Обязательные параметры (описание см. в 3.3.1):

instanceKey
orderId
paymentId
usertIduserId
amount
currency
status
signature

...

ПараметрОписаниеВозможное значениеПримечание
instanceKeyИдентификатор Контрагента в системе Опентао  
secretПлатежный секрет Необходим для формирования цифровой подписи 3.4. Выдается Контрагенту от Опентао.
orderIdИдентификатор заказа для оплаты 

Присутствует если пользователь оплачивает заказ.

Отсутствует при пополнении счета

paymentIdИдентификатор платежа во внутренней системе биллинга Опентао  
usertIduserIdИдентификатор пользователя Опентао  
amountСумма платежа  
currencyЦифровой код валюты платежа в формате ISO 4217643 - RUBhttp://en.wikipedia.org/wiki/ISO_4217
statusСостояние платежа

Completed - завершен

Canceled - отменен

 
signatureЦифровая подпись зашифрованная по алгоритму MD5 32 шестнадцатеричных символа, в верхнем регистре
descriptionОписание платежа  

...

MD5 хеширование применяется к тексту, формируемому как последовательность значений ряда параметров, разделенных символом «точка с запятой» — «;». 

orderId;paymentId;usertIduserId;amount;currency;status;secret

...