Web SDK Core
Библиотека за формиране на криптограми по данни, получени от платежната форма. Библиотеката формира отговор асинхронно. За получаване на резултата се използва callback.
Използва се от продавача на собствения му сайт. В библиотеката се предава списък от параметри на платежната форма (mdOrder, pan, expiry и др.), а на изхода се получава готова за предаване на backend на acquiring криптограма.
Пример за използване
<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 'Cfqv4t2XHBb9k8ixM7jxxCvziETS4koa3bV3F0QUvGVY47nKyMBqjGzV%2FrvmCAw6KzwoBDzeLsqwBLEzvQhaF627ZS0OJnhttBi4fL3%2Fh%2FsBSwFtxr3s%2BoVUeoE3e4SNVUq9vciinOyNCIKqfpeQya%2BpOUYt3MgrtSeu66Ar12XEj4k6lecZN7Ffquj9RqhZsYhP63np5VCxJR90cNQG%2BTMWIFU6rqxLAe4gzCJtcXNrPT8aDOI201Zwd%2Be4K1YnrI7dZGlibO7MVMPB9m7NJaJTHko%2FMiJNWumAjS4yDDovLraIKMwOFTvAhqXsHslthpcUO0GZXEIaDRgERD7%2Bjw%3D%3D' \
--data-urlencode 'userName=tm-api' \
--data-urlencode 'password=XXXXXXX'