Web SDK Core
Библиотека за формиране на криптограми по данни, получени от платежната форма. Библиотеката формира отговор асинхронно. За получаване на резултата се използва callback.
Използва се от търговеца на собствения му сайт. В библиотеката се предава списък от параметри на платежната форма (mdOrder, pan, expiry и др.), а на изхода се получава готова за предаване на backend на еквайринга криптограма.
Пример за използване
<script src="https://uat.dskbank.bg/payment/modules/card-kit-core/card-kit-core.js"></script>
<script>
window.CKCToken.generateWithCard(
{
pan: '4111111111111111',
cvc: '123',
expiryMMYY: '12/24',
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
},
]
}Пример за заявка за извършване на плащане с генерирана криптограма
curl --location --request POST 'https://uat.dskbank.bg/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 'seToken=Cfqv4t2XHBb9k8ixM7jxxCvziETS4koa3bV3F0QUvGVY47nKyMBqjGzV%2FrvmCAw6KzwoBDzeLsqwBLEzvQhaF627ZS0OJnhttBi4fL3%2Fh%2FsBSwFtxr3s%2BoVUeoE3e4SNVUq9vciinOyNCIKqfpeQya%2BpOUYt3MgrtSeu66Ar12XEj4k6lecZN7Ffquj9RqhZsYhP63np5VCxJR90cNQG%2BTMWIFU6rqxLAe4gzCJtcXNrPT8aDOI201Zwd%2Be4K1YnrI7dZGlibO7MVMPB9m7NJaJTHko%2FMiJNWumAjS4yDDovLraIKMwOFTvAhqXsHslthpcUO0GZXEIaDRgERD7%2Bjw%3D%3D' \
--data-urlencode 'userName=tm-api' \
--data-urlencode 'password=XXXXXXX'