Pay
https://{Environment}.payture.com/api/PayКоманда Pay используется для выполнения платежа по одностадийной схеме.
Результатом обработки запроса является списание денежных средств с карты Покупателя. Списанные средства могут быть полностью или частично возвращены на карту Покупателя при помощи команды Refund.
Запрос
curl https://sandbox3.payture.com/api/Pay \
-X POST \
-H "Content-Type: application/x-www-form-urlencoded" \
-d Key=Merchant \
-d Amount=12480 \
-d OrderId=5f63838d-fb03-00c6-c890-c67cfc1c54ea \
--data-urlencode "PayInfo=PAN=4111111111100031;EMonth=12;EYear=22;CardHolder=Ivan Ivanov;SecureCode=123;OrderId=5f63838d-fb03-00c6-c890-c67cfc1c54ea;Amount=12480" \
--data-urlencode "CustomFields=IP=241.22.197.12;Product=Ticket"В запросах наименования параметров чувствительны к регистру
| Параметр | Описание | Формат |
|---|---|---|
| Key | Наименование платежного Терминала Предоставляется с параметрами тестового/рабочего доступа | String Mandatory |
| OrderId | Уникальный идентификатор платежа в системе Продавца Рекомендуемый формат: GUID/UUID или Alphanumeric. Другие форматы могут вызвать сбои в работе банковских сервисов | String [1..50] Mandatory |
| Amount | Сумма платежа в копейках (или другая минимальная единица валюты терминала) Цифры, не содержащие десятичных или других разделителей | Integer Mandatory |
| PayInfo | Параметры для совершения транзакции Url Encoded строка, содержащая пары ключей и их значений, разделённые символом «;» (точка с запятой). Ключи и значения разделены символом «=» (равно) | String Mandatory |
| CustomFields | Дополнительные поля транзакции Url Encoded строка, содержащая пары ключей и их значений, разделённые символом «;» (точка с запятой). Ключи и значения разделены символом «=» (равно) | String Optional |
| Cheque | Информация о чеке в формате JSON, закодированная в Base64 | String Optional |
Состав параметра PayInfo
Внимание! Параметры OrderId и Amount передаются дважды в одном запросе: в основных параметрах запроса и в параметре PayInfo.
| Параметр | Описание | Формат |
|---|---|---|
| PAN | Номер карты Цифры без пробелов | String [13..19] Mandatory |
| EMonth | Месяц истечения срока действия карты 2 цифры | Integer Mandatory |
| EYear | Год истечения срока действия карты Последние 2 цифры года | Integer Mandatory |
| OrderId | Уникальный идентификатор платежа в системе Продавца Рекомендуемый формат: GUID/UUID или Alphanumeric. Другие форматы могут вызвать сбои в работе банковских сервисов | String [1..50] Mandatory |
| Amount | Сумма платежа в копейках (или другая минимальная единица валюты терминала) Цифры, не содержащие десятичных или других разделителей | Integer Mandatory |
| SecureCode | CVC2/CVV2 код 3 или 4 цифры. Обязательность передачи зависит от типа платежа и конфигурации платежного Терминала | Integer Optional |
| CardHolder | Фамилия и имя держателя карты Только латинские буквы и пробел | String [1..30] Optional |
Пример параметра PayInfo (decoded):
PAN=4111111111100031;
EMonth=12;
EYear=22;
CardHolder=Ivan Ivanov;
SecureCode=123;
OrderId=5f63838d-fb03-00c6-c890-c67cfc1c54ea;
Amount=12480Пример возможных ключей параметра CustomFields
| Параметр | Описание | Формат |
|---|---|---|
| IP | IP адрес Покупателя IPv4 или IPv6 | String Optional |
| Description | Дополнительное описание платежа | String Optional |
Пример параметра CustomFields (decoded):
IP=241.22.197.12;
Description=MyTestTransactionОтвет
XML строка с элементом Pay
Примеры ответов
<Pay OrderId="5f63838d-fb03-00c6-c890-c67cfc1c54ea" Key="Merchant" Success="True" Amount="12480"/>| Параметр | Описание | Формат |
|---|---|---|
| Success | Признак успешности операции. Принимает значения:True — операция успешнаFalse — операция неуспешна3DS — необходима аутентификация 3‑D Secure | String Mandatory |
| OrderId | Идентификатор платежа в системе Продавца Соответствует переданному в запросе | String [1..50] Mandatory |
| Key | Наименование платежного Терминала Соответствует переданному в запросе | String Mandatory |
| Amount | Сумма платежа в копейках (или другая минимальная единица валюты терминала) Передается, если «Success=True» или «Success=3DS». Соответствует переданному в запросе | Integer Optional |
| ACSUrl | Адрес сервера аутентификации 3-D Secure Передается, если «Success=3DS» | String Optional |
| PaReq | Запрос на аутентификацию 3-D Secure Передается, если «Success=3DS» | String Optional |
| ThreeDSKey | Уникальный идентификатор транзакции (MD) Передается, если «Success=3DS» | String Optional |
| ThreeDSVersion | Версия протокола 3-D Secure: 1.0 — первая версия 2.1 — вторая версия Передается, если «Success=3DS» | String Optional |
| FinalTerminal | Конечный Терминал, на котором был выполнен платеж Передается, если было перенаправление на другой Терминал | String Optional |
| AddInfo | Дополнительные параметры транзакции, которые могут быть переданы в ответе платежного шлюза по согласованию со службой поддержки Payture Описание формата и возможных параметров доступно здесь | Object Optional |
| ErrCode | Код ошибки. См. коды ошибок Передается, если «Success=False» | String Optional |
Payture API
Программный интерфейс Payture API является производительным и удобным решением для автоматизированного выполнения операций электронной коммерции. Платежный шлюз Payture гарантирует высокую надежность и защищенность…
Pay3DS
Команда Pay3DS предназначена для завершения списания средств с платежной карты, защищенной 3-D Secure. Выполняется после запроса Pay и получения результатов 3‑D Secure аутентификации от банка-эмитента.
