Інтеграція з GooglePay: відмінності між версіями
Немає опису редагування |
Немає опису редагування |
||
(Не показані 4 проміжні версії цього користувача) | |||
Рядок 70: | Рядок 70: | ||
Перед цим потрібно викликати метод EasyPayApi [[MerchantAPI#Реєстрація точки та створення сесії|createApp.]] | Перед цим потрібно викликати метод EasyPayApi [[MerchantAPI#Реєстрація точки та створення сесії|createApp.]] | ||
'''Приклад запиту''' | '''Приклад запиту''' | ||
<p style="border: 1px solid #9ACD32; background-color: rgba(144, 238, 144, 0.5); padding: 10px; border-radius: 8px; font-family: Arial, sans-serif; font-size: 14px; font-weight: normal; position: relative; padding-left: 80px;"> | <p style="border: 1px solid #9ACD32; background-color: rgba(144, 238, 144, 0.5); padding: 10px; border-radius: 8px; font-family: Arial, sans-serif; font-size: 14px; font-weight: normal; position: relative; padding-left: 80px;"> | ||
<span style="position: absolute; top: 10px; left: 10px; background-color: #006400; color: white; padding: 2px 12px; border-radius: 4px; font-size: 14px; font-weight: bold;">POST</span> | <span style="position: absolute; top: 10px; left: 10px; background-color: #006400; color: white; padding: 2px 12px; border-radius: 4px; font-size: 14px; font-weight: bold;">POST</span> | ||
Рядок 90: | Рядок 90: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
<div style="width: 100%; display: flex; justify-content: space-between; gap: | <div style="width: 100%; display: flex; justify-content: space-between; gap: 16px; box-sizing: border-box; padding: 8px 0;"> | ||
<!-- Ліва кнопка --> | <!-- Ліва кнопка --> | ||
<div style=" | <div style=" | ||
position: relative; | |||
flex: 1; | flex: 1; | ||
min-width: | min-width: 150px; | ||
background: rgba(135, 206, 250, 0.1); | background: rgba(135, 206, 250, 0.1); | ||
padding: 14px | padding: 8px 14px; | ||
border-radius: | border-radius: 8px; | ||
border: 1px solid #007BFF; | border: 1px solid #007BFF; | ||
color: #007BFF; | color: #007BFF; | ||
font-weight: bold; | font-weight: bold; | ||
font-size: | font-size: 1em; /* пропорційний розмір */ | ||
display: flex; | display: flex; | ||
align-items: center; | align-items: center; | ||
Рядок 108: | Рядок 110: | ||
cursor: pointer; | cursor: pointer; | ||
"> | "> | ||
[[Інтеграція з | <!-- Текст у кутку --><span style="position: absolute; top: 6px; left: 8px;">← Назад</span> | ||
<!-- Основний текст --> | |||
<br> | |||
[[Інтеграція з ApplePay]] | |||
</div> | </div> | ||
<!-- Права кнопка --> | <!-- Права кнопка --> | ||
<div style=" | <div style=" | ||
position: relative; | |||
flex: 1; | flex: 1; | ||
min-width: | min-width: 150px; | ||
background: rgba(135, 206, 250, 0.1); | background: rgba(135, 206, 250, 0.1); | ||
padding: 14px | padding: 8px 14px; | ||
border-radius: | border-radius: 8px; | ||
border: 1px solid #007BFF; | border: 1px solid #007BFF; | ||
color: #007BFF; | color: #007BFF; | ||
font-weight: bold; | font-weight: bold; | ||
font-size: | font-size: 1em; /* пропорційний розмір */ | ||
display: flex; | display: flex; | ||
align-items: center; | align-items: center; | ||
Рядок 127: | Рядок 135: | ||
cursor: pointer; | cursor: pointer; | ||
"> | "> | ||
[[Створення | |||
</div> | |||
<span style="position: absolute; top: 6px; right: 8px;">Далі →</span> | |||
<!-- Основний текст --> | |||
[[Створення підпису]] | |||
</div> | |||
</div> | </div> |
Поточна версія на 12:45, 14 серпня 2025
Загальні вимоги
- Ваш сайт повинен працювати за схемою HTTPS та підтримувати протокол TLS 1.2.
- Потрібно погодитися з умовами надання послуг GooglePay.
- Необхідно укласти договір із Easypay.ua.
Документація
Вимоги щодо брендування
Оплата з платіжної сторінки Easypay
При такому способі підключення немає потреби у додаткових інтеграціях. Кнопка GooglePay відображається на сторінці оплати EasyPay.
Отримання токена GooglePay для оплати
*Використовуйте бойове середовище GooglePay для отримання PaymentData
Для отримання PaymentData. Як параметри скрипта вкажіть:
- Доступні методи платежу:
var allowedPaymentMethods = ['CARD', 'TOKENIZED_CARD']
; - Тип токенізації -
PAYMENT_GATEWAY: tokenizationType: 'PAYMENT_GATEWAY'
; - Параметр gateway: easypay;
- Параметр gateway MerchantId: Ваш бойовий merchantAccount от Google, який повідомляє в EasyPay.
Якщо з вашого боку інтеграція виконана правильно, Ви на своєму сайті/додатку отримаєте кнопку
Після натискання кнопки на пристрої з підключеним Google Pay з'явиться спливаюче вікно або форма вибору прив'язаної картки.
Приклад відповіді від GooglePay Api
{
"apiVersionMinor":0,
"apiVersion":2,
"paymentMethodData":{
"description":"Mastercard •••• 1164",
"tokenizationData":{
"type":"PAYMENT_GATEWAY",
"token":"{"signature":"MEUCeretMPEQPUMnvMOnDAgZsOLVnFnfjmo5ALe/1D6o7hdzAiEA94L1GfNWW84kbUdHHn+l6B6n18VgIA3sdkPqKL36tqk\u003d","intermediateSigningKey":{"signedKey":"{\"keyValue\":\"MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEem3biYxltOBuMV+Dd9g+ZhV3VEzP2vAlFXvb9tJoYGLtetxDYWTUqnXPvKGDeAnSNrkPo8hu5kLtxN0QXCYkqQ\\u003d\\u003d\",\"keyExpiration\":\"1551385212256\"}","signatures":["MEYCIQD/TWKunZJhG/u3iL2H5P3i9r0rCbpw1/+z9dr/yGytvwIhAPfV2zF5cqP/L+42W+JKv6fgQKBEc67HTtfderefdghJ"]},"protocolVersion":"ECv2","signedMessage":"{\"encryptedMessage\":\"OidSptk8w+I3FnR1VFmiVswXaZ7ADnmMP1MQelp6GSg0/3aVpAXeLRH/fT1wN7gpxNPy7tFITeQenrJm3QG19tAPuVhcAVM26DMU6LAmZPyPXALktpnYrUj6etCjvWWM/1LkhjDBSjtkmpWRiHIyqj5aud/j8rxFEk06GhwqPWbnJwdCgNf32LJP7bSpUWvHOioaZIV1vdeV6d7iQ6EDWWAS/z9pXWkqpW//M/TVTrcKFXh4C2TI2O+qyBD9VzK3TqU6wS5VsYL69W9/4xzV5L5irpp/wzNfPHkJd8QIwcsIPuNWBtGm3v+JCaqIA3oK9Sw/5o/gZp/pnOhUdax0VjGEvmbGXs2+ufBChCkh+/BpobbpzVS9T/DZSlUO2FLANMjSaEQzh74ymtDgP4x9O64RAdySW+V7lVZMa7FVZ3PFnTfa8W89pzIgo6ocSGHQPBFnExTmSbDpUU0L12wzHkAcZSyngPAljqg\\u003d\",\"ephemeralPublicKey\":\"BBKgbSbykNy1111QYRmGJEhnCorkt+VoDYlYbAlg0a5WO2uV/M50XqOSG0uxWAvUqrZolQuEX6yZ+dvvufLEZtI\\u003d\",\"tag\":\"p9ItvOfsQVTzhTPHq6ycYjKX1TtozP/yym4QWWVRVCk\\u003d\"}"}"
},
"type":"CARD",
"info":{
"cardNetwork":"MASTERCARD",
"cardDetails":"1164",
"billingAddress":{
"phoneNumber":"+380 93 000 00 11",
"address3":"",
"sortingCode":"",
"address2":"",
"countryCode":"UA",
"address1":"ул. ",
"postalCode":"49107",
"name":"Super 1",
"locality":"Київ",
"administrativeArea":"Київська область"
}
}
},
"email":"test@easypay.ua"
}
Передача токена для оплати
Надішліть дані з поля token з відповіді від GooglePay Api у поле userPaymentInstrument/token у Easypay (розділ Створення замовлення)
Перед цим потрібно викликати метод EasyPayApi createApp.
Приклад запиту
POST /api/merchant/createOrder
{
"order":{
"serviceKey":"MERCHANT-TEST",
"orderId":"test_20210000-171148",
"description":"Test payment",
"amount":"1"
},
"userPaymentInstrument":{
"instrumentType":"GooglePay",
"token":"{\"signature\":\"MEQCIFTFadYw15Cqfk7+YiM9pp5zEvyTI7oWVZCNFKr1cMthAiAFMv+nt0PWOEhj6LmmMNTByP9E4OhGrSoE7rDvzLDIZw\\u003d\\u003d\",\"intermediateSigningKey\":{\"signedKey\":\"{\\\"keyValue\\\":\\\"MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEsrkMsOBN8N0xL8AsTVUIETODhCva5PpGFxvPm56pWmI5MG2HKKHXjsdhdvcP6N3d40x90E0rZzDrxBC2ywERXg\\\\u003d\\\\u003d\\\",\\\"keyExpiration\\\":\\\"1618591579000\\\"}\",\"signatures\":[\"MEUCIHX0SawuKctPUEjdFu2sDiE81aSSdf8i0KNvdg1dlsWoAiEAye8TEWpPk4sp7EjTovN7DichK6YxY1DajYN9/ArHDYI\\u003d\"]},\"protocolVersion\":\"ECv2\",\"signedMessage\":\"{\\\"encryptedMessage\\\":\\\"vlLmhIBndM4a/GWFsvbFZrZOygjAwUao/NlvlJlhAQ3kdprI3gubAcQxAau8L74dkzGJh8w7AD2E77XOHycdwG91NUvsJ0xiXuMCXHJ9NPMhp7k49OUIJjOpJG+RqUM9/SPBgx69eDD7skhG+axZYr/m36LFjIlk5WhmumQgIrfojm02uRm0nOcZ2wbvrwQKZyL1IeTv/txqcYMuQqYWzs/FPkIEbiQ80z6dRhVszrEXcHLKcfBmNmcn/Vk90ArXCotOD52V0JS/Q+Mf9mCoe9G2bABo9R9PAYT/FrKIEOQEhzLCI7m4/vyIlCMf69d6PjigP3AOGxykbS0Kvsxqoh+HYRFCSLCd+8O2Us2wCYD09/OBqcQi78/fs2vwyg4nrWQQJ6ZGwTKHHxVRY8VGAUUnMFr18HPsN1BQNuz08M4t6Qx6X0nEZ3hseSIcUMVcBm+NyvL2T/XSWqTh2poDuQ4B+UJ59gMrsPapzouxk2iC/+vS1Bs/2sSf77Nsqr7BhE7SMgnZ/a2LF+Shx2aOKSIGflMz+MjVSzpMg2AUh43pbcsi8g\\\\u003d\\\\u003d\\\",\\\"ephemeralPublicKey\\\":\\\"BDJpYzoN9XPVKrHIxwNes83HbR0/AOUPpQgAwi3fTzR+TIB8/VAc9CdI9guWX8Pjvii/T+WxwcByuo9pzJC7518\\\\u003d\\\",\\\"tag\\\":\\\"LFOOTwd5Crtn60KnT0J6MHuFlGE0+EYL3D7IrWrPsRA\\\\u003d\\\"}\"}",
}
}
← Назад
Інтеграція з ApplePay
Далі →
Створення підпису