Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Загальна інформація про створення карток 

...

  • В запит на створення фрейму (створення токену з кроку 1) потрібно передати параметр enableRedirectResponse: true
  • Після того, як користувач введе дані картки та натисне кнопку збереження, у фреймі буде створено токен карти і після цього буде зроблений 302 редірект фрейму, який буде містити в URL відповідь на запит від системи UAPAY. А в мобільному додатку потрібно додати обробник на подію "редірект" для отриманняя даних по карті.

    Приклад отриманого редіректу: 

    1) Для методу "createCard":

    Code Block
    languagexml
    https://addcardaddcards.demo.uapay.ua/success?payload=FFHV5W9sKTeUopktwnhMF1FRCcMna7FGBV98RN4g2BQZJJC7YxXhHtqV7oTUhTKGJKGvgA4Gh4Mmf2AFFPAP5mSGht1tK6Nb7A5imEzDiqVYhrqXtSexmGkNv3syNj5vULqzMa

    де:
    payload - дані по карті, закодовані в base58 (треба розкодувати)

    Приклад розкодованого payload

    Code Block
    languagexml
    {  
       "id":"c45b0a87-3af4-4cd1-9466-252acc8d1c29",
       "cvv":"123",
       "panMasked":"123456*7890"
    }

    де:

    Параметр

    ОписТипПриклад
    id

    id щойно створеної картки

    STRING"c45b0a87-3af4-4cd1-9466-252acc8d1c29"
    cvv

    CVV2\CVC код картки

    STRING"123"
    panMasked

    замаскований пан картки

    STRING

    "123456*7890"


    2) Для методу "createShortCard":

    Code Block
    languagexml
    https://addcardaddcards.demo.uapay.ua/success?payload=6vUVcDK623kYcyVux2WuRxmsTRwB8FEfUmjNtb3n3XW9oESnsHeZ2yMnJ2iXuq16xiy2ic5pFk7FoWhezWLfmw44khFrnhNowczB55zDh41Fevx

    де:
    payload - дані по карті, закодовані в base58 (треба розкодувати))

    Приклад розкодованого payload

    Code Block
    languagejs
    {  
       "id":"c45b0a87-3af4-4cd1-9466-252acc8d1c29"
       "panMasked":"123456*7890"
    }

    де:

    Параметр

    ОписТипПриклад
    id

    id щойно створеної картки

    STRING"c45b0a87-3af4-4cd1-9466-252acc8d1c29"
    panMasked

    замаскований пан картки

    STRING

    "123456*7890"


...

  • В запит на створення фрейму (створення токену з кроку 1) потрібно передати параметр enableRedirectResponse: false
  • Після того, як користувач введе дані картки та натисне кнопку збереження, у фреймі буде створено токен карти і після цього фрейм відправить назовні подію "message", в якій буде міститися відповідь на запит від системи UAPAY. А на сторінці потрібно додати обробник на подію "message" для отриманняя даних по карті:

    Code Block
    languagexml
    <script>
        function listener(event) {
            // Ввімкнути перевірку на production середовищі
            /*if(event.origin !='https://addcardaddcards.uapay.ua'){
                return;
            }*/
    
            if (event.data) {
                if (event.data.name === 'Success') { //{name: 'Success', payload: '2zNu7MwoGaztBeJNjNA5rmyos2aq6mrcrb2zst6AFPVfNscFNTt8C8ZJF2qAskcLUuQKU9B2BUe5xLPH5KqkDWaECVSQjPdPYuCERRH7tnhzZGmen8'}
                    alert('payload: ' + event.data.payload);
                    console.log('event.data.payload');
                } else if (event.data.name === 'Error') { //{name: 'Error', code: 'TIMEOUT_ERROR'}
                    alert('Error: ' + event.data.code);
                }
            }
        }
        window.addEventListener("message", listener, false);
    </script>


    Отримання відповіді

    Після успішного створення картки отримаємо на обробник подіі "message" у змінну event отримаємо таку відповідь:
    1) Для методу "createCard" (створення повної картки з cvv):

    Code Block
    languagexml
    {
        "name": "Success",
        "payload": "FFHV5W9sKTeUopktwnhMF1FRCcMna7FGBV98RN4g2BQZJJC7YxXhHtqV7oTUhTKGJKGvgA4Gh4Mmf2AFFPAP5mSGht1tK6Nb7A5imEzDiqVYhrqXtSexmGkNv3syNj5vULqzMa"
    }

    Де:

    Параметр

    ОписТипПриклад
    name

    Коротке повідомлення про успіх або помилку при виконанні запиту.

    "Success" - запит виконано успішно,

    "Error" - сталась помилка при виконанні запиту

    STRING"Success" або "Error"
    payload

    дані створеної картки, закодовані у base58

    STRING

    "2zNu7MwoGaztBeJNjNA5rmyos2aq6mrcrb2zst6AFPVfNscFNTt8C8ZJF2qAskcLUuQKU9B2BUe5xLPH5KqkDWaECVSQjPdPYuCERRH7tnhzZGmen8"



    Розшифровка відповіді

    Після розкодування payload з base58 ми отримаємо дані створеної картки:

    Code Block
    languagexml
    {
        "id": "01afbcfc-a44e-47f7-886b-673bc6f2573d",
        "cvv": "123",
        "panMasked": "411111*1111"
    }

    де:

    Параметр

    ОписТипПриклад
    id

    id щойно створеної картки

    STRING"01afbcfc-a44e-47f7-886b-673bc6f2573d"
    cvv

    CVV2\CVC код картки

    STRING"123"
    panMasked

    замаскований пан картки

    STRING

    "411111*1111"



    2) Для методу "createShortCard" (створення картки без cvv):

    Code Block
    languagexml
    {
        name: "Success",
        payload: "QtDZHvcnhSoxHr1LxrNdg64iei966jYsX9465pqh82k5Q6TQhdhuLh4oy2F82WydxBa94L4ga1JSEELQn8AEU11qi98FigGAp"
    }

    Де:

    Параметр

    ОписТипПриклад
    name

    Коротке повідомлення про успіх або помилку при виконанні запиту.

    "Success" - запит виконано успішно,

    "Error" - сталась помилка при виконанні запиту

    STRING"Success" або "Error"
    payload

    дані створеної картки, закодовані у base58

    STRING

    "QtDZHvcnhSoxHr1LxrNdg64iei966jYsX9465pqh82k5Q6TQhdhuLh4oy2F82WydxBa94L4ga1JSEELQn8AEU11qi98FigGAp"



    Розшифровка відповіді

    Після розкодування payload з base58 ми отримаємо дані створеної картки:

    Code Block
    languagexml
    {
        "id":"138ebdb9-3544-4e63-a2d9-bf20e0e9a116",
        "panMasked":"411111*1111"
    }


    де:

    Параметр

    ОписТипПриклад
    id

    id щойно створеної картки

    STRING"138ebdb9-3544-4e63-a2d9-bf20e0e9a116"
    panMasked

    замаскований пан картки

    STRING

    "411111*1111"


...