Главный класс библиотеки.
TKassa(inject?: (body: WebhookBody) => MaybePromise<EventInject>,options?: TKassaOptions,)
TKassa(options?: TKassaOptions)
TKassa(terminalKeyOrOptionsOrInject?: ,passwordOrOptions?: string | TKassaOptions,kassaOptions?: TKassaOptions,)
Создание инстанса Т-Кассы
inject: ((body: WebhookBody) => MaybePromise<EventInject>) | undefined
listeners: ((context: WebhookBody,custom: any,) => unknown)[]
options: Require<TKassaOptions, "server">
password: TerminalKey extends "" ? string | undefined : string
terminalKey: TerminalKey extends "" ? string | undefined : string
addAccountQr(body: GetRequestBody<"/v2/AddAccountQr", "post", TerminalKey>): Promise<{ TerminalKey: string; Data: string; RequestKey: string; ErrorCode: string; Success: boolean; Message?: string | undefined; }>
Метод инициирует привязку счета клиента к магазину и возвращает информацию о нем
addCard(body: GetRequestBody<"/v2/AddCard", "post", TerminalKey>): Promise<{ PaymentId: string; TerminalKey: string; CustomerKey: string; RequestKey: string; ErrorCode: string; Success: boolean; Message?: string | undefined; Details?: string | undefined; PaymentURL: string; } | { PaymentId: string; TerminalKey: string; CustomerKey: string; RequestKey: string; ErrorCode: string; Success: boolean; Message?: string | undefined; Details?: string | undefined; }>
Для Мерчантов с PCI DSS
Метод инициирует привязку карты к клиенту.
В случае успешной привязки переадресует клиента на Success Add Card URL
,
в противном случае на Fail Add Card URL
.
Можно использовать форму Т‑Кассы, возможно заменить на кастомную форму.
addCustomer(body: GetRequestBody<"/v2/AddCustomer", "post", TerminalKey>): Promise<{ TerminalKey: string; CustomerKey: string; ErrorCode: string; Success: boolean; Message?: string | undefined; Details?: string | undefined; }>
Регистрирует клиента в связке с терминалом
Возможна автоматическая привязка клиента и карты, по которой был совершен платеж, при передаче параметра
CustomerKey
в методе Init. Это можно использовать для сохранения и последующего отображения клиенту замаскированного номера карты, по которой будет совершен рекуррентный платеж
attachCard(body: GetRequestBody<"/v2/AttachCard", "post", TerminalKey>): Promise<{ TerminalKey: string; CustomerKey: string; RequestKey: string; CardId: string; Success: boolean; ErrorCode: string; Status?: "NEW"
| "FORM_SHOWED"
| "3DS_CHECKING"
| "3DS_CHECKED"
| "AUTHORIZING"
| "AUTHORIZED"
| "COMPLETED"
| "REJECTED"
| undefined; RebillId?: string | undefined; Message?: string | undefined; Details?: string | undefined; ACSUrl?: string | undefined; MD?: string | undefined; PaReq?: string | undefined; }>
Для Мерчантов с PCI DSS
Завершает привязку карты к клиенту.
В случае успешной привязки переадресует клиента на Success Add Card URL
в противном случае на Fail Add Card URL.
Для прохождения 3DS второй версии перед вызовом метода должен быть вызван /v2/check3dsVersion
и выполнен 3DS Method, который является обязательным при прохождении 3DS по протоколу версии
2.0.
cancel(body: GetRequestBody<"/v2/Cancel", "post", TerminalKey>): Promise<{ TerminalKey: string; OrderId: string; Success: boolean; Status: string; OriginalAmount: number; NewAmount: number; PaymentId: string; ErrorCode: string; Message?: string | undefined; Details?: string | undefined; ExternalRequestId?: string | undefined; }>
Отменяет платежную сессию. В зависимости от статуса платежа переводит его в следующие состояния:
- NEW — CANCELED
- AUTHORIZED — PARTIAL_REVERSED — если отмена не на полную сумму;
- AUTHORIZED — REVERSED — если отмена на полную сумму;
- CONFIRMED — PARTIAL_REFUNDED — если отмена не на полную сумму;
- CONFIRMED — REFUNDED — если отмена на полную сумму.
Для платежей «в Рассрочку» отмена доступна только из статуса AUTHORIZED
Для платежей «Долями» если операция в статусе CONFIRMED или PARTIAL_REFUNDED будет осуществлен частичный либо полный возврат
Если платеж находился в статусе AUTHORIZED производится отмена холдирования средств на карте
клиента. При переходе из статуса CONFIRMED — возврат денежных средств на карту клиента
chargePCI(body: GetRequestBody<"/v2/Charge", "post", TerminalKey>): Promise<{ TerminalKey: string; Amount: number; OrderId: string; Success: boolean; Status: string; PaymentId: string; ErrorCode: string; Message?: string | undefined; Details?: string | undefined; }>
Схема проведения рекуррентного платежа
Описание
Осуществляет рекуррентный (повторный) платеж — безакцептное списание денежных средств со счета банковской карты клиента.
Для возможности его использования клиент должен совершить хотя бы один платеж в пользу Мерчанта, который должен быть указан как рекуррентный (см. параметр Recurrent методе Init), фактически являющийся первичным. По завершении оплаты в нотификации на AUTHORIZED или CONFIRMED будет передан параметр RebillId
.
В дальнейшем для совершения рекуррентного платежа Мерчант должен вызвать метод Init, указать нужную сумму для списания в параметре Amount
, а затем без переадресации на PaymentURL вызвать метод Charge для оплаты по тем же самым реквизитам и передать параметр RebillId
, полученный при совершении первичного платежа.
Метод Charge работает по одностадийной и двухстадийной схеме оплаты. Чтобы перейти на двухстадийную схему нужно переключить терминал в Личном кабинете, а также написать обращение на acq_help@tinkoff.ru с просьбой переключить схему рекуррентов.
По умолчанию метод Charge отключен. Для его включения на DEMO-терминале нужно написать обращение на acq_help@tinkoff.ru, а на боевом терминале — обратиться к своему персональному менеджеру
При проведении рекуррентного платежа учитывать взаимосвязь атрибута RebillId в методе /Charge с:
- Значением атрибута OperationInitiatorType в методе /Init;
- Значением атрибута Reccurent в методе /Init;
- Типом терминала, используемом для проведения операций (ECOM/AFT).
Наглядно допустимые сценарии взаимосвязи описаны в таблице:
CIT/MIT | Тип операции | OperationInitiator в /Init | RebillId в /Charge | Recurrent в /Init | AFT терминал | ECOM терминал |
---|---|---|---|---|---|---|
CIT | Credential-Not-Captured | 0 | null | N | Разрешено | Разрешено |
CIT | Credential-Captured | 1 | null | Y | Разрешено | Разрешено |
CIT | Credential-on-File | 2 | not null | N | Запрещено | Разрешено |
MIT | Credential-on-File, Recurring | R | not null | N | Запрещено | Разрешено |
MIT | Credential-on-File, Installment | I | not null | N | Разрешено | Запрещено |
В случае передачи значений атрибутов не соответствующих таблице — MAPI вернет ошибку 1126 (Несопоставимые значения rebillId или Recurrent с переданным значением OperationInitiatorType)
Одностадийная оплата
- Совершить родительский платеж путем вызова Init с указанием дополнительных параметров
Recurrent=Y
иCustomerKey
. - Переадресовать клиента на
PaymentUrl
(только для Мерчантов без PCI DSS</span>). - После оплаты заказа клиентом в нотификации на статус AUTHORIZED или CONFIRMED будет передан параметр
RebillId
, который необходимо сохранить. - Спустя некоторое время для совершения рекуррентного платежа необходимо вызвать метод Init со стандартным набором параметров (параметры
Recurrent
иCustomerKey
здесь не нужны). - Получить в ответ на Init параметр
PaymentId
. - Вызвать метод Charge с параметром
RebillId
, полученным в п.3, и параметромPaymentId
, полученным в п.5. При успешном сценарии операция перейдет в статус CONFIRMED.
Двухстадийная оплата
- Совершить родительский платеж путем вызова Init с указанием дополнительных параметров
Recurrent=Y
иCustomerKey
. - Переадресовать клиента на
PaymentUrl
(только для Мерчантов без PCI DSS</span>). - После оплаты заказа клиентом в нотификации на статус AUTHORIZED или CONFIRMED будет передан параметр RebillId, который необходимо сохранить.
- Спустя некоторое время для совершения рекуррентного платежа необходимо вызвать метод Init со стандартным набором параметров (параметр
Recurrent
иCustomerKey
здесь не нужны). - Получить в ответ на Init параметр
PaymentId
. - Вызвать метод Charge с параметром
RebillId
, полученным в п.3, и параметромPaymentId
, полученным в п.5. При успешном сценарии операция перейдет в статус AUTHORIZED. Денежные средства будут заблокированы на карте клиента. - Вызвать метод Confirm для подтверждения платежа.
chargeQr(body: GetRequestBody<"/v2/ChargeQr", "post", TerminalKey>): Promise<{ TerminalKey: string; Amount: number; OrderId: string; Success: boolean; Status?: "CONFIRMED"
| "REJECTED"
| undefined; PaymentId: string; ErrorCode: string; Message?: string | undefined; Details?: string | undefined; Currency?: number | undefined; }>
Проведение платежа по привязанному счету по QR через СБП. Для возможности его использования клиент должен совершить успешную привязку счета с помощью метода AddAccountQr. После вызова метода будет отправлена нотификация на Notification URL о привязке счета , в которой будет указан AccountToken. Для совершения платежа по привязанному счету Мерчант должен вызвать метод Init, в котором поля Recurrent= Y и DATA= {“QR”:“true”}, а затем вызвать метод ChargeQr для оплаты по тем же самым реквизитам и передать параметр AccountToken, полученный после привязки счета по QR в нотификации.
check3dsVersion(body: GetRequestBody<"/v2/Check3dsVersion", "post", TerminalKey>): Promise<{ Version: string; TdsServerTransID?: string | undefined; ThreeDSMethodURL?: string | undefined; PaymentSystem: string; Success: boolean; ErrorCode: string; Message?: string | undefined; Details?: string | undefined; }>
Для Мерчантов с PCI DSS
Проверяет поддерживаемую версию 3DS протокола по карточным данным из входящих
параметров
При определении второй версии, возможно в ответе получение данных для прохождения
дополнительного метода 3DS Method
, который позволяет эмитенту собрать данные браузера
клиента — это может быть полезно при принятии решения в пользу Frictionless Flow
(аутентификация клиента без редиректа на страницу ACS)
checkOrder(body: GetRequestBody<"/v2/CheckOrder", "post", TerminalKey>): Promise<{ TerminalKey: string; OrderId: string; Success: boolean; ErrorCode: string; Message?: string | undefined; Details?: string | undefined; Payments: { PaymentId: string; Amount?: number | undefined; Status: string; RRN?: string | undefined; Success: string; ErrorCode: number; Message: string; }[]; }>
Метод возвращает статус заказа
confirm(body: GetRequestBody<"/v2/Confirm", "post", TerminalKey>): Promise<{ TerminalKey: string; OrderId: string; Success: boolean; Status: "NEW"
| "AUTHORIZING"
| "AUTHORIZED"
| "AUTH_FAIL"
| "CANCELED"
| "CHECKING"
| "CHECKED"
| "COMPLETING"
| "COMPLETED"
| "CONFIRMING"
| "CONFIRMED"
| "DEADLINE_EXPIRED"
| "FORM_SHOWED"
| "PARTIAL_REFUNDED"
| "PREAUTHORIZING"
| "PROCESSING"
| "3DS_CHECKING"
| "3DS_CHECKED"
| "REVERSING"
| "REVERSED"
| "REFUNDING"
| "REFUNDED"
| "REJECTED"
| "UNKNOWN"; PaymentId: string; ErrorCode: string; Message?: string | undefined; Details?: string | undefined; Params?: { Route?: "TCB"
| "BNPL"
| "ACQ"
| "SBER"
| undefined; Source?: "BNPL"
| "cards"
| "Installment"
| "MirPay"
| "qrsbp"
| "SberPay"
| "TinkoffPay"
| "YandexPay"
| undefined; CreditAmount?: number | undefined; }[] | undefined; }>
Метод для списания заблокированных денежных средств. Используется при двухстадийном проведении платежа. Применим только к платежам в статусе AUTHORIZED. Статус транзакции перед разблокировкой выставляется в CONFIRMING. Сумма списания может быть меньше или равна сумме авторизации.
Подробнее про двухстадийный платеж можно прочитать в разделе Сценарии платежа — "Двухстадийный платеж"
finishAuthorize(body: GetRequestBody<"/v2/FinishAuthorize", "post", TerminalKey>): Promise<({ TerminalKey: string; Amount: number; OrderId: string; Success: boolean; Status: string; PaymentId?: string | undefined; ErrorCode: string; Message?: string | undefined; Details?: string | undefined; RebillId?: string | undefined; CardId?: string | undefined; } & { CardId?: string | undefined; })
| ({ TerminalKey: string; Amount: number; OrderId: string; Success: boolean; Status: string; PaymentId?: string | undefined; ErrorCode: string; Message?: string | undefined; Details?: string | undefined; RebillId?: string | undefined; CardId?: string | undefined; } & { MD?: string | undefined; PaReq?: string | undefined; ACSUrl?: string | undefined; })
| ({ TerminalKey: string; Amount: number; OrderId: string; Success: boolean; Status: string; PaymentId?: string | undefined; ErrorCode: string; Message?: string | undefined; Details?: string | undefined; RebillId?: string | undefined; CardId?: string | undefined; }
& Record<string, never>
& { TdsServerTransId: string; AcsTransId: string; AcsInterface?: string | undefined; AcsUiTemplate?: string | undefined; AcsSignedContent?: string | undefined; AcsReferenceNumber: string; SdkTransID: string; })
| ({ TerminalKey: string; Amount: number; OrderId: string; Success: boolean; Status: string; PaymentId?: string | undefined; ErrorCode: string; Message?: string | undefined; Details?: string | undefined; RebillId?: string | undefined; CardId?: string | undefined; }
& Record<string, never>
& { TdsServerTransId: string; AcsTransId: string; ACSUrl?: string | undefined; })>
Для Мерчантов с PCI DSS
Метод подтверждает платеж передачей реквизитов, а также списывает средства
с карты клиента при одностадийной оплате и блокирует указанную сумму при
двухстадийной. Используется, если у площадки есть сертификация PCI DSS и
собственная платежная форма
getAccountQrList(body: GetRequestBody<"/v2/GetAccountQrList", "post", TerminalKey>): Promise<{ TerminalKey: string; Success: boolean; ErrorCode: string; Message?: string | undefined; AccountTokens?: { RequestKey?: string | undefined; Status?: "NEW"
| "PROCESSING"
| "ACTIVE"
| "INACTIVE"
| undefined; AccountToken?: string | undefined; BankMemberId?: string | undefined; BankMemberName?: string | undefined; } | undefined; }>
Метод возвращает список привязанных счетов клиента по магазину
getAddAccountQrState(body: GetRequestBody<"/v2/GetAddAccountQrState", "post", TerminalKey>): Promise<{ TerminalKey: string; RequestKey: string; BankMemberId?: string | undefined; BankMemberName?: string | undefined; AccountToken?: string | undefined; Success: boolean; Status: "NEW"
| "PROCESSING"
| "ACTIVE"
| "INACTIVE"; ErrorCode: string; Message?: string | undefined; }>
Метод возвращает статус привязки счета клиента по магазину
getAddCardState(body: GetRequestBody<"/v2/GetAddCardState", "post", TerminalKey>): Promise<{ TerminalKey: string; RequestKey: string; Status: "NEW"
| "FORM_SHOWED"
| "3DS_CHECKING"
| "3DS_CHECKED"
| "AUTHORIZING"
| "AUTHORIZED"
| "COMPLETED"
| "REJECTED"; Success: boolean; CardId?: string | undefined; RebillId?: string | undefined; ErrorCode?: string | undefined; Message?: string | undefined; Details?: string | undefined; CustomerKey?: string | undefined; }>
Для мерчантов с PCI DSS
Метод возвращает статус привязки карты
getCardList(body: GetRequestBody<"/v2/GetCardList", "post", TerminalKey>): Promise<{ CardId: string; Pan: string; Status: "A"
| "I"
| "D"; RebillId?: string | undefined; CardType: 0
| 1
| 2; ExpDate?: string | undefined; }[]>
Возвращает список всех привязанных карт клиента, включая удаленные
getConfirmOperation(body: GetRequestBody<"/v2/getConfirmOperation", "post", TerminalKey>): Promise<{ Success: boolean; ErrorCode: string; Message?: string | undefined; PaymentIdList: { Success: boolean; ErrorCode: string; Message: string; PaymentId: string; }[]; } | { Success: boolean; ErrorCode: string; Message?: string | undefined; PaymentIdList: { Success: boolean; ErrorCode: string; Message: string; PaymentId: string; }[]; }>
Справку по конкретной операции можно получить на:
1. URL-сервиса, развернутого на своей стороне.
2. Электронную почту.
Для формирования токена необходимо использовать только PASSWORD</b> и TERMINAL_KEY</b>
getCustomer(body: GetRequestBody<"/v2/GetCustomer", "post", TerminalKey>): Promise<{ TerminalKey: string; CustomerKey: string; ErrorCode: string; Success: boolean; Message?: string | undefined; Details?: string | undefined; Email?: string | undefined; Phone?: string | undefined; }>
Возвращает данные клиента, сохраненные в связке с терминалом
getDeepLink(body: GetRequestBody<"/v2/GetDeepLink", "post", TerminalKey>): Promise<{ Success: boolean; ErrorCode: string; Deeplink?: string | undefined; Message?: string | undefined; Details?: string | undefined; }>
Получение deeplink с включенным подписанным JWT-токеном. Предназначен для запроса по API
getQRState(body: GetRequestBody<"/v2/GetQRState", "post", TerminalKey>): Promise<{ Success: boolean; ErrorCode: string; Status?: string | undefined; QrCancelCode?: string | undefined; QrCancelMessage?: string | undefined; OrderId?: string | undefined; Amount?: number | undefined; Message?: string | undefined; } | { Success: boolean; ErrorCode: string; Status?: string | undefined; QrCancelCode?: string | undefined; QrCancelMessage?: string | undefined; OrderId?: string | undefined; Amount?: number | undefined; Message?: string | undefined; }>
Возвращает статус возврата платежа по СБП
getQr(body: GetRequestBody<"/v2/GetQr", "post", TerminalKey>): Promise<{ TerminalKey: string; OrderId: string; Success: boolean; Data: string; PaymentId: string; ErrorCode: string; Message?: string | undefined; Details?: string | undefined; RequestKey: string; } | { TerminalKey: string; OrderId: string; Success: boolean; Data: string; PaymentId: string; ErrorCode: string; Message?: string | undefined; Details?: string | undefined; RequestKey: string; }>
Метод регистрирует QR и возвращает информацию о нем. Должен быть вызван после вызова метода Init
getState(body: GetRequestBody<"/v2/GetState", "post", TerminalKey>): Promise<{ TerminalKey: string; Amount: number; OrderId: string; Success: boolean; Status: string; PaymentId: string; ErrorCode: string; Message?: string | undefined; Details?: string | undefined; Params?: { Route?: "ACQ"
| "BNPL"
| "TCB"
| "SBER"
| undefined; Source?: "BNPL"
| "cards"
| "Installment"
| "MirPay"
| "qrsbp"
| "SberPay"
| "TinkoffPay"
| "YandexPay"
| undefined; CreditAmount?: number | undefined; }[] | undefined; }>
Метод возвращает статус платежа
getTerminalPayMethods(body: GetRequestBody<"/v2/GetTerminalPayMethods", "get", TerminalKey>): Promise<{ Success: boolean; ErrorCode: string; Message?: string | undefined; Details?: string | undefined; TerminalInfo: Record<string, never>; TerminalInfo.Paymethods?: { PayMethod: string; Params?: Record<string, never> | undefined; }[] | undefined; TerminalInfo.AddCardScheme: boolean; TerminalInfo.TokenRequired: boolean; TerminalInfo.InitTokenRequired: boolean; }>
Метод определяет доступность методов оплаты на терминале для SDK и API. Запрос не шифруется токеном
init(body: GetRequestBody<"/v2/Init", "post", TerminalKey>): Promise<{ TerminalKey: string; Amount: number; OrderId: string; Success: boolean; Status: string; PaymentId: string; ErrorCode: string; PaymentURL?: string | undefined; Message?: string | undefined; Details?: string | undefined; }>
Метод инициирует платежную сессию
initPayments(body: GetRequestBody<"/v2/InitPayments", "post", TerminalKey>): Promise<{ Success?: boolean | undefined; }>
link(paymentId: paths["/v2/TinkoffPay/transactions/{paymentId}/versions/{version}/link"]["get"]["parameters"]["path"]["paymentId"],version: paths["/v2/TinkoffPay/transactions/{paymentId}/versions/{version}/link"]["get"]["parameters"]["path"]["version"],): Promise<{ Params: { RedirectUrl: string; WebQR?: string | undefined; }; Success: boolean; ErrorCode: string; Message?: string | undefined; Details?: string | undefined; }>
Метод получения Link для безусловного редиректа на мобильных устройствах
on<Filter extends UpdateFilter<any>>(filters: Filter,handler: (context: Modify<WebhookBody, Filter extends UpdateFilter<infer Mod> ? Mod : never>,custom: EventInject["custom"],) => unknown,): this
Слушатель webhook события (нотификации)
qR(paymentId: paths["/v2/TinkoffPay/{paymentId}/QR"]["get"]["parameters"]["path"]["paymentId"]): Promise<never>
Метод получения QR для десктопов
qrMembersList(body: GetRequestBody<"/v2/QrMembersList", "post", TerminalKey>): Promise<{ Members?: { MemberId: string; MemberName: string; IsPayee: boolean; }[] | undefined; OrderId: string; Success: boolean; ErrorCode: string; Message?: string | undefined; }>
Метод возвращает список участников куда может быть осуществлен возврат платежа, совершенного по QR
removeCard(body: GetRequestBody<"/v2/RemoveCard", "post", TerminalKey>): Promise<{ TerminalKey: string; Status: string; CustomerKey: string; CardId: string; CardType: 0
| 1
| 2; Success: boolean; ErrorCode: string; Message?: string | undefined; Details?: string | undefined; }>
Метод удаляет привязанную карту клиента
removeCustomer(body: GetRequestBody<"/v2/RemoveCustomer", "post", TerminalKey>): Promise<{ TerminalKey: string; CustomerKey: string; ErrorCode: string; Success: boolean; Message?: string | undefined; Details?: string | undefined; }>
Удаляет сохраненные данные клиента
sberPayQR(paymentId: paths["/v2/SberPay/{paymentId}/QR"]["get"]["parameters"]["path"]["paymentId"]): Promise<never>
Метод получения QR для десктопов
sberPaylink(paymentId: paths["/v2/SberPay/transactions/{paymentId}/link"]["get"]["parameters"]["path"]["paymentId"]): Promise<{ Params: { RedirectUrl: string; }; Success: boolean; ErrorCode: string; Message?: string | undefined; Details?: string | undefined; }>
Получение ссылки
sbpPayTest(body: GetRequestBody<"/v2/SbpPayTest", "post", TerminalKey>): Promise<{ Success: boolean; ErrorCode: string; Message: string; Details: string; }>
Тестовая платежная сессия с предопределенным статусом по СБП
sendClosingReceipt(body: GetRequestBody<"/cashbox/SendClosingReceipt", "post", TerminalKey>): Promise<{ Success: boolean; ErrorCode: string; Message?: string | undefined; }>
Метод позволяет отправить закрывающий чек в кассу. Условия работы метода:
- Закрывающий чек может быть отправлен если платежная сессия по первому чеку находится в статусе CONFIRMED.
- В платежной сессии был передан объект
Receipt
. - В объекте
Receipt
был передан хотя бы один объектReceipt.Items.PaymentMethod
=full_prepayment
илиprepayment
илиadvance
.
status(TerminalKey: paths["/v2/TinkoffPay/terminals/{TerminalKey}/status"]["get"]["parameters"]["path"]["TerminalKey"]): Promise<{ Params: { Allowed: boolean; Version?: string | undefined; }; Success: boolean; ErrorCode: string; Message?: string | undefined; Details?: string | undefined; }>
Метод определения возможности проведения платежа T‑Pay на терминале и устройстве
submit3DSAuthorization(): Promise<{ TerminalKey: string; OrderId: string; Success: boolean; Status: string; PaymentId: string; ErrorCode: string; Message?: string | undefined; Details?: string | undefined; }>
Для Мерчантов с PCI DSS
Осуществляет проверку результатов прохождения 3-D Secure и при успешном результате
прохождения 3-D Secure подтверждает инициированный платеж.
При использовании одностадийной оплаты осуществляет списание денежных средств с карты
клиента.
При двухстадийной оплате осуществляет блокировку указанной суммы на карте клиента
Формат запроса: x-www-form-urlencoded
После получения на TermUrl
мерчанта ответа ACS с результатами прохождения 3-D Secure необходимо
сформировать запрос к методу Submit3DSAuthorization
submit3DSAuthorizationV2(): Promise<{ OrderId: string; TerminalKey: string; Status: string; PaymentId: string; Success: boolean; ErrorCode: string; Message?: string | undefined; Details?: string | undefined; }>
Для Мерчантов с PCI DSS
Осуществляет проверку результатов прохождения 3-D Secure v2 и при успешном результате
прохождения 3-D Secure v2 подтверждает инициированный платеж.
При использовании одностадийной оплаты осуществляет списание денежных средств с карты
клиента.
При двухстадийной оплате осуществляет блокировку указанной суммы на карте клиента.
Формат запроса: x-www-form-urlencoded
После получения на cresCallbackUrl
Мерчанта ответа ACS с результатами прохождения 3-D Secure необходимо
сформировать запрос к методу Submit3DSAuthorizationV2
submitRandomAmount(body: GetRequestBody<"/v2/SubmitRandomAmount", "post", TerminalKey>): Promise<{ TerminalKey: string; CustomerKey: string; RequestKey: string; RebillId?: string | undefined; CardId: string; Success: boolean; ErrorCode: string; Message?: string | undefined; Details?: string | undefined; Status?: string | undefined; }>
Метод предназначен для подтверждения карты путем блокировки случайной суммы