Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Для передачи зашифрованного блока данных о платеже оплаты с помощью токена нужно отправить запрос на сервер АПК Ассист методом HTTP POST (в кодировке UTF-8).Ассист в формате JSON (swagger описание: https://docs.assist.ru/swagger/). 

URL запроса для передачи зашифрованного блока данных о платеже:платежного токена

https://<SERVER_NAME>/pay/tokenpay.cfm ,

где <SERVER_NAME> - адрес сервера который предоставляется службой поддержки Ассист в Assist в процессе подключения.

Список параметров запроса:

Название

Обязательное поле

Принимаемые значения

Значение по умолчанию

Описание

Merchant_ID

Да

Число


Идентификатор предприятия в системе АПК Ассист

Login

Да

8 - 20 символов


Логин учетной записи в АПК Ассист (лат. буквы и цифры, символ _)

Password

Да

8 - 20 символов


Пароль учетной записи в АПК Ассист (лат. буквы и цифры)

OrderNumber

Да

128 символов


Номер заказа в системе расчетов предприятия.

OrderAmount

Да

Число, 15 цифр ( знаков, два знака после разделителя (допустимые разделители «.», «,»)


Сумма платежа в оригинальной валюте (например, 10.34)

OrderCurrency

Нет

3 символа

Валюта юр.лица или предприятия

Код валюты, в которой указана сумма платежа OrderAmount

OrderComment

Нет

256 4000 символов


Комментарий

Delay

Нет

0 – одностадийный механизм работы;
1- двустадийный механизм

0

Признак авторизации кредитной карты при двустадийном механизме работы

Note
titleВнимание!

При желании использовать двустадийный режим работы сначала следует проконсультироваться с сотрудниками службы поддержки (support@assist.ru).

Language

Нет

RU - русский,

EN - английский

Язык юр.лица или предприятия

Язык квитанции об оплате

ClientIP

Нет

Максимум 15 цифр, 4 разделителя «.»


IP адрес покупателя

TokenType

Нет

1 – Apple Pay;
2 – Google Pay;
3 – Samsung Pay;
5 – Assist;
6 - Mir Pay.

1

Идентификатор типа платежного токена.

Note

5 - платежный токен Assist используется для операций CIT COF

PaymentToken

НетДа

JSONПлатежный токен


Для типов 1-3 и 6 - платежный токен провайдера (Apple Pay,  Google Pay;  Samsung Pay, Mir Pay)

Для платежного токена Assist (тип 5) - {"Token":"<UUID>", "CustomerNumber":"<CustomerNumber>"}

Lastname

ДаНет

70 символов


Фамилия покупателя

Firstname

ДаНет

70 символов


Имя покупателя

Middlename

Нет

70 символов


Отчество покупателя

Email

ДаНет

128 символа


E-mail покупателя

Address

Нет

256 символов


Адрес покупателя

HomePhone

Нет

64 символа


Домашний телефон покупателя

WorkPhone

Нет

20 символов


Рабочий телефон покупателя

MobilePhone

Нет

20 символов


Мобильный телефон покупателя

Fax

Нет

20 символов

Факс покупателя

Country

Нет

3 символа


Код страны покупателя

State

Нет

3 символа


Код региона покупателя

City

Нет

70 символов


Город покупателя

Zip

Нет

25 символов


Индекс предприятия связи покупателя

URL_RETURN

Нет

255 символов


URL страницы, на которую должен вернуться покупатель после осуществления платежа в системе (должна быть активирована опция «Перейти на страницу магазина» в настройках мерчанта в Личном кабинете). В целях безопасности рекомендуется использовать протокол с шифрованием HTTPS.

URL_RETURN_OK

Нет

255 символов

Значение параметра URL_RETURN, а при его отсутствии – URL для возврата при успешной авторизации, указанный в Личном кабинете

URL страницы, куда должен вернуться покупатель после успешного осуществления платежа в системе АПК Ассист (должна быть активирована опция «Перейти на страницу магазина» в настройках мерчанта в Личном кабинете). В целях безопасности рекомендуется использовать протокол с шифрованием HTTPS.

URL_RETURN_NO

Нет

255 символов

Значение параметра URL_RETURN, а при его отсутствии – URL для возврата, указанный в Личном кабинете

URL страницы, куда должен вернуться покупатель после неуспешного осуществления платежа в системе АПК Ассист или при отсутствии ответа об окончательном статусе платежа (текущий статус "В процессе"), подробнее см. "Возврат покупателя на страницу интернет-магазина после покупки". Должна быть активирована опция «Возвращаться в магазин по URL для возврата» в Личном кабинете. В целях безопасности рекомендуется использовать протокол с шифрованием HTTPS.

isConvert

Нет

0 - не конвертировать в базовую валюту;
1 - не конвертировать при возможности;
2 - всегда конвертировать

1

Флаг конвертации валюты платежа в базовую валюту

ChallengeResponseNotificationUrl

Нет

255 символов


URL, на который отправляется результат прохождения 3ds и перенаправляется покупатель после Challenge.

Format

Нет

4 – SOAP
5 – JSON

5

Формат выдачи результатов

Signature

Нет

строка


Формируется строка, сшитая из следующих параметров заказа:

Merchant_ID;OrderNumber;OrderAmount;OrderCurrency, разделенных точкой с запятой.

На базе этой строки алгоритмом MD5 формируется дайджест.  Дайджест подписывается закрытым RSA ключом мерчанта. Длина ключа - 1024. Полученная байтовая последовательность является подписью магазина. Подпись передается нам в виде дополнительного параметра, закодированного в виде строки BASE64.

Warning

Внимание! Параметр необходим для того, чтобы обезопасить передаваемые данные от возможности их подмены злоумышленниками. Следует также включить настройку проверки кода или подписи в ЛК.

 

RecurringIndicator

Нет

1 –рекуррентный –рекуррентный платеж
0 - обычный платеж

0

Признак рекуррентного платежа

RecurringMinAmount

Нет/Да

Число, 15 цифр ( знаков, два знака после разделителя (допустимые разделители «.», «,»)


Минимальная сумма рекуррентных платежей.

Обязателен при RecurringIndicator = 1

RecurringMaxAmountRecurringMaxAmount

Нет/Да

Число, 15 цифр(знаков, два знака после разделителя (допустимые разделители «.», «,»)


Максимальная сумма рекуррентных платежей.

Обязателен при RecurringIndicator = 1

RecurringPeriod

Нет/Да

Число, 10 цифр


Периодичность рекуррентных платежей в днях.

Обязателен при RecurringIndicator = 1

RecurringMaxDate

Нет/Да

Строковое представление даты в формате DD.MM.YYYY


Дата окончания рекуррентных платежей.

Обязателен при RecurringIndicator = 1

Chequeitems

Нет/Да**

Строка в формате JSON

Позиции чека согласно документу «Работа с чеком».

GenerateReceipt

Нет

0 или 1

1

Разрешение формирования фискального чека. При значении параметра 0 формирование фискального чека запрещено для данного заказа.

Tax

Нет

10 символов

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

Идентификатор ставки налога

ReceiptLine

Нет

128 символов

Определяется настройкой предприятия "Шаблон строки чека по умолчанию" и используется в режиме без передачи позиций чека.

Текстовое описание позиции чека, если по чеку проводится одна единственная позиция.

FPMode

Нет

Число

Определяется настройкой предприятия "Признак способа расчета по умолчанию" и используется в режиме без передачи позиций чека.

Признак способа расчета.

TaxationSystem

Нет/Да*

Число

Из настроек предприятия или ККТ

Система налогообложения.

*Если предприятие использует несколько систем налогообложения, передача этого параметра становится обязательной.

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

Если в запросе передана структура ChequeItems (см. документ «Работа с чеком»), то формируется чек с количеством позиций по числу переданных в ChequeItems строк, в каждой позиции должны быть обязательно указаны параметры:

product и/или name;

price;

quantity;

amount;

Note

Для фискализации операции оплаты токеном в запросе могут передаваться дополнительные параметры для формирования корректного чека. Описание дополнительных параметров приведено в разделе "Режимы передачи данных чека".


Список параметров ответа:

Название

Значение

Параметры заказа

ordernumber

Номер заказа

billnumber

Уникальный номер заказа в системе АПК Ассист

testmode

Тестовый режим

ordercomment

Комментарий

orderamount

Оригинальная сумма заказа

ordercurrency

Оригинальная валюта заказа

firstname

Имя плательщика

lastname

Фамилия плательщика

middlename

Отчество плательщика

Email

Email плательщика

orderdate

Дата заказа по Гринвичу (GMT)

orderstate

Статус заказа

packetdate

Дата формирования запроса по Гринвичу (GMT)

signature

  • для типа подписи MD5 – пусто;
  • · для типа PGP – значение X, подписанное закрытым ключом АПК Ассист, закодированное в BASE64.

checkvalue

uppercase(md5(uppercase(md5(SALT) + md5(Х)))), где SALT – секретное слово; Х – результат строковой склейки параметров merchant_id, ordernumber, orderamount, ordercurrency, orderstate (без разделителей), + - строковая склейка

Параметры операции

billnumber

Расширенный формат billnumber

operationtype

Тип операции

operationstate

Состояние операции

amount

Сумма операции

currency

Валюта операции

ipaddress

IP-адрес плательщика

clientip

IP-адрес совершившего операцию

meantype_id

ID платежного средства

meantypename

Тип платежного средства

meansubtype

Подтип платежного средства

meannumber

Номер платежного средства

cardholder

Держатель платежного средства

issuebank

Название банка-эмитента

bankcountry

Страна банка-эмитента

responsecode

Код возврата

message

Сообщение о результате операции

customermessage

Сообщение о результате для покупателя

recommendation

Рекомендация

approvalcode

Код авторизации

protocoltypename

Протокол

processingname

Процессинг

operationdate

Дата и время операции (GMT)

authresult

Результат аворизации авторизации по 3DSecure 3D-Secure (Y - успешно, N - неуспешно, A - Attempt, U – неизвестно)

authrequired

Результат проверки вовлеченности карты (1 – вовлечена, 0 – не вовлечена, -1 – неизвестно, null – ошибка при определении вовлеченности)

slipno

Номер финансовой транзакции, отправляемый в процессинг

firstcode*1Первый код ошибки автоматизированных интерфейсовошибки 
secondcode*1Второй код ошибки автоматизированных интерфейсовошибки 
continueurl*2Адрес перехода на страницу аутентификации для покупателя

*Параметры выдаются только в случае проведения оплаты нетокенизированной картой для операций ECOM с переадресацией покупателя на страницу ввода CVC2 и, если необходимо, дополнительной аутентификацией 3DSecure. В этом случае параметры 1Параметры firstcode и secondcode принимают значения «3» и «115» соответственно при требовании ввода CVC2, а при необходимости дополнительной аутентификации 3D-Secure без ввода CVC2 - значения «0», также в этом случае отдается код ответа responsecode AS110.

2Параметр выдается только в том случае, если требуется ввод CVC2 или необходима дополнительная аутентификация 3D-Secure, при этом для продолжения оплаты следует переадресовать покупателя на страницу continueurl.


Warning

Внимание! В рамках одного заказа может быть проведено несколько операций (оплаты, подтверждения оплаты, отмены). Более того, в рамках одного заказа может быть несколько операций оплаты, если некоторые из них были неуспешными. Успешная операция оплаты заказа может быть только одна. В этих случаях в ответе на запрос о результатах операций по номеру заказа может быть несколько вложенных операций для одного номера заказа.

...

Code Block
languagexml
{"order":[
{
    "ordernumber":"26012015_4"
    ,"billnumber":"5899110210668265"
    ,"testmode":"0"
    ,"ordercomment":"тестовый платеж"
    ,"orderamount":"24.00"
    ,"ordercurrency":"RUB"
    ,"firstname":""
    ,"lastname":""
    ,"middlename":""
    ,"email":""
    ,"orderdate":"26.01.2015 17:25:39"
    ,"orderstate":"In Process"
    ,"fraud_state":""
    ,"fraud_reason":""
    ,"checkvalue":"85C6C974AADC1CADFCFD195730ED090B"
    ,"operations":[
{"billnumber":"5899110210668265.1"
,"operationtype":"100"
,"operationstate":"In Process"
,"amount":"24.00"
,"currency":"RUB"
,"clientip":"10.20.10.85"
,"ipaddress":"0.0.0.0"
,"meantype_id":"61"
,"meantypename":"SamsungPay"
,"meansubtype":""
,"meannumber":""
,"cardholder":""
,"issuebank":"UNKNOWN"
,"bankcountry":"UNKNOWN"
,"responsecode":"AS200"
,"message":""
,"customermessage":""
,"recommendation":""
,"approvalcode":""
,"protocoltypename":"NET"
,"processingname":""
,"operationdate":"26.01.2015 17:25:39"
,"authresult":""
,"authrequired":""
,"slipno":""}
]
}
],
"packetdate":"26.01.2015 18:16:19"
}

...

Code Block
languagexml
{"order":[
{
    "ordernumber":"2019.07.01-1226",
    "billnumber":"516009019047110",
    "testmode":"0",
    "ordercomment":"Test 4 mode",
    "orderamount":"101.45",
    "ordercurrency":"RUB",
    "firstname":"",
    "lastname":"",
    "middlename":"",
    "email":"",
    "orderdate":"01.07.2019 15:31:16",
    "orderstate":"In Process",
    "fraud_state":""
    "fraud_reason":""
    "checkvalue":"85C6C974AADC1CADFCFD195730ED090B"
    "operations":[
{"billnumber":"516009019047110.1",
"operationtype":"100",
"operationstate":"New",
"amount":"101.45",
"currency":"RUB",
"clientip":"10.20.10.66",
"ipaddress":"127.0.0.1",
"meantype_id":"1",
"meantypename":"VISA",
"meansubtype":"Classic",
"meannumber":"411111****1111",
"cardholder":"N/A",
"cardexpirationdate":"12/24",
"issuebank":"New Assist Bank",
"bankcountry":"Россия",
"responsecode":"AS300",
"message":"",
"customermessage":"", "
"recommendation":"",
"approvalcode":"",
"protocoltypename":"NET",
"processingname":"UCS",
"operationdate":"01.07.2019 15:31:18",
"authresult":"",
"authrequired":"",
"slipno":""}
]
}
],
"packetdate":"26.01.2015 18:16:19",
"firstcode":"3",
"secondcode":"115",
"continueurl":"https://<SERVER_NAME>/pay/pay.cfm?CFSID=LiRNMzMiSFc3Wy0nWFdaQCJYTiQgCg%3D%3D"
}

В случае успешной оплаты код возврата responsecode принимает значение AS000.

В случае неуспешной оплаты responsecode принимает значения AS100-AS998 (кроме специального кода AS110, если необходима авторизация по 3-D Secure).

Если запрос на оплату не может быть обработан, в результате вернутся ненулевые значения параметров firstcode, secondcode.

НаверхНазад