Инструменты страницы
Содержание
Web SDK Core
Введение
Библиотека для формирования криптограмм по данным, полученным из платежной формы. Библиотека формирует ответ асинхронно. Для получения результата используется callback.
Используется продавцом на своём сайте. В библиотеку передается перечень параметров платежной формы (mdOrder, pan, expiry и пр.), а на выходе получается готовая для передачи на backend эквайринга криптограмма.
Обратите внимание, что для использования этой библиотеки может быть необходимо соответствие стандарту PCI DSS, поскольку она обрабатывает данные карты.
Пример использования
<script src="https://sbergate.com/payment/modules/card-kit-core/card-kit-core.js"></script> <script> window.CKCToken.generateWithCard( { pan: '2200000000000053', cvc: '123', expiryMMYY: '12/34', mdOrder: '63447c9c-b432-7c8e-962f-161c0008f9da', // pubKey: '-----BEGIN PUBLIC KEY-----MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAioZS/AN/xWtZsQNFjOc8VjKnE5xwQuT0zV0q2j2JpBN66We1+dya9gfqt14Mg53tHfvTB+hbHpmK8mYlPdpZXnIIN3TuBv9llfwmAMm4pFRDG8KeIgOVLSGptHufjwoh2iE4YfxZWgCbnkqjDk6YiTPdy+W7nxF+fPUEsFE1YJDTRwzVqpsbjfKW9tQAjDxpAwfsiyhk0NzTEsDahWtjk1+WaqqrN0LRQgtaTnnbjSr3npmegu63mgTXBX1MT5olRY+BjCaPCZLt+6sFNd/wVI+UBo3/U6jHEHVe3T1vdZWNhJe2twFzrSSpm5aevDK7OpQzMT7v2wUIRWIlFvIxFwIDAQAB-----END PUBLIC KEY-----', }, function (result) { console.log('Result:', result); // // Example result: // { // token: null, // errors: [ // {field: "pan", error: "invalid-length"}, // {field: "cvc", error: "required"} // ] // } } ); </script>
Параметры
Параметр | Обязательно | Назначение |
---|---|---|
mdOrder | да | Идентификатор заказа |
pan | да | Номер карты (без пробелов) |
cvc | нет | CVV/CVC код карты |
expiryMMYY | нет | дата в формате ММ/ГГ или ММГГ |
pubKey | нет | Открытый ключ шифрования (если параметр не задан, ключ будет получен с сервера автоматически) |
Ошибки
Тип ошибки | Пояснение |
---|---|
required | Поле обязательно. |
invalid-format | Недопустимый формат данных. |
invalid-length | Недопустимая длина поля. |
invalid-pub-key | Неверный ключ. |
get-pub-key-failed | Не удалось получить ключ с сервера. |
Формат ответа
{ token: "...", // obtained token ready for passing errors: [ // errors array { field: "pan", // Field name error: "invalid-length" // Error type }, ] }
Библиотеку нужно использовать строго через URL, указанный в документации.
Пример запроса на проведение платежа со сгенерированной криптограммой
curl --location --request POST 'https://sbergate.com/payment/rest/paymentorder.do' \ --header 'Content-type: application/x-www-form-urlencoded' \ --data-urlencode 'MDORDER=63447c9c-b432-7c8e-962f-161c0008f9da' \ --data-urlencode 'language=en' \ --data-urlencode 'TEXT=CARDHOLDER NAME' \ --data-urlencode 'email=' \ --data-urlencode 'Cfqv4t2XHBb9k8ixM7jxxCvziETS4koa3bV3F0QUvGVY47nKyMBqjGzV%2FrvmCAw6KzwoBDzeLsqwBLEzvQhaF627ZS0OJnhttBi4fL3%2Fh%2FsBSwFtxr3s%2BoVUeoE3e4SNVUq9vciinOyNCIKqfpeQya%2BpOUYt3MgrtSeu66Ar12XEj4k6lecZN7Ffquj9RqhZsYhP63np5VCxJR90cNQG%2BTMWIFU6rqxLAe4gzCJtcXNrPT8aDOI201Zwd%2Be4K1YnrI7dZGlibO7MVMPB9m7NJaJTHko%2FMiJNWumAjS4yDDovLraIKMwOFTvAhqXsHslthpcUO0GZXEIaDRgERD7%2Bjw%3D%3D' \ --data-urlencode 'userName=tm-api' \ --data-urlencode 'password=XXXXXXX'
Если seToken содержит шифрованные данные о связке (bindingId), вместо запроса paymentorder.do для оплаты следует использовать запрос paymentOrderBinding.do.