...
Формируете криптограмму (можно использовать SDK для Android и iOS в зависимости от устройства или использовать Скрипт checkout для web) в параметре MerchantPublicID передаете значение из метода https://api.cloudtips.ru/api/cards/publicid
Полученную криптограмму передаете в метод
POST https://api.cloudtips.ru/api/cards/authCode Block Content-Type application/json { CardholderName: "NONE", CardCryptogramPacket: криптограмма из пункта 1, UserId: {уникальный идентификатор получателя} }
Далее возможны два вариант. Первый вариант если карта не 3ds, либо получатель уже проходил его ранее (Frictionless Flow)
Тогда будет ответ:Code Block { TransactionId: 123345, StatusCode: "Canceled", CardToken: "tk_sometoken" }
Второй вариант, если получатель проходит полный 3ds с вводом смс кода (Challenge Flow)
Тогда будет ответ:Code Block { TransactionId: 123345, StatusCode: "Need3ds", Md: "123345", PaReq: "TESTPAREQ", AcsUrl: "https://bank-acs-url.ru" }
Если это Challenge Flow, то необходимо перенаправить получателя на AcsUrl банка для ввода 3ds-ного кода. Для этого необходимо перенаправить получателя на AcsUrl банка для прохождения 3ds.
Для проведения 3-D Secure аутентификации нужно отправить плательщика на адрес, указанный в параметре AcsUrl из метода Авторизация платежа с передачей следующих параметров:
MD — параметр TransactionId из ответа сервера;
PaReq — одноименный параметр из ответа сервера;
TermUrl — адрес на вашем сайте для возврата плательщика после аутентификации.
Далее необходимо вызвать метод https://api.cloudtips.ru/api/cards/post3ds со следующими параметрами:
Code Block { "md": {значение из ответа п.4после acsUrl}, "paRes": {значение из ответа после п.4acsUrl}, "userId": {уникальный идентификатор получателя} }
При успешном окончании методов 3, 4 или 5 необходимо подтвердить привязку карты на стороне системы
POST https://api.cloudtips.ru/api/cards/addCode Block Content-Type application/json { TransactionId: {из ответа пункта 3, 4 или 5}, "userId": {уникальный идентификатор получателя} }
...