Интерфейс создания транзакции

Этот XML-интерфейс позволяет Продавцу создать транзакцию и проверить участие карты в технологии 3DSecure

Action - https://card.paysoft.solutions/api/xml/payment-create

Method - POST

Формат XML-запроса:

<Command>
    <LMI_MERCHANT_ID></LMI_MERCHANT_ID>
    <LMI_HASH></LMI_HASH>
    <LMI_PAYMENT_NO></LMI_PAYMENT_NO>
    <LMI_PAYMENT_AMOUNT></LMI_PAYMENT_AMOUNT>
    <LMI_PAYMENT_DESC></LMI_PAYMENT_DESC>
    <LMI_CARDNUMBER></LMI_CARDNUMBER>
    <LMI_EXPIRE_YEAR></LMI_EXPIRE_YEAR>
    <LMI_EXPIRE_MONTH></LMI_EXPIRE_MONTH>
    <LMI_CVV></LMI_CVV>
    <LMI_PAYER_IP></LMI_PAYER_IP>
    <LMI_MERCHANT_URL></LMI_MERCHANT_URL> 
</Command>
Название XML параметр Обязательный? Описание
Идентификатор Продавца LMI_MERCHANT_ID Да Идентификатор торговой точки, на который будет принят платеж. Идентификатор Продавец может получить в Кабинете.
Сумма платежа LMI_PAYMENT_AMOUNT Да Сумма платежа, которую Продавец желает получить от Клиента. Сумма должна быть больше нуля, дробная часть отделяется точкой.
Внутренний номер заказа в системе учета Продавца LMI_PAYMENT_NO Нет В этом поле Продавец определяет номер заказа в соответствии со своей системой учета. Несмотря на то, что параметр не является обязательным, рекомендуется всегда задавать его, поскольку он нужен для корректной работы других интерфейсов. Желательно использовать уникальный номер для каждого платежа. Номер может содержать буквы английского алфавита, цифры и знак дефиса «-». Максимальная длина - 64 символов.
Назначение платежа LMI_PAYMENT_DESC Да Описание товара / работы / услуги, которые оплачиваются. Максимальная длина - 255 символов. Кодирование - UTF8.
Контрольная подпись LMI_HASH Да Контрольная подпись запроса формируется путем шифрования исходного текста XML-запроса с пустым значением LMI_HASH и секретного ключа SecretKey с помощью алгоритма, указанного в Кабинете продавца. Полученная подпись передается в теге LMI_HASH. Рекомендованным алгоритмом шифрования есть SHA256.
Номер карты LMI_CARDNUMBER Да
Срок действия карты, год LMI_EXPIRE_YEAR Да В формате: ГГ
Срок действия карты, месяц LMI_EXPIRE_MONTH Да В формате: ММ
CVV/CVV2 LMI_CVV Да 3 цифры
Электронный адрес Клиента LMI_PAYER_EMAIL Нет** Электронный адреса Клиента
Идентификатор клиента на стороне Продавца LMI_PAYER_ID Нет Может содержать буквы английского алфавита, цифры и знак дефиса «-». Максимальная длина 50 символов.
Фамилия Клиента LMI_PAYER_SURNAME Нет*** Фамилия Клиента
Имя Клиента LMI_PAYER_FIRSTNAME Нет*** Имя Клиента
Отчество Клиента LMI_PAYER_PATRONYMIC Нет*** Отчество Клиента
Дата рождения Клиента LMI_PAYER_BIRTHDAY Нет*** Дата рождения Клиента в формате ГГГГ-ММ-ДД
ИНН Клиента LMI_PAYER_TAX_ID Нет*** ИНН
Номер телефона Клиента LMI_PAYER_PHONE_NUMBER Нет** Номер телефона Клиента в формате 380xxxxxxxxx.
Страна Клиента LMI_PAYER_COUNTRY Нет** ISO 3166-1 alpha-2
Штат (только для США и Канады) LMI_PAYER_STATE Нет** аббревиатура штата
Город LMI_PAYER_CITY Нет** Город
Адрес LMI_PAYER_ADDRESS Нет** Адрес
Почтовый индекс LMI_PAYER_ZIP Нет** Почтовый индекс
Сохранение реквизитов карты LMI_CREATE_TOKEN Нет Флаг, принимает значение 0 или 1. Если равен 1, то после успешной оплаты реквизиты карты, будут сохранены и возвращен параметр LMI_PAYMENT_TOKEN. См Списание по сохраненной карте
Оплата по сохраненном токену карты LMI_PAYMENT_TOKEN Нет Передается уже сохраненый токен карты. Оплата будет производится с подтверждением CVV и 3DSecure
Расщепление платежа LMI_SPLIT Нет Платеж с расщеплением суммы на нескольких получателей. В этом параметре указывается JSON массив с правилами расщепления платежа. При использовании параметра LMI_SPLIT происходит одно списание с клиента и несколько зачислений получателям. Пример JSON строки:
[{"CompanyId": 1, "Amount": 20,"CompanyName":"","Description":"","EDRPOU":"","IBAN":""}, {"CompanyId": 2, "Amount": 12,"CompanyName":"","Description":"","EDRPOU":"","IBAN":""}]
IP плательщика LMI_PAYER_IP Да IP адрес плательщика
URL сайта LMI_MERCHANT_URL Да URL сайта, на котором производился платеж

Формат XML-ответа:

<Response>
    <Retval></Retval>
    <Retdesc></Retdesc>
    <Retdata>
        <LMI_SYS_PAYMENT_ID></LMI_SYS_PAYMENT_ID>
        <Is3ds></Is3ds>
        <action></action>
        <PaReq></PaReq>
        <MD></MD>
        <ErrorMessage></ErrorMessage>
    </Retdata>

</Response>
Название Поле в XML Описание
Код выполнения запроса Retval 0 - успешное выполнение команды; 1 - Некорректная подпись (HASH); 2 – некорректные параметры; 3 – Карта данного типа не может быть спроцессирована; 4,5,6,7 – внутренняя ошибка; 8 - в процессе выполнения
Описание кода виполнения Retdesc
Внутренний номер платежа в системе PaySoft Retdata/LMI_SYS_PAYMENT_ID Номер принятого платежа в системе PaySoft.
Is3ds флаг вовлеченности карты в 3D-Secure (0 – карта не требует проверки 3DSecure; 1 – карта нуждается в проверке 3D-Secure).
action URL для перенаправления клиента. Отображается только при Retval = 0 и Retdata / Is3ds = 1
PaReq параметры запроса при 3D-Secure. Отображается только при Retval = 0 и Retdata / Is3ds = 1
MD параметры запроса при 3D-Secure. Отображается только при Retval = 0 и Retdata / Is3ds = 1
ErrorMessage дополнительная информация об ошибках

Если в ответ на paymentCreate было получено значение поля Retdata/Is3ds = 1, это означает, что карта требует проверки по технологии 3D-Secure. Для проведения такой проверки необходимо сформировать и отправить html-форму методом POST по указанному в поле Retdata/action адресу.

Внимание! Вы не можете проигнорировать тот факт, что карта вовлечена в 3D-Secure. Если в ответе на paymentCreate был получен Is3ds = 1, то вы не можете пропустить данный шаг (авторизацию карты по 3D-Secure) и сразу перейти к команде paymentConfirm.

Пример HTML формы, содержащий все необходимые поля:

<form method="POST" action="action">
    <input type="hidden" name="PaReq" value="%PaReq%">
    <input type="hidden" name="MD" value="%MD%">
    <input type="hidden" name="TermUrl" value="%TERMURL%">
</form>

Параметры html-формы:

• %ACTION% - значение поля Retdata/action из ответа на запрос paymentCreate

• %PaReq%- значение поля Retdata/PaReq из ответа на запрос paymentCreate

• %MD% - значение поля Retdata/MD из ответа на запрос paymentCreate

• %TERMURL% - URL адрес Вашей страницы, на которую вернется клиент после проведения проверки 3D-Secure. Может содержать GET-параметры.

После проведения проверки 3DSecure клиент будет перенаправлен на указанный в TermUrl адрес с помощью POST-запроса. Среди параметров этого запроса будут присутствовать PaRes и MD.

results matching ""

    No results matching ""