Download OpenAPI specification:Download
Массовые выплаты помогают бизнесу автоматизировать расчеты с физлицами, например, с клиентами или исполнителями. Сервис решает разные задачи: заплатить за услуги внештатным исполнителям, выдать вознаграждение за вещь или заем. Отмены выплат не предусмотрены.
Термин | Определение |
---|---|
Клиент | Физлицо, которому бизнес выплачивает деньги на карту или счет |
Мерчант | Бизнес, который выплачивает физлицам деньги за оказанную услугу или товар со своего расчетного счета юрлица |
Тинькофф Касса | Сервис, помогающий проводить выплату клиенту-физлицу |
Эмитент | Банк, выпустивший карту клиента-физлица |
А2С | Массовые выплаты физлицам |
PCI DSS | Международный стандарт безопасности, созданный для защиты данных банковских карт |
В целях безопасности запросы на выплаты нужно подписывать электронной цифровой подписью. Можете выбрать удобный для себя вариант – КриптоПро или RSA.
Для формирования подписи запроса необходимо:
[{"TerminalKey","TinkoffBankTest"},{"PaymentId","20150"}]
[{"PaymentId","20150"},{"TerminalKey","TinkoffBankTest"}]
20150TinkoffBankTest
*Инструкция по получению RSA-ключа доступна по ссылке.
Ниже представлены примеры реализации работы с библиотекой:
Язык | Ссылка |
---|---|
Java | https://acdn.tinkoff.ru/static/documents/rsa-crypto-lib-java-mapi.zip |
Для формирования подписи запроса необходимо:
Собрать массив всех передаваемых параметров в виде пар Ключ-Значение (кроме параметра DigestValue, SignatureValue, X509SerialNumber). Блоки (например, DATA) также не учитываются. Например:
[{"TerminalKey","TinkoffBankTest"},{"PaymentId","20150"}]
Сортировать по Ключам:
[{"PaymentId","20150"},{"TerminalKey","TinkoffBankTest"}]
Конкатенировать значения:
20150TinkoffBankTest
Вычислить хэш-сумму по ГОСТ Р 34.11-2012 256 и получить результат в бинарном виде
Закодировать получившееся в пункте 4 бинарное значение в Base64 и записать значение в DigestValue
Подписать получившееся в пункте 4 бинарное значение по ГОСТ Р 34.11-2012 256, закодировать результат в BASE64 и записать в SignatureValue
Инструкция по получению сертификата доступна по ссылке.
Ниже представлены примеры реализации работы с библиотекой КриптоПро (CryptoPro)
Язык | Ссылка | Версия Крипто Про |
---|---|---|
С# | Поддержка 2012 ГОСТ | КриптоПРО CSP |
Java | Поддержка 2012 ГОСТ | КриптоПРО JCP |
PHP | Поддержка 2012 ГОСТ | КриптоПРО CSP |
Подпись с помощью токена возможно использовать только при работе с методами выплат через СБП.
Для генерации подписи используется пароль (параметр Password) от терминала A2C.
В массив нужно добавить только параметры корневого объекта. Вложенные объекты и массивы не участвуют в расчете токена.
[{"TerminalKey","TestB"}, {"PaymentId","20150"}]
[{"TerminalKey","TestB"}, {"PaymentId","20150"}, {"Password","Dfsfh56dgKl"}]
[{"Password", "Dfsfh56dgKl"}, {"PaymentId","20150"}, {"TerminalKey","TestB"}]
Dfsfh56dgKl20150TestB
Добавляет новый сертификат для терминала для подписи запросов. Для терминала может быть загружено несколько сертификатов. Запрос AddCertificate должен быть подписан с помощью текущего сертификата, у которого еще не истек срок действия.
Сертификат должен соответствовать требованиям:
TerminalKey required | string Идентификатор терминала. Выдается Мерчанту Тинькофф Кассой |
Certificate required | object Сертификат в формате .cer. |
DigestValue required | string Значение хеша в Base64 |
SignatureValue required | string Значение подписи в Base64 |
X509SerialNumber required | string Серийный номер сертификата, которым подписан запрос. Можно найти в составе сертификата или на сайте, вставив открытую часть сертификата |
{- "Success": "true,",
- "ErrorCode": "0",
- "TerminalKey": "TinkoffBankTest",
- "X509SerialNumber": "2613832945",
- "StartDate": "14.03.2022 15:53:55",
- "ExpirationDate": "14.03.2024 15:53:55"
}
Метод позволяет активировать или заблокировать выбранный сертификат без обращения в поддержку.
Запрос UpdateCertificateStatus должен быть подписан с помощью текущего сертификата, у которого еще не истек срок действия
TerminalKey required | string Идентификатор терминала. Выдается Мерчанту Тинькофф Кассой |
TargetX509SerialNumber required | string Серийный номер сертификата, для которого необходимо обновить статус. Можно найти в составе сертификата или на сайте, вставив открытую часть сертификата |
SetStatus required | string Новый статус сертификата. |
DigestValue required | string Значение хеша в Base64 |
SignatureValue required | string Значение подписи в Base64 |
X509SerialNumber required | string Серийный номер сертификата, которым подписан запрос. Можно найти в составе сертификата или на сайте, вставив открытую часть сертификата |
{- "TerminalKey": "TinkoffBankTest",
- "TargetX509SerialNumber": "2613832945",
- "SetStatus": "Blocked",
- "DigestValue": "qfeohMmrsEvr4QPB8CeZETb+W6VDEGnMrf+oVjvSaMU=",
- "SignatureValue": "rNTloWBbTsid1n9B1ANZ9/VasWJyg6jfiMeI12ERBSlOnzy6YFqMaa5nRb9ZrK9wbKimIBD70v8j8eP/tKn7/g==",
- "X509SerialNumber": 2613832945
}
{- "TerminalKey": "TinkoffBankTest",
- "Success": "true,",
- "ErrorCode": "0"
}
Используйте, чтобы проверять, сколько средств на счете бизнеса заморожено, сколько доступно и общий остаток
Основным параметром является Available, который считается по формуле:
Available(доступно) = Total(всего) - Hold(заблокировано) + Over(овердрафт)
Значение баланса может не совпадать с балансом в ЛК, если есть операции в обработке.
TerminalKey required | string Идентификатор терминала. Выдается Мерчанту Тинькофф Кассой |
DigestValue required | string Значение хеша в Base64 |
SignatureValue required | string Значение подписи в Base64 |
X509SerialNumber required | string Серийный номер сертификата |
{- "TerminalKey": "TinkoffBankTest",
- "DigestValue": "qfeohMmrsEvr4QPB8CeZETb+W6VDEGnMrf+oVjvSaMU=",
- "SignatureValue": "rNTloWBbTsid1n9B1ANZ9/VasWJyg6jfiMeI12ERBSlOnzy6YFqMaa5nRb9ZrK9wbKimIBD70v8j8eP/tKn7/g==",
- "X509SerialNumber": "2613832945"
}
{- "TerminalKey": "TinkoffBankTest",
- "Success": true,
- "ErrorCode": 0,
- "Total": 223344,
- "Hold": 0,
- "Available": 1014,
- "Token": "f2fdd7fec8225872590e1558b7ea258c75df8f300d808006c41ab540dd7514d9"
}
Для проведения выплат, необходимо сохранять данные банковской карты, чтобы клиенту не приходилось заново их вводить. Безопасность нашей платежной формы соответствует стандарту PCI DSS.
Описание статусов:
Данная схема позволяет использовать вашу форму привязки (при наличии сертификации PCI DSS). В процессе привязки создается идентификатор карты CardId, который привязывается к параметру CustomerKey.
Описание статусов:
Регистрирует клиента в связке с терминалом
TerminalKey required | string Идентификатор терминала, выдается Мерчанту Тинькофф Кассой |
CustomerKey required | string Идентификатор клиента в системе Мерчанта |
string Email клиента | |
Phone | string Номер мобильного телефона клиента |
DigestValue required | string Значение хеша в Base64 |
SignatureValue required | string Значение подписи в Base64 |
X509SerialNumber required | string Серийный номер сертификата |
{- "TerminalKey": "TinkoffBankTest",
- "CustomerKey": "TestCustomer20",
- "Email": "autotest@test.ru",
- "Phone": 71234567890,
- "DigestValue": "qfeohMmrsEvr4QPB8CeZETb+W6VDEGnMrf+oVjvSaMU=",
- "SignatureValue": "rNTloWBbTsid1n9B1ANZ9/VasWJyg6jfiMeI12ERBSlOnzy6YFqMaa5nRb9ZrK9wbKimIBD70v8j8eP/tKn7/g==",
- "X509SerialNumber": "2613832945"
}
{- "TerminalKey": "TinkoffBankTest",
- "CustomerKey": "TestCustomer20",
- "ErrorCode": "0",
- "Success": true
}
Возвращает данные клиента, сохраненные в связке с терминалом
TerminalKey required | string Идентификатор терминала. Выдается Мерчанту Тинькофф Кассой |
CustomerKey required | string Идентификатор клиента в системе Мерчанта |
DigestValue required | string Значение хеша в Base64 |
SignatureValue required | string Значение подписи в Base64 |
X509SerialNumber required | string Серийный номер сертификата |
{- "TerminalKey": "TinkoffBankTest",
- "CustomerKey": "TestCustomer20",
- "DigestValue": "qfeohMmrsEvr4QPB8CeZETb+W6VDEGnMrf+oVjvSaMU=",
- "SignatureValue": "rNTloWBbTsid1n9B1ANZ9/VasWJyg6jfiMeI12ERBSlOnzy6YFqMaa5nRb9ZrK9wbKimIBD70v8j8eP/tKn7/g==",
- "X509SerialNumber": "2613832945"
}
{- "TerminalKey": "TinkoffBankTest",
- "CustomerKey": "TestCustomer20",
- "ErrorCode": "0",
- "Success": true
}
Удаляет сохраненные данные клиента
TerminalKey required | string Идентификатор терминала. Выдается Мерчанту Тинькофф Кассой |
CustomerKey required | string Идентификатор клиента в системе Мерчанта |
DigestValue required | string Значение хеша в Base64 |
SignatureValue required | string Значение подписи в Base64 |
X509SerialNumber required | string Серийный номер сертификата |
{- "TerminalKey": "TinkoffBankTest",
- "CustomerKey": "TestCustomer20",
- "DigestValue": "qfeohMmrsEvr4QPB8CeZETb+W6VDEGnMrf+oVjvSaMU=",
- "SignatureValue": "rNTloWBbTsid1n9B1ANZ9/VasWJyg6jfiMeI12ERBSlOnzy6YFqMaa5nRb9ZrK9wbKimIBD70v8j8eP/tKn7/g==",
- "X509SerialNumber": "2613832945"
}
{- "TerminalKey": "TinkoffBankTest",
- "CustomerKey": "TestCustomer20",
- "ErrorCode": "0",
- "Success": true
}
Возвращает список всех привязанных карт клиента, включая удаленные. Не возвращает список счетов, привязанных по номеру телефона через СБП
TerminalKey required | string Идентификатор терминала. Выдается Мерчанту Тинькофф Кассой |
CustomerKey required | string Идентификатор клиента в системе Мерчанта |
DigestValue required | string Значение хеша в Base64 |
SignatureValue required | string Значение подписи в Base64 |
X509SerialNumber required | string Серийный номер сертификата |
{- "TerminalKey": "TinkoffBankTest",
- "CustomerKey": "TestCustomer20",
- "DigestValue": "qfeohMmrsEvr4QPB8CeZETb+W6VDEGnMrf+oVjvSaMU=",
- "SignatureValue": "rNTloWBbTsid1n9B1ANZ9/VasWJyg6jfiMeI12ERBSlOnzy6YFqMaa5nRb9ZrK9wbKimIBD70v8j8eP/tKn7/g==",
- "X509SerialNumber": "2613832945"
}
{- "Pan": "532130******5598",
- "CardId": "67321574",
- "Status": "A",
- "RebillId": "12345566",
- "CardType": 0,
- "ExpDate": 423
}
Используйте разные сценарии работы с картами: проверка, привязка, удаление
Сохраняет карту клиента. В случае успешной привязки переадресует клиента на Success Add Card URL, а в противном случае на Fail Add Card URL
TerminalKey required | string Идентификатор терминала. Выдается Мерчанту Тинькофф Кассой |
CustomerKey required | string Идентификатор клиента в системе Мерчанта |
CheckType | string Если CheckType не передается, автоматически проставляется значение NO. |
ResidentState | boolean Признак резидентности добавляемой карты. Возможные значения:
|
DigestValue required | string Значение хеша в Base64 |
SignatureValue required | string Значение подписи в Base64 |
X509SerialNumber required | string Серийный номер сертификата |
{- "TerminalKey": "TinkoffBankTest",
- "CustomerKey": "TestCustomer20",
- "DigestValue": "qfeohMmrsEvr4QPB8CeZETb+W6VDEGnMrf+oVjvSaMU=",
- "SignatureValue": "rNTloWBbTsid1n9B1ANZ9/VasWJyg6jfiMeI12ERBSlOnzy6YFqMaa5nRb9ZrK9wbKimIBD70v8j8eP/tKn7/g==",
- "X509SerialNumber": "1650916637"
}
{- "PaymentId": 4243624571,
- "Success": true,
- "ErrorCode": "0",
- "TerminalKey": "TinkoffBankTest",
- "CustomerKey": "TestCustomer20",
- "RequestKey": "8de92934-26c9-474c-a4ce-424f2021d24d"
}
Для Мерчантов с PCI DSS
Проверяет поддерживаемую версию 3DS протокола по карточным данным из входящих параметров. Данный метод должен вызываться для операций с Route=ACQ
Для 3DS v2.1: Возможно в ответе получение данных для прохождения дополнительного метода “3DS Method”, который позволяет эмитенту собрать данные браузера клиента – это может быть полезно при принятии решения в пользу Frictionless Flow (аутентификация клиента без редиректа на страницу ACS)
TerminalKey required | string Идентификатор терминала. Выдается Мерчанту Тинькофф Кассой |
PaymentId required | number Уникальный идентификатор транзакции в системе Тинькофф Кассы |
CardData required | string Зашифрованные данные карты (используется только для Мерчантов с PCI DSS)
Открытый ключ генерируется Тинькофф Кассой. Для получения открытого ключа для шифрования |
Token required | string Подпись запроса |
{- "TerminalKey": "TinkoffBankTest",
- "PaymentId": 13223312,
- "CardData": "b3tSlUYwsf3Erdv5ReB7WpWK3/NBWLIwDiSLjQG0cBxA0Mgs7ALd7edi0RbVlORsyGZEUJSlRynQ9zLMyHYzWP3z2sQYGA vzOqufoVPe2AozhW3pZV+dN5s7oGcpXd39NDC0Ma/Zw6oa3dJR0Zh8QYjv/sG0zUllMjXl5aHgTpxk37q6OxUakxuG7euhvSN71JqxHs NEuoJELAqLq7U+3tuh9AjTuiBpmEH99maK9e7gnVXgZd1Nk8vachs97xj9cL/023qYMk7CMjldBfG4VOsYVqcHsKfbbJJ8CZXIJgmXhCY ns1hmRD/kf3OhEZr038LghC7Iio0yxHYMhZyJoQ==",
- "Token": "daab60d01863965284f1db558ff37534715afd0f1e726ca9611b1f90720ad03b"
}
{- "Version": "2.1.0",
- "PaymentSystem": "mir",
- "Success": true,
- "ErrorCode": 0,
- "Message": "OK"
}
Для Мерчантов с PCI DSS
Если в ответе метода был получен параметр ThreeDSMethodURL, то необходимо отправить запрос на стороне браузера по полученному ThreeDSMethodURL. Это необходимо для сбора информации ACS-ом о девайсе клиента. Отправка запроса 3DS Method в браузере должна происходить в скрытом frame.
Время ожидания выполнения метода не более 10 секунд
threeDSMethodData required | string JSON с параметрами threeDSMethodNotificationURL, threeDSServerTransID, закодированный в формат base-64
|
<body onload="document.form.submit()"> <form name="form" action="{ThreeDSMethodURL}" method="post"> <input type="hidden" name="threeDSMethodData" value="eyJ0aHJlZURTU2VydmVyVHJhbnNJRCI6IjU2ZTcxMmE1LTE5MGEtNDU4OC05MWJjLWUwODYyNmU3N2M0NCIsInRocmVlRFNNZXRob2ROb3RpZmljYXRpb25VUkwiOiJodHRwczovL3Jlc3QtYXBpLXRlc3QudGlua29mZi5ydS92Mi9Db21wbGV0ZTNEU01ldGhvZHYyIn0"> </form> </body>
Для Мерчантов с PCI DSS
Добавляет привязанную карту к клиенту
В случае успешной привязки переадресует клиента на Success Add Card URL, в противном случае - на Fail Add Card URL
Для 3DS v1.0: Метод необходимо вызывать после AddCard. Если в ответе метода AttachCard возвращается статус 3DS_CHECKING, Мерчанту необходимо сформировать запрос на URL ACS банка, выпустившего карту (в ответе параметр ACSUrl)
Для 3DS v2.1: Перед вызовом метода должен быть вызван /v2/check3dsVersion и выполнен 3DS Method, который является обязательным при прохождении 3DS по протоколу версии 2.1.
Для 3DS v2.1 в HttpHeaders запроса обязательно должны присутствовать заголовки “UserAgent” и “Accept”
Если в ответе метода AttachCard возвращается статус 3DS_CHECKING, Мерчанту необходимо сформировать запрос на URL ACS банка, выпустившего карту (в ответе параметр ACSUrl)
TerminalKey required | string Идентификатор терминала. Выдается Мерчанту Тинькофф Кассой |
RequestKey required | string Идентификатор запроса на привязку карты. Получить его можно в ответе метода AddCard |
CardData required | string Зашифрованные данные карты (используется только для Мерчантов с PCI DSS)
Открытый ключ генерируется Тинькофф Кассой. Для получения открытого ключа для шифрования |
DigestValue required | string Значение хеша в Base64 |
SignatureValue required | string Значение подписи в Base64 |
X509SerialNumber required | string Серийный номер сертификата |
DATA | object В объекте передаются дополнительные параметры в формате
Если ключи или значения содержат в себе специальные символы, то получившееся значение должно быть закодировано функцией urlencode. Максимальная длина для каждого передаваемого параметра:
Максимальное количество пар «ключ-значение» не может превышать 20. |
{- "TerminalKey": "TinkoffBankTest",
- "CardData": "b3tSlUYwsf3Erdv5ReB7WpWK3/NBWLIwDiSLjQG0cBxA0Mgs7ALd7edi0RbVlORsyGZEUJSl-RynQ9zLMyHYzWP3z2sQYGAvzOqufoVPe2AozhW3pZV+dN5s7oG-cpXd39NDC0Ma/Zw6oa3dJR0Zh8QYjv/sG0zUllMjXl5aHgTpxk37q6OxUakxuG7euhvSN71JqxHsNEu-oJELAqLq7U+3tuh9AjTuiBpmEH99maK9e7gnVXgZd1Nk8vachs97xj9cL/023qYMk7CMjldBfG4VOsYVqcH-sKfbbJJ8CZXIJgmXhCYns1hmRD/kf3OhEZr038LghC7Iio0yxHYMhZyJoQ==",
- "RequestKey": "3206b55f-83a2-486f-9da0-693dfd2af9b3",
- "DigestValue": "qfeohMmrsEvr4QPB8CeZETb+W6VDEGnMrf+oVjvSaMU=",
- "SignatureValue": "rNTloWBbTsid1n9B1ANZ9/VasWJyg6jfiMeI12ERBSlOnzy6YFqMaa5nRb9ZrK9wbKimIBD70v8j8eP/tKn7/g==",
- "X509SerialNumber": "2613832945"
}
{- "PaymentId": 4243624571,
- "Success": true,
- "ErrorCode": "0",
- "TerminalKey": "TinkoffBankTest",
- "CustomerKey": "TestCustomer20",
- "RequestKey": "8de92934-26c9-474c-a4ce-424f2021d24d"
}
Для Мерчантов с PCI DSS
Для 3DS v1.0: ACSUrl возвращается в ответе метода AttachCard. Если в ответе метода AttachCard возвращается статус 3DS_CHECKING, Мерчанту необходимо сформировать запрос на URL ACS банка, выпустившего карту (в ответе метода /AttachCard параметр ACSUrl)
Для 3DS v2.1: Если в ответе метода AttachCard возвращается статус 3DS_CHECKING, Мерчанту необходимо сформировать запрос на URL ACS банка, выпустившего карту (в ответе параметр ACSUrl)
Компонент ACS использует пары сообщений CReq и CRes для выполнения Проверки (Challenge). В ответ на полученное сообщение CReq компонент ACS формирует сообщение CRes, которое запрашивает держателя карты ввести данные для аутентификации
Формат ответа: CRes, полученный по NotificationUrl из запроса AttachCard
При успешном результате прохождения 3-D Secure подтверждается инициированный платеж с помощью методов Submit3DSAuthorization или Submit3DSAuthorizationV2 в зависимости от версии 3DS.
URL: ACSUrl (возвращается в ответе метода AttachCard)
MD required | string Уникальный идентификатор транзакции в системе Банка (возвращается в ответе на AttachCard) |
PaReq required | string Результат аутентификации 3-D Secure (возвращается в ответе на AttachCard) |
TermUrl required | string Адрес перенаправления после аутентификации 3-D Secure (URL обработчик на стороне Мерчанта, принимающий результаты прохождения 3-D Secure) |
<body onload="document.form.submit()" > <form name="form" action="{ACSUrl}" method="post" > <input type="hidden" name="TermUrl" value="{TermUrl}" > <input type="hidden" name="MD" value="{MD}" > <input type="hidden" name="PaReq" value="{PaReq}" > </form> </body>
{- "cres": "FwlGfSwmRARfDXsgt1PBvbtYTIMY2l2SThPEeei6aFwlGfSwmRARfDXsgt1PBvbtYTIMY2l2SThPEeei6aGIdXfZ3psSfuKZt3O35yCVpfAbYs8AmIdIHQmJyskyNxYZyGIdXfZ3psSfuKZt3O35yCVpNkQwzuH68WlB9oiEnt6NdGaegzJ6ljDlKAl7tvQNCPw2FjDWbhHlxj34ut0hhivaJBNHSmvumv7sndTpA7AzxJYNUhkp67fG411fAbYs8AmIdIHQmJyskyNxYZy"
}
Удаляет карту, ранее привязанную к клиенту
TerminalKey required | string Идентификатор терминала |
CardId required | string Идентификатор карты в системе Тинькофф Кассы |
CustomerKey required | string Идентификатор клиента в системе Мерчанта |
DigestValue required | string Значение хеша в Base64 |
SignatureValue required | string Значение подписи в Base64 |
X509SerialNumber required | string Серийный номер сертификата |
{- "TerminalKey": "TinkoffBankTest",
- "CardId": "67321574",
- "CustomerKey": "TestCustomer10",
- "DigestValue": "qfeohMmrsEvr4QPB8CeZETb+W6VDEGnMrf+oVjvSaMU=",
- "SignatureValue": "rNTloWBbTsid1n9B1ANZ9/VasWJyg6jfiMeI12ERBSlOnzy6YFqMaa5nRb9ZrK9wbKimIBD70v8j8eP/tKn7/g==",
- "X509SerialNumber": "2613832945"
}
{- "TerminalKey": "TinkoffBankTest",
- "CardId": "67321574",
- "CustomerKey": "TestCustomer10",
- "Status": "D",
- "Success": true,
- "ErrorCode": 0,
- "Message": "OK",
- "Details": "None"
}
Получайте уведомления о статусе выполнения метода привязки карты AddCard (успех/неуспех)
Результат привязки карты высылается на адрес Notification URL POST-запросом. При использовании формы привязки карты на стороне Тинькофф Кассы нотификация отправляется на сайт Мерчанта на адрес Notification URL синхронно и ожидает ответа в течение 10 секунд. После получения ответа или неполучения его за заданное время сервис переадресует Клиента на Success AddCard URL или Fail AddCard URL в зависимости от результата привязки карты.
Если в NotificationURL используются порты, допустимо использование порта 443 (HTTPS). Актуальный список внешних сетей, используемых Тинькофф, для отправки нотификаций:
Чтобы нотификации работали корректно, добавьте эти сети в исключения сетевых фильтров или других видов защиты, которыми пользуетесь
URL: Notification URL
Наименование | Тип | Описание |
---|---|---|
TerminalKey | String | Идентификатор терминала, выдается Мерчанту Тинькофф Кассой |
CustomerKey | String | Идентификатор клиента в системе Мерчанта |
RequestKey | String | Идентификатор запроса на привязку карты |
Success | bool | Успешность прохождения запроса |
Status | String | Статус привязки |
PaymentId | String | Уникальный идентификатор транзакции в системе Тинькофф Кассы |
ErrorCode | String | Код ошибки. «0» в случае успеха |
CardId | Number | Идентификатор привязанной карты |
Pan | String | Маскированный номер карты |
ExpDate | String | Срок действия карты |
NotificationType | String | Тип нотификации, всегда константа «LINKCARD» |
RebillId | String | Идентификатор рекуррентного платежа |
Token | String | Подпись запроса. Формируется по такому же принципу, как и в случае запросов в Тинькофф Кассу |
Статусы привязок, по которым приходят http(s)-нотификации
Status | Описание |
---|---|
COMPLETED | Карта успешно привязана |
REJECTED | Привязка карты неуспешна |
Пример http(s)-нотификации:
{"TerminalKey":"TinkoffBankTest",
"CustomerKey":"5b718a19-2abe-1147-a7d9-b43b198ceee3",
"RequestKey":"acdad9d1-1847-4bdcb743-db86d75253f8",
"Success":true,
"Status":"COMPLETED",
"PaymentId":"700000198023",
"ErrorCode":"0",
"CardId":70000000707,
"Pan":"532130******1359",
"ExpDate":"1122",
"NotificationType":"LINKCARD",
"RebillId":"700000004090",
"Token":"f2fdd7fec8225872590e1558b7ea258c75df8f300d808006c41ab540dd7514d9"
}
Для успешной обработки нотификации Мерчанту необходимо вернуть ответ HTTP CODE = 200 и с телом сообщения: OK (без тегов и заглавными английскими буквами).
Если ответ «OK» не получен, нотификация считается неуспешной, и сервис будет повторно отправлять данную нотификацию раз в час в течение 24 часов.
Если нотификация за это время не доставлена, она будет сложена в архив.
PHP. Пример ответа на http(s)-нотификацию
<?php echo «OK»;?>
Java. Пример ответа на http(s)-нотификацию
@POST
@Path("/ok")
public Response NotifyResponse() {
return Response.status(200).entity("OK").build();
}
Уведомляет об успешных/ошибочных выполнениях привязок счета по номеру телефона получателя. Нотификация отправляется по http(s)*
*Отправка нотификаций о привязке счета по номеру телефона выполняется аналогично Нотификаций о привязке карты
URL: Notification URL
Наименование | Тип | Обязательность | Описание |
---|---|---|---|
TerminalKey | String | Да | Идентификатор терминала, выдается Мерчанту Тинькофф Кассой |
CustomerKey | String | Да | Идентификатор клиента в системе Мерчанта |
RequestKey | String | Да | Идентификатор запроса на привязку карты |
Success | bool | Да | Успешность прохождения запроса |
Status | String | Да | Статус операции |
PaymentId | Number | Да | Уникальный идентификатор транзакции в системе Тинькофф Кассы |
Pan | String | Нет | Маскированный номер телефона. Пример: +7(012)***-**-89. Pattern: ^+\d{1}(\d{3})*{3}-*{2}-\d{2}$ |
BankName | String | Нет | Наименование банка получателя |
ErrorCode | String | Да | Код ошибки. «0» в случае успеха |
AccountToken | String | Нет | Токен привязки |
NotificationType | String | Да | Тип нотификации, всегда константа «LINKCARD» |
Token | String | Да | Подпись запроса. Формируется по такому же принципу, как и в случае запросов в Тинькофф Кассу |
Выплачивайте деньги на карту физлица со счета бизнеса и проверяйте статусы по каждой транзакции, которая вас интересует
Выплата осуществляется вызовом методов с передачей параметров в GET или POST запросах, в зависимости от сценария. Все методы и передаваемые параметры чувствительны к регистру. Порядок передачи параметров в запросе значения не имеет. Для POST-запроса в заголовке должен присутствовать Content-Type: application/json
На схеме показаны статусы операции и возможные методы, которые могут быть вызваны, в зависимости от статуса
Полный список возможных статусов операции:
Инициирует выплату
TerminalKey required | string Идентификатор терминала. Выдается Мерчанту Тинькофф Кассой |
OrderId required | string Уникальный номер заказа в системе Мерчанта |
CardId required | string Идентификатор карты пополнения привязанной с помощью метода AddCard |
Amount required | number Сумма в копейках. Минимальное значение - 100 |
DigestValue required | string Значение хеша в Base64 |
object (DataForInit) Параметры, передаваемые в объект DATA. JSON-объект, содержащий дополнительные параметры в виде “ключ”:“значение”. При передаче параметра CustomerKey, переданные в DATA параметры привяжутся к клиенту. Максимальная длина для ключа - 20 знаков, для значения - 100 знаков. Максимальное количество пар «ключ-значение» не может превышать 20. | |
SignatureValue required | string Значение подписи в Base64 |
X509SerialNumber required | string Серийный номер сертификата |
{- "TerminalKey": "TinkoffBankTest",
- "OrderId": "autoOrd1615285401068DELb",
- "CardId": "67321574",
- "Amount": 1751,
- "DigestValue": "qfeohMmrsEvr4QPB8CeZETb+W6VDEGnMrf+oVjvSaMU=",
- "SignatureValue": "rNTloWBbTsid1n9B1ANZ9/VasWJyg6jfiMeI12ERBSlOnzy6YFqMaa5nRb9ZrK9wbKimIBD70v8j8eP/tKn7/g==",
- "X509SerialNumber": "2613832945"
}
{- "Success": true,
- "ErrorCode": "0",
- "TerminalKey": "TinkoffBankTest",
- "Status": "CHECKED",
- "PaymentId": "2353039",
- "OrderId": "PaymentTestN",
- "Amount": 1751
}
Производит пополнение карты
TerminalKey required | string Идентификатор терминала. Выдается Мерчанту Тинькофф Кассой |
PaymentId required | string Уникальный идентификатор транзакции в системе Тинькофф Кассы |
DigestValue required | string Значение хеша в Base64 |
SignatureValue required | string Значение подписи в Base64 |
X509SerialNumber required | string Серийный номер сертификата |
{- "TerminalKey": "TinkoffBankTest",
- "PaymentId": "700000085140",
- "DigestValue": "qfeohMmrsEvr4QPB8CeZETb+W6VDEGnMrf+oVjvSaMU=",
- "SignatureValue": "rNTloWBbTsid1n9B1ANZ9/VasWJyg6jfiMeI12ERBSlOnzy6YFqMaa5nRb9ZrK9wbKimIBD70v8j8eP/tKn7/g==",
- "X509SerialNumber": "2613832945"
}
{- "TerminalKey": "TinkoffBankTest",
- "OrderId": "21050",
- "Success": "true",
- "Status": "COMPLETED",
- "PaymentId": "10063",
- "ErrorCode": "0"
}
Возвращает текущий статус выплаты
TerminalKey required | string Идентификатор терминала выдается Мерчанту Тинькофф Кассой |
PaymentId required | number Идентификатор операции в системе Тинькофф Кассы |
DigestValue required | string Значение хеша в Base64 |
SignatureValue required | string Значение подписи в Base64 |
X509SerialNumber required | string Серийный номер сертификата |
{- "TerminalKey": "TinkoffBankTest",
- "PaymentId": 700000085101,
- "DigestValue": "qfeohMmrsEvr4QPB8CeZETb+W6VDEGnMrf+oVjvSaMU=",
- "SignatureValue": "rNTloWBbTsid1n9B1ANZ9/VasWJyg6jfiMeI12ERBSlOnzy6YFqMaa5nRb9ZrK9wbKimIBD70v8j8eP/tKn7/g==",
- "X509SerialNumber": "2613832945"
}
{- "TerminalKey": "TinkoffBankTest",
- "OrderId": 21057,
- "Success": true,
- "Status": "CONFIRMED",
- "PaymentId": 2304882,
- "Amount": 1751,
- "ErrorCode": 2304882,
- "Message": "OK",
- "Details": "None"
}
Справку по конкретной выплате А2С можно получить на:
1. URL-сервиса, развернутого на своей стороне
2. Электронную почту
TerminalKey required | string Идентификатор терминала, выдается Мерчанту Тинькофф Кассой |
CallbackUrl required | string URL сервиса получения справок |
PaymentIdList required | Array of numbers Json-массив, содержащий в себе перечень paymentID (уникальных идентификаторов в системе Тинькофф Кассы) c типом Number |
Token required | string Подпись запроса |
{- "TerminalKey": "TinkoffBankTest",
- "PaymentIdList": [
- 1201206437,
- 1201206442
], - "Token": "f2fdd7fec8225872590e1558b7ea258c75df8f300d808006c41ab540dd7514d9"
}
{- "Success": true,
- "ErrorCode": 0,
- "Message": "OK",
- "Details": "None",
- "PaymentIdList": {
- "Success": true,
- "ErrorCode": 0,
- "Message": "Запрос на отправку документа принят\"",
- "PaymentId": 1201206442
}
}
Выплата осуществляется вызовом методов с передачей параметров POST запросах. Все методы и передаваемые параметры чувствительны к регистру. Порядок передачи параметров в запросе значения не имеет.
Для POST-запроса в заголовке должен присутствовать Content-Type: application/json
Инициирует выплату
TerminalKey required | string Идентификатор терминала. Выдается Мерчанту Тинькофф Кассой |
OrderId required | string Уникальный номер заказа в системе Мерчанта |
PhoneNumber | string Номер телефона получателя |
SbpMemberId | number Идентификатор банка-получателя в СБП |
AccountToken | string Токен привязки счета получателя по номеру телефона. Используется для инициализации выплаты по токену |
Amount required | number Сумма в копейках. Минимальное значение - 100 |
DigestValue | string Значение хеша в Base64 |
SignatureValue | string Значение подписи в Base64 |
X509SerialNumber | string Серийный номер сертификата |
Token | string Подпись запроса. Используется, если для терминала не включена валидация подписи. Только для выплат через СБП |
object (Параметры, передаваемые в объект DATA.) При передаче в объекте DATA параметров r_lastname, r_firstname, r_middlename, на этапе выполнения /Payment в СБП будет проведена проверка ФИО получателя. В случае несоответствия выплата будет отклонена и вернется статус REJECTED. |
{- "TerminalKey": "TinkoffBankTest",
- "Amount": 55555,
- "OrderId": "autoOrd1615285401068DELb",
- "PhoneNumber": "70123456789",
- "SbpMemberId": "100000000004",
- "DigestValue": "qfeohMmrsEvr4QPB8CeZETb+W6VDEGnMrf+oVjvSaMU=",
- "SignatureValue": "rNTloWBbTsid1n9B1ANZ9/VasWJyg6jfiMeI12ERBSlOnzy6YFqMaa5nRb9ZrK9wbKimIBD70v8j8eP/tKn7/g==",
- "X509SerialNumber": "2613832945"
}
{- "Success": true,
- "ErrorCode": 0,
- "TerminalKey": "TinkoffBankTest",
- "Status": "CHECKED",
- "PaymentId": "2353039,",
- "OrderId": "12342345435",
- "Amount": 55555
}
Выполняет пополнение счета по номеру телефона
TerminalKey required | string Идентификатор терминала. Выдается Мерчанту Тинькофф Кассой |
PaymentId required | string Уникальный идентификатор транзакции в системе Тинькофф Кассы |
DigestValue | string Значение хеша в Base64. Используется, если для терминала включена валидация подписи |
SignatureValue | string Значение подписи в Base64. Используется, если для терминала включена валидация подписи |
X509SerialNumber | string Серийный номер сертификата. Используется, если для терминала включена валидация подписи |
Token | string Подпись запроса. Используется, если для терминала не включена валидация подписи. Только для выплат через СБП |
{- "TerminalKey": "TinkoffBankTest",
- "PaymentId": "700000085140",
- "DigestValue": "qfeohMmrsEvr4QPB8CeZETb+W6VDEGnMrf+oVjvSaMU=",
- "SignatureValue": "rNTloWBbTsid1n9B1ANZ9/VasWJyg6jfiMeI12ERBSlOnzy6YFqMaa5nRb9ZrK9wbKimIBD70v8j8eP/tKn7/g==",
- "X509SerialNumber": "2613832945"
}
{- "TerminalKey": "TinkoffBankTest",
- "OrderId": "12342345435",
- "Success": "true",
- "Status": "COMPLETING",
- "PaymentId": "2353039",
- "ErrorCode": "0"
}
Возвращает текущий статус выплаты
TerminalKey required | string Идентификатор терминала выдается Мерчанту Тинькофф Кассой |
PaymentId required | number Идентификатор операции в системе Тинькофф Кассы |
DigestValue required | string Значение хеша в Base64. Обязательный параметр, если для терминала включена валидация подписи |
SignatureValue required | string Значение подписи в Base64. Обязательный параметр, если для терминала включена валидация подписи |
X509SerialNumber required | string Серийный номер сертификата. Обязательный параметр, если для терминала включена валидация подписи |
Token required | string Подпись запроса. Используется только если для терминала не включена валидация подписи. Только для выплат через СБП |
{- "TerminalKey": "TinkoffBankTest",
- "PaymentId": 2353039,
- "X509SerialNumber": "2613832945",
- "DigestValue": "qfeohMmrsEvr4QPB8CeZETb+W6VDEGnMrf+oVjvSaMU=",
- "SignatureValue": "rNTloWBbTsid1n9B1ANZ9/VasWJyg6jfiMeI12ERBSlOnzy6YFqMaa5nRb9ZrK9wbKimIBD70v8j8eP/tKn7/g=="
}
{- "TerminalKey": "TinkoffBankTest",
- "OrderId": 21057,
- "Success": true,
- "Status": "CONFIRMED",
- "PaymentId": 2304882,
- "Amount": 1751,
- "ErrorCode": 2304882,
- "Message": "OK",
- "Details": "None"
}
Возвращает список участников, принимающих переводы через СБП
TerminalKey required | string Идентификатор терминала. Выдается Мерчанту Тинькофф Кассой |
Token required | number Подпись запроса. Используются если для терминала не включена валидация подписи |
DigestValue required | string Значение хеша в Base64 |
SignatureValue required | string Значение подписи в Base64 |
X509SerialNumber required | string Серийный номер сертификата |
{- "TerminalKey": "TinkoffBankTest",
- "Token": "cb70d75fff815c433b17297593e66eb33d0dd90ec5933b24272820cc564e7dca",
- "DigestValue": "qfeohMmrsEvr4QPB8CeZETb+W6VDEGnMrf+oVjvSaMU=",
- "SignatureValue": "rNTloWBbTsid1n9B1ANZ9/VasWJyg6jfiMeI12ERBSlOnzy6YFqMaa5nRb9ZrK9wbKimIBD70v8j8eP/tKn7/g==",
- "X509SerialNumber": "2613832945"
}
{- "Success": true,
- "ErrCode": 2304882,
- "Message": "OK",
- "Members": {
- "MemberId": "string",
- "MemberName": "string",
- "MemberNameRus": "string"
}
}
Справку по конкретной выплате А2С можно получить на:
1. URL-сервиса, развернутого на своей стороне
2. Электронную почту
TerminalKey required | string Идентификатор терминала, выдается Мерчанту Тинькофф Кассой |
CallbackUrl required | string URL сервиса получения справок |
PaymentIdList required | Array of numbers Json-массив, содержащий в себе перечень paymentID (уникальных идентификаторов в системе Тинькофф Кассы) c типом Number |
Token required | string Подпись запроса |
{- "TerminalKey": "TinkoffBankTest",
- "PaymentIdList": [
- 1201206437,
- 1201206442
], - "Token": "f2fdd7fec8225872590e1558b7ea258c75df8f300d808006c41ab540dd7514d9"
}
{- "Success": true,
- "ErrorCode": 0,
- "Message": "OK",
- "Details": "None",
- "PaymentIdList": {
- "Success": true,
- "ErrorCode": 0,
- "Message": "Запрос на отправку документа принят\"",
- "PaymentId": 1201206442
}
}
Перед запуском интеграции важно провести тестирование. Для этого используйте терминал с приставкой E2CDEMO. Запросы по данному терминалу необходимо отправлять на URL: https://securepay.tinkoff.ru/e2c/v2/
Сценарии, доступные для тестирования на E2CDEMO терминале:
Данные карты необходимо использовать на DEMO-терминале
Поведение карты | Реквизиты |
---|---|
Успешная привязка/выдача | 5000000000000447 expDate: любая действующая дата в формате 11/24 cvv: любой набор из 3 цифр |
Успешная привязка authRC=1057,message='Покупатель запретил такие операции для своей карты' в ответ на метод Payment |
5000000000000553 expDate: любая действующая дата в формате 11/24 cvv: любой набор из 3 цифр |
Выполняется при передаче номера 79012345678 в параметре PhoneNumber метода Init
Последовательность вызовов:
1. Init возвращает Status «CHECKED»;
2. Payment возвращает Status «COMPLETING»;
3. GetState возвращает Status «COMPLETED»
Выполняется при передаче номера 79021234567 в параметре PhoneNumber метода Init
Последовательность вызовов:
1. Init возвращает Status «CHECKED»
2. Payment возвращает Status «COMPLETING»
3. GetState возвращает Status «COMPLETED»
Выполняется, при передаче номера 79031234567 в параметре PhoneNumber метода Init. Эмулирует ошибку «Не достаточно средств на счете».
Последовательность вызовов:
1. Init возвращает Status «REJECTED»
Выполняется, при передаче номера 79041234567в параметре PhoneNumber метода Init. Эмулирует ошибку «Недостаточно средств на счете».
Последовательность вызовов:
1. Init возвращает Status «CHECKED»
2. Payment возвращает Status «COMPLETING»
3. GetState возвращает Status «REJECTED»
CODE | MESSAGE | DETAILS (опционально) |
---|---|---|
0 | None | |
1 | Параметры не сопоставлены | |
2 | Отсутствуют обязательные параметры | |
3 | Внутренняя ошибка системы интернет эквайринга | |
4 | Не получится изменить статус платежа | |
5 | Обратитесь в поддержку, чтобы уточнить детали | |
6 | Не получилось привязать карту покупателя. Обратитесь в поддержку, чтобы уточнить детали | |
7 | Неверный статус покупателя | |
8 | Неверный статус транзакции | |
9 | Переадресовываемый url пуст | |
11 | Невозможно выполнить платеж | |
12 | Неверный параметр RedirectDueDate | |
13 | Оплата с мобильного телефона недоступна | |
13 | Оплата через WebMoney недоступна | |
14 | Платеж неверный. | |
15 | Не удалось осуществить платеж через EINV. | |
16 | Счет был отклонен. | |
17 | Неверные введенные данные. | |
18 | Не удалось осуществить платеж через MC. | |
19 | Не удалось осуществить платеж через WebMoney. | |
20 | Ошибка повторного идентификатора заказа. | |
21 | Внутренняя ошибка вызова сервиса ACQAPI. | |
50 | Ошибка отправки нотификации. | |
51 | Ошибка отправки Email. | |
52 | Ошибка отправки Sms. | |
53 | Обратитесь к продавцу | |
54 | Повторное прохождение 3DS авторизации не допустимо. | |
55 | Повторите попытку позже | Не найдено оплаченных назначений платежа |
60 | Запрещено получение документов по url для текущего терминала | Запрещено получение документов по url для текущего терминала |
61 | Должен быть заполнен один из параметров: emailList или Url | Должен быть заполнен один из параметров: emailList или Url |
62 | Запрещено получение документов по url для текущего systemId | Запрещено получение документов по url для текущего systemId |
63 | Не найдена операция | Не найдена операция |
64 | Невалидные данные в запросе | Невалидные данные в запросе |
65 | Не удалось сформировать документ. Обратитесь в службу поддержки | Не удалось сформировать документ. Повторите операцию позднее |
66 | Не удалось сформировать документ. Повторите операцию позднее | Запрещено получение документов по url для текущего терминала |
67 | Не удалось сформировать документ. Повторите операцию позднее | Не удалось сформировать документ. Повторите операцию позднее |
68 | Не удалось сформировать документ. Обратитесь в службу поддержки | Стороний сервис не доступен. |
76 | Операция по иностранной карте недоступна. | Операция по иностранной карте недоступна. Воспользуйтесь картой российского банка |
78 | Выплата на иностранную карту недоступна. | Выплата на иностранную карту недоступна. Воспользуйтесь картой российского банка |
96 | Ошибка Iris. | |
97 | Ошибка Jasper. | |
98 | Ошибка SubExt. | |
99 | Попробуйте повторить попытку позже | Банк, выпустивший карту, отклонил операцию |
100 | • Попробуйте еще раз. Если ошибка повторится — обратитесь в поддержку • Платеж не получится отменить, потому что деньги покупателя не были зарезервированы • Платеж уже отменен • Не получилось отменить платеж. Укажите сумму не больше, чем зарезервировано • Покупатель опротестовал платеж в банке. Обратитесь в поддержку,чтобы уточнить детали • Платеж уже подтвержден • Нужно настроить подтверждение платежа через СМС (3DS) — для этого обратитесь в поддержку • Карта покупателя неактивна |
|
101 | Не пройдена идентификация 3DS. | Ошибка прохождения 3-D Secure |
102 | • Обратитесь в поддержку, чтобы уточнить детали | |
• Сообщите покупателю, чтобы попробовал оплатить еще раз. Если ошибка повторится — обратитесь в поддержку | ||
102 | Операция отклонена, пожалуйста обратитесь в интернет-магазин или воспользуйтесь другой картой. | Заказ не может быть оплачен, обратитесь службу поддержки |
102 | Превышен лимит на сумму выплат в месяц. | Для решения вопроса обратитесь к персональному менеджеру |
102 | Отказ. Более двух успешных оплат с одного email в неделю по проекту dolyame.ru | |
102 | Отказ. Более двух успешных оплат с одного phone в неделю по проекту dolyame.ru. | |
102 | Отказ. Более двух успешных оплат с одной карты в неделю по проекту dolyame.ru. | |
102 | Отказ. Более двух успешных оплат с одной карты в сутки по проекту dolyame.ru. | |
102 | Отказ. Более двух успешных оплат с одного устройства в сутки по проекту dolyame.ru. | |
102 | Отказ. Более двух успешных оплат с одного устройства в неделю по проекту dolyame.ru. | |
102 | Отказ. Более двух успешных оплат с одного куки/идентификатора клиентского агента в сутки по проекту dolyame.ru. | |
102 | Отказ. Более двух успешных оплат с одного куки/идентификатора клиентского агента в неделю по проекту dolyame.ru. | |
102 | Отказ. Попытка оплаты с виртуальных или мошеннических бинов по проекту dolyame.ru. | |
103 | Недостаточно средств на счете | |
105 | Нужно настроить автоплатежи по Maestro — для этого обратитесь в поддержку | |
106 | Карта не поддерживает 3DS проверку. Попробуйте другую карту. | |
107 | Неверно введен CardId. Проверьте, что такая карта была ранее привязана. | |
109 | Не найден dsTranId для сессии | |
110 | Не передан cres | |
111 | Передан некорректный cres | |
119 | Превышено допустимое количество запросов авторизации операции | |
120 | Попробуйте повторить попытку позже | |
123 | Попробуйте повторить попытку позже | |
125 | Попробуйте повторить попытку позже | |
191 | Некорректный статус договора, обратитесь к вашему менеджеру | |
201 | Поле PaymentId не должно быть пустым. | |
202 | Терминал заблокирован. | |
203 | Параметры запроса не должны быть пустыми. | |
204 | Неверный токен. Проверьте пару TerminalKey/SecretKey. | |
205 | Неверный токен. Проверьте пару TerminalKey/SecretKey. | Указанный терминал не найден |
206 | Email не может быть пустым. | |
207 | Параметр DATA превышает максимально допустимый размер. | |
208 | Наименование ключа из параметра DATA превышает максимально допустимый размер. | |
209 | Значение ключа из параметра DATA превышает максимально допустимый размер. | |
210 | Размер поля TerminalKey должен быть от {min} до {max}. | |
211 | Неверный формат IP. | |
212 | Размер поля OrderId должен быть от {min} до {max}. | |
213 | Размер поля Description должен быть от {min} до {max}. | |
214 | Поле Currency должно быть меньше или равно {value}. | |
215 | Размер поля PayForm должен быть от {min} до {max}. | |
216 | Размер поля CustomerKey должен быть от {min} до {max}. | |
217 | Поле PaymentId числовое значение должно укладываться в формат (<{integer} цифр>.<{fraction} цифр>). | |
218 | Значение PAN не является числовым. | |
219 | Неверный срок действия карты. | |
220 | Размер поля CardHolder должен быть от {min} до {max}. | |
221 | Значение CVV не является числовым. | |
222 | Поле CardId числовое значение должно укладываться в формат (<{integer} цифр>.<{fraction} цифр>). | |
223 | Поле RebillId числовое значение должно укладываться в формат (<{integer} цифр>.<{fraction} цифр>). | |
224 | Неверный формат Email. | |
225 | Неверный формат Email. | |
226 | Размер поля Email должен быть от {min} до {max}. | |
227 | Размер поля Phone должен быть от {min} до {max}. | |
228 | Размер поля MD должен быть от {min} до {max}. | |
229 | Размер поля PaRes должен быть от {min} до {max}. | |
230 | Размер поля Code должен быть от {min} до {max}. | |
231 | Не найден идентификатор карты. | |
233 | Размер поля CardId должен быть от {min} до {max}. | |
234 | Размер поля PAN должен быть от {min} до {max}. | |
235 | Размер поля RebillId должен быть от {min} до {max}. | |
236 | Размер поля Token должен быть от {min} до {max}. | |
237 | Размер поля PaymentId должен быть от {min} до {max}. | |
238 | Размер поля ExpDate должен быть от {min} до {max}. | |
239 | Размер поля CVV должен быть от {min} до {max}. | |
240 | Поле Amount числовое значение должно укладываться в формат (<{integer} цифр>.<{fraction} цифр>). | |
241 | Поле Currency должно быть больше или равно {value}. | |
242 | Размер поля InfoEmail должен быть от {min} до {max}. | |
243 | Ошибка шифрования карточных данных. | |
244 | Ошибка сопоставления карточных данных. | |
245 | Параметр AddCard не сопоставлен. | |
246 | Параметр SendEmail не сопоставлен. | |
247 | Параметр Amount не сопоставлен. | |
248 | Параметр CVV не сопоставлен. | |
249 | Параметр Currency не сопоставлен. | |
250 | Параметр DATA не сопоставлен. | |
251 | Неверная сумма. Сумма должна быть больше или равна {value} копеек. | |
252 | Срок действия карты истек. | |
253 | Валюта {value} не разрешена для данного терминала | |
254 | Дополнительные возможности отключены | |
255 | Платеж не найден | |
257 | Некорректное значение признака последней выплаты. Используйте значения true или false | Некорректное значение признака последней выплаты. Используйте значения true или false |
259 | Параметр EncryptedPaymentData не сопоставлен | |
260 | Максимальная длина номера телефона 30 символов | |
261 | Параметр Source не сопоставлен | |
305 | Ошибка проверки поля. | |
309 | Поле Receipt не должно быть пустым. | |
316 | Максимальная длина номера телефона 19 символов. | |
322 | Передана некорректная подпись | |
323 | Amount не совпадают | |
325 | Транзакция не найдена. | |
326 | Неверный amount. | |
327 | "Терминал не поддерживает C2C переводы или не передан Route=""C2C"" для C2C терминала" | |
328 | Должны присутствовать данные для списания и данные для пополнения. | |
330 | Сумма в запросе больше чем в оригинальной транзакции | |
331 | Неверный терминал | |
335 | OrderId {value} не найден для TerminalKey {value} | |
381 | Возможна привязка только резидентных карт | |
382 | Возможна привязка только нерезидентных карт | |
401 | Внутренняя ошибка системы. | |
402 | Повторите попытку позже. | |
403 | Превышен лимит на количество пополнений в месяц. | |
404 | Превышен лимит на сумму пополнения через бесконтактные сервисы. | |
405 | Превышен лимит на сумму пополнения по виртуальной карте. | |
406 | Превышен лимит на сумму пополнения в месяц через мобильное приложение. | |
407 | Не найдено | |
410 | Данный тип перевода для терминала не доступен | |
411 | Сертификат не найден | |
412 | Истек срок действия сертификата | |
413 | Сертификат заблокирован | |
414 | Сертификат уже сохранен для данного терминала | |
415 | Дата начала срока действия сертификата еще не наступила | |
416 | Некорректное значение параметра SetStatus | |
417 | Ошибка обработки сертификата | |
419 | Параметр account объекта DATA должен быть заполнен корректно для MCC: 6050/6051 | |
500 | Добавление карты к данному терминалу запрещено. | |
501 | Терминал не найден. | |
502 | Карта по requestKey не найдена. | |
503 | CustomerKey не найден. | |
504 | Не удалось провести платеж при привязке карты. | |
505 | Не удалось привязать карту. Внутренняя ошибка. | |
506 | Карта добавлена в черный список. | |
507 | Карта не поддерживает 3DS проверку. Попробуйте другую карту. | |
508 | Неверный номер карты. | |
509 | Не удалось выполнить отмену при привязке карты. | |
510 | Карта уже привязана к переданному CustomerKey. | |
511 | Проверка 3DS не пройдена. | |
512 | Не удалось выполнить запрос на проверку 3DS. | |
513 | Не удалось выполнить платеж после прохождения 3DS. | |
514 | Введена неверная сумма холдирования. | |
515 | Внутренняя ошибка. | |
600 | Карта добавлена в черный список | |
600 | Интернет-магазин отклонил операцию по данной карте. Обратитесь в интернет-магазин для выяснения причин отказа в платеже. | |
601 | Разрешены операции только по MasterCard | |
603 | Превышено количество попыток оплаты с данной карты | |
604 | Обратитесь в поддержку, чтобы уточнить детали | |
619 | Отсутствуют обязательные данные отправителя | Не переданы персональные данные отправителя для операции emoney2card более 15000 руб. |
620 | Проверьте сумму — она не может быть равна 0 | Сумма операции не может быть равна 0 |
623 | Выплата по этому заказу уже прошла | Запрещено проводить платеж с OrderId для которого уже есть успешный платеж. |
632 | Превышен лимит на сумму операции | Лимит на сумму пополнения emoney2card. См. лимиты |
633 | Превышен лимит на количество переводов в день по иностранным картам | Лимит на кол-во пополнений emoney2card для карт эмитированных нерезидентами РФ за 1 отчетный день |
634 | Превышен лимит на сумму переводов по номеру карты в месяц | Лимит на сумму пополнения emoney2card по номеру карты одного получателя в отчетный месяц |
637 | Не хватает данных получателя или отправителя для выплаты на иностранную карту. Проверьте заполнение | Отсутствуют персональные данные получателя/отправителя при переводе на иностранную карту |
642 | Проверьте номер карты | Карта не прошла проверку по алгоритму Луна |
648 | Магазин заблокирован или еще не активирован. Обратитесь в поддержку, чтобы уточнить детали | |
650 | Сообщите покупателю, чтобы попробовал оплатить еще раз. Если ошибка повторится — обратитесь в поддержку | |
651 | Не получилось совершить платеж. Свяжитесь с поддержкой | Передаваемый Request_Id не найден. |
700 | Список карт Masterpass недоступен для данного магазина. | |
701 | Сервис MasterPass недоступен. | |
702 | Поле maid и saav должно быть задано в настройках терминала. | |
703 | Обратитесь в поддержку, чтобы уточнить детали | |
800 | Комиссия не найдена | |
903 | Повторите попытку позже | |
914 | Платеж не найден | |
991 | Для использования 3dsType необходимо установить 3ds терминал | Для использования TDS роутинга необходимо пользоваться ТДС терминалом |
999 | Попробуйте повторить попытку позже | |
1001 | Свяжитесь с банком | Свяжитесь с банком, выпустившим карту, чтобы провести платеж |
1003 | Неверный магазин | Неверный номер магазина. Идентификатор магазина недействителен. |
1004 | Банк, который выпустил карту, считает платеж подозрительным | |
1005 | Платеж отклонен банком, выпустившим карту | Платеж отклонен банком, выпустившим карту |
1006 | Платеж не прошел | Свяжитесь с банком, выпустившим карту, чтобы провести платеж |
1007 | Банк, который выпустил карту, считает платеж подозрительным | |
1008 | Банк, который выпустил карту, отклонил платеж | |
1012 | Банк, который выпустил карту, отклонил платеж | |
1013 | Банк, который выпустил карту, отклонил платеж — сумма превышает лимит по карте | Сумма превышает лимит платежа вашего банка. Воспользуйтесь другой картой или обратитесь в банк |
1014 | Карта недействительна | Неправильные реквизиты — проверьте их или воспользуйтесь другой картой |
1015 | Неверный номер карты | Неверный номер карты |
1017 | Попробуйте снова или свяжитесь с банком, выпустившим карту | Попробуйте снова или свяжитесь с банком, выпустившим карту |
1018 | Неизвестный статус платежа | |
1019 | Банк, который выпустил карту, отклонил платеж — сумма превышает лимит по карте | |
1030 | Повторите попытку позже. | Не получилось оплатить. Попробуйте еще раз |
1033 | Истек срок действия карты | |
1034 | Попробуйте повторить попытку позже | Не получилось оплатить. Воспользуйтесь другой картой или обратитесь в банк, выпустивший карту |
1038 | Превышено количество попыток ввода ПИН-кода — попробуйте снова или обратитесь в банк, выпустивший карту | |
1039 | Платеж отклонен — счет не найден | |
1041 | Карта утеряна | Карта утеряна. Свяжитесь с банком, выпустившим карту |
1043 | Банк, который выпустил карту, считает платеж подозрительным | |
1051 | Недостаточно средств на карте. | Не получилось оплатить. На карте недостаточно средств |
1053 | Платеж отклонен — счет не найден | |
1054 | Истек срок действия карты | Неправильные реквизиты — проверьте их или воспользуйтесь другой картой |
1055 | Неверный ПИН | |
1057 | Покупатель запретил такие операции для своей карты | |
1058 | Покупатель запретил такие операции для своей карты | |
1059 | Банк, который выпустил карту, считает платеж подозрительным | |
1061 | Покупатель превысил лимит платежей по своей карте | |
1062 | Банк, который выпустил карту, отклонил платеж | |
1063 | Банк, который выпустил карту, считает платеж подозрительным | |
1064 | Проверьте сумму | |
1065 | Покупатель превысил лимит платежей по своей карте | |
1071 | Токен просрочен | Токен просрочен |
1075 | Покупатель оплатил максимум раз по своей карте за день | |
1076 | Не получилось отменить резервирование. Обратитесь в поддержку, чтобы уточнить детали | |
1077 | Коды не совпадают — попробуйте снова | |
1078 | Данный тип операции не поддерживается картой | |
1080 | Плательщик ввел неверный срок действия карты | |
1082 | Неверный CVV | Неправильные реквизиты — проверьте их или воспользуйтесь другой картой |
1085 | Операция успешна | Успех |
1086 | Платеж отклонен — не получилось подтвердить ПИН-код | |
1088 | Банк, который выпустил карту, отклонил платеж | |
1089 | Попробуйте повторить попытку позже | Не получилось оплатить. Попробуйте еще раз или обратитесь в банк, выпустивший карту |
1091 | Технические работы в банке, который выпустил карту | |
1092 | Банк, который выпустил карту, отклонил платеж | |
1093 | Банк, который выпустил карту, считает платеж подозрительным | |
1094 | Банк, который выпустил карту, считает платеж подозрительным | |
1096 | Системная ошибка | Системная ошибка |
1116 | Некорректная сумма выдачи | Сумма баланса меньше суммы переданной в операции выдачи |
1119 | Параметр account объекта DATA должен быть заполнен корректно для MCC: 6050/6051 | Передан некорректный номер кошелька |
1201 | Обратитесь в поддержку, чтобы уточнить детали | |
1202 | Сумма платежа превышает лимит по разовой операции в этом магазине. Обратитесь в поддержку, чтобы уточнить детали | Для решения вопроса обратитесь к персональному менеджеру |
1203 | Сумма платежа превышает лимит по разовой операции или количеству операций в этом магазине. Обратитесь в поддержку, чтобы уточнить детали | Для решения вопроса обратитесь к персональному менеджеру |
1204 | Достигнут лимит по суточному обороту. Чтобы изменить лимит, обратитесь в поддержку | Для решения вопроса обратитесь к персональному менеджеру |
1205 | Магазин не принимает карты этой страны. Обратитесь в поддержку, чтобы уточнить детали | Для решения вопроса обратитесь к персональному менеджеру |
1207 | Сообщите покупателю, чтобы попробовал оплатить еще раз. Если ошибка повторится — обратитесь в поддержку | Для решения вопроса обратитесь к персональному менеджеру |
1217 | Воспользуйтесь другой картой или обратитесь к продавцу | Воспользуйтесь другой картой или обратитесь к продавцу |
1218 | Воспользуйтесь другой картой или обратитесь к продавцу | Воспользуйтесь другой картой или обратитесь к продавцу |
1235 | Для карт «Мир» нужно настроить подтверждение платежей по СМС 3DS 2.0. Обратитесь в поддержку, чтобы уточнить детали | |
1316 | Запрещено проведение авторизации | Запрещено проведение авторизации с использованием 3DS |
1502 | Недостаточно средств на счете компании | Insufficient funds |
1503 | Некорректный статус счета, обратитесь в поддержку | Invalid account status |
2014 | Не пройдена идентификация 3DS | |
2015 | Mерчант с таким именем и паролем не найден. | |
2200 | Превышено допустимое количество запросов авторизации операции | |
8002 | Tinkoff Credit Broker недоступен. Повторите попытку позже. | |
8003 | Операция запрещена для покупки долями. | |
8004 | BNPL недоступен. Повторите попытку позже. | |
9001 | Попробуйте повторить попытку позже | |
9999 | Внутренняя ошибка системы. | |
9999 | cert expired for terminal with id:... | У сертификата на терминале истек срок действия. Для выпуска нового сертификата воспользуйтесь инструкцией по ссылке или обратитесь к персональному менеджеру |
Message_Key | Code | Message |
---|---|---|
operation.rejected | 99 | Попробуйте повторить попытку позже |
insufficient.fund | 103 | Недостаточно средств на счете |
use.another.card | 102 | Попробуйте повторить попытку позже |
use.another.card | 1203 | Воспользуйтесь другой картой или обратитесь к продавцу |
use.another.card | 1202 | Попробуйте повторить попытку позже |
use.another.card | 1204 | Попробуйте повторить попытку позже |
incorrect.route.sbp | 3004 | Способ СБП недоступен для магазина |
sbp.not.response | 3005 | Оплата через СБП не доступна |
sbp.not.receive | 3006 | Банк получателя не может принять возврат. Выберите другой банк |
sbp.error | 3007 | Отказ в проведении операции от СБП |
sbp.account.error | 3008 | У получателя нет расчетного счета в этом банке. Выберите другой банк |
sbp.renouncement | 3009 | Отказ в проведении операции от СБП или банка получателя |
sbp.receiver.name.error | 3010 | У получателя нет расчетного счета в этом банке. ФИО некорректное |
sbp.receiver.name.error | 1015 | Неверный номер карты |
По техническим вопросам обратитесь на почту acq_help@tinkoff.ru.
Для предоставления обратной связи и по вопросам улучшения обслуживания и предоставляемого сервиса обратитесь к вашему личному менеджеру