Skip to main content

Платіжний шлюз Portmone.com

Терміни та визначення

ТермінВизначення
Мерчант, Інтернет-магазин або ПартнерОрганізація, що уклала договір з Portmone.com про надання послуг з приймання платежів
Покупець, КлієнтВідвідувач Інтернет-магазину Мерчанта з метою ознайомлення з асортиментом товарів (послуг) та здійснення покупки
Картка, Платіжна карткаПлатіжні картки міжнародних платіжних систем Visa, Mastercard та Національної платіжної системи ПРОСТІР
АвторизаціяПроцес надання прав доступу або інших повноважень Покупцеві, програмі або процесу
Рекурентні платежіАвтоматичні платежі (не потребують участі клієнта та повторного введення реквізитів картки), що здійснюються за згодою клієнта
ТокенЦифровий ідентифікатор картки, що генерується при першій операції і далі використовується для швидкої оплати. Токен може використовуватись виключно для повторення аналогічної транзакції, що й при першій оплаті
SHOPBILLIDІдентифікатор транзакції (платіжного документу) у системі Portmone.com
CVV2/CVC2CVV2 (Card Verification Value 2) – тризначний код перевірки дійсності картки платіжної системи Visa. Платіжна система Mastercard має аналогічний код перевірки дійсності – CVC2 (Card Validation Code 2)
Банк-еквайрБанк, що організовує точки приймання банківських карток (термінали, банкомати) та здійснює весь комплекс фінансових операцій, пов'язаних з виконанням розрахунків і платежів за банківськими картками в цих точках
Банк-емітент банківських картокБанк, що є учасником платіжної системи та здійснює випуск (емісію) та обслуговування банківських карток
3-D Secure3-D Secure – це протокол, який використовується для забезпечення додаткового рівня безпеки онлайн-платежів з використанням банківських карток
IBANМіжнародний номер банківського рахунку (англ. International Bank Account Number)
МПСМіжнародна платіжна система

1. Технологія приймання оплат

Опис механізму приймання оплат платіжними картками на Інтернет-сайті магазину:

  1. Покупець обирає товар на сайті (або у мобільному додатку) Магазину, формує замовлення та обирає форму оплати за платіжними картками.
  2. Магазин переадресує Покупця на авторизаційний сервер системи Portmone.com, з передачею ряду необхідних параметрів (ідентифікатор партнера у системі Portmone.com, номер замовлення, його сума тощо).
  3. Авторизаційний сервер Portmone.com встановлює з Покупцем з'єднання за захищеним протоколом (TLS 1.2), перевіряє дані, що отримані від Магазину.
  4. Сайт Portmone.com приймає від Покупця параметри його платіжної картки та забезпечує авторизацію картки.
  5. При використанні верифікації Картки за технологією 3-D Secure Portmone.com спрямовує Клієнта на сайт банку-емітенту Картки для підтвердження транзакції.
  6. Запит на авторизацію передається через закриті банківські мережі банку-емітенту Карти Покупця або процесинговому центру, що уповноважений банком-емітентом.
  • Банк передає авторизаційному серверу Portmone.com позитивний результат авторизації.
  • Авторизаційний сервер Portmone.com перевіряє криптографічну цілісність інформації, що отримана, та вносить інформацію до бази даних.
  • Portmone.com переадресовує Клієнта на сторінку Інтернет-магазину для підтвердження успішної оплати.
  • Магазин перевіряє статус транзакції у системі Portmone.com та відпускає товар (надає послугу).
  • Portmone.com у зазначені в договорі терміни здійснює перерахування коштів на рахунок Магазину (за мінусом комісії за еквайринг) одним платежем, що покриває всі транзакції за вказаний день.
  1. При неуспішній авторизації картки (відмові у авторизації):
  • Банк передає авторизаційному серверу Portmone.com відмову від проведення платежу.
  • Авторизаційний сервер Portmone.com перевіряє криптографічну цілісність інформації, що отримана, та вносить інформацію до бази даних.
  • Portmone.com переадресовує запит на сторінку Інтернет-магазину для неуспішної оплати.
  1. При успішній оплаті на сторінку Інтернет-магазину передається методом POST номер сплаченого замовлення та дані платежу.
  2. Інтернет-магазин повинен додатково проконтролювати статус та суму замовлення одним з методів, що наведені у розділі 8 "Отримання результатів авторизації".

2. Тестовий режим роботи

Тестовий режим роботи платіжного шлюзу означає, що система Portmone.com виконує усі перевірки коректності введених даних від Інтернет-магазину та його клієнта, формує замовлення, але авторизація платіжної картки не виконується. При цьому шлюз може видавати бажану відповідь (успішну або неуспішну), в залежності від того, що необхідно співробітникам Інтернет-магазину, які займаються підключенням.

Для того, щоб увімкнути чи вимкнути тестовий режим платіжного шлюзу, необхідно направити відповідного листа з зареєстрованої адреси електронної пошти менеджерам Portmone.com по співпраці з Інтернет-магазинами на адресу [email protected].

Система Portmone.com надає партнерам два варіанти тестування:

1. Тест успішної оплати

Для отримання успішної відповіді на стандартній сторінці оплати Portmone.com необхідно ввести такі реквізити платіжної картки:

Номер картки: 4444333322221111 Термін дії: Будь-яка дата не раніше поточного дня. CVV2-код: Будь-який

2. Тест неуспішної оплати

Для отримання помилки на стандартній сторінці оплати Portmone.com необхідно ввести такі реквізити платіжної картки:

Номер картки: 4111111111111111 Термін дії: Будь-яка дата не раніше поточного дня. CVV2-код: Будь-який

Важливо! Перед запуском в роботу системи приймання платежів переконайтеся, що тестовий режим відключений!

3. Оплата замовлення

3.1. POST запит

Опис:

Для приймання оплат за Платіжними картками необхідно передати запит методом POST на сторінку платіжного шлюзу – https://www.portmone.com.ua/gateway/.

Доступність і обмеження:

Немає обмежень.

Структура запиту:

Будь ласка, зверніться до "3.1 Запит оплати замовлення методом POST" для вивчення структури запиту.

Опис параметрів запиту:

ПараметрОписОбов’язковийЗначення
payee_idІдентифікатор Інтернет-магазинуТакНадається кожному Партнерові індивідуально при підключенні до системи Portmone.com
shop_order_numberНомер замовлення (рахунку), що сплачується, у Інтернет-магазині. До 120 символів. Номер рахунку повинен бути унікальним у межах одного замовлення. Якщо замовлення з цим номером рахунку вже було сплачене, система Portmone.com відхилить транзакціюНіДо 120 символів
bill_amountСума замовлення. Валюта – гривні. Дробова частина відокремлюється символом крапки “.”ТакНаприклад: 1.50
bill_currencyВалюта проведення платежуНіМожливі значення: UAH, USD, EUR, GBP, PLN, KZT (значення без задання – UAH)
descriptionКоментар до замовлення/ опис призначення оплатиНіДо 250 символів
success_urlАдреса Інтернет-магазину (внутрішній URL мобільного додатку), на яку буде спрямовано Клієнта після успішного завершення платежу. Після успішної оплати замовлення на цю адресу методом POST Portmone.com надішле номер замовлення shop_order_number та дані платежу. За фактом виклику цієї сторінки на сайті Інтернет-магазину можна виконати звірення статусу і суми транзакції в системі Portmone.com. Нижче описані ці процедури (див. розділ 8 «Отримання результатів авторизації»)НіНаприклад: http://example.com/success.html
failure_urlАдреса Інтернет-магазину, на яку буде спрямовано Клієнта у разі скасування оплатиНіНаприклад: http://example.com/failure.html
langМова інтерфейсу платіжної системиНіuk – українська мова, en – англійська,
encodingКодуванняНіБез задання – UTF-8
preauth_flagВстановлює режим преавторизації, коли кошти тільки блокуються на картці клієнта, але фінансового списання з рахунку Клієнта не відбуваєтьсяНі"Y" – вмикає режим преавторизації, "N" – вимикає режим (значення без задання — "N")
attribute1-4Службове полеНіЗаповнюється на розсуд компанії
attribute5Використовується для передачі параметрів розщеплення платежу (див. розділ 7 «Розщеплення платежу»)НіЗаповнюється у форматі:
Desc1:payeeID1;amount1;
Desc2:payeeID2;amount2;
де Desc1 – опис замовлення для першої компанії-одержувача,
payeeID1 – ID першої компанії-одержувача,
amount1 – сума, яка повинна піти на першу компанію,
Desc2 – опис замовлення для другої компанії-одержувача,
payeeID2 – ID другої компанії-одержувача,
amount2 – сума, яка повинна піти на другу компанію.
Кількість компаній для розщеплення обмежена тільки довжиною рядку (до 500 символів)
exp_timeВстановлює інтервал, протягом якого замовлення може бути оплачене. Якщо значення параметру було передане, то з моменту виклику платіжної сторінки показується зворотний відлік, який видно Клієнту на сторінці оплати. По закінченню часу на оплату рахунок переходить в статус "REJECTED" і оплатити його неможливоНіЗаповнюється в секундах

Структура відповіді:

Будь ласка, зверніться до "3.1 Приклад відповіді шлюзу у разі успішного здійснення платежу для запиту методом POST" для вивчення структури відповіді.

Опис параметрів відповіді:

ПараметрОпис
SHOPBILLIDІдентифікатор транзакції (платіжного документу) у системі Portmone.com
SHOPORDERNUMBERНомер замовлення (рахунку) у системі Інтернет-магазину. До 120 символів
APPROVALCODEКод авторизації
BILL_AMOUNTПередана у запиті сума транзакції
TOKENЗначення Токену для подальших оплат
RESULTРезультат виконання операції (у разі успіху = 0)
CARD_MASKМаска Картки платника
ATTRIBUTE1Службове поле, заповнюється на розсуд компанії
ATTRIBUTE2Службове поле, заповнюється на розсуд компанії
ATTRIBUTE3Службове поле, заповнюється на розсуд компанії
ATTRIBUTE4Службове поле, заповнюється на розсуд компанії
RECEIPT_URLПосилання для отримання квитанції
LANGМова інтерфейсу платіжної системи. Можливі значення: uk – українська мова, en – англійська
DESCRIPTIONКоментар до замовлення/ опис призначення оплати. До 250 символів
ERRORIPSCODEКод помилки, якщо токен Visa не був створений
ERRORIPSMESSAGEТекст помилки, якщо токен Visa не був створений

3.2. Запит у форматі JSON

Опис:

Для проведення оплати необхідно надіслати запит на URL: https://www.portmone.com.ua/gateway/.

Доступність і обмеження:

Немає обмежень.

Структура запиту:

Будь ласка, зверніться до "3.2 Запит оплати замовлення у форматі JSON" для вивчення структури запиту.

Параметри для формування JSON-структури запиту:

  1. payee – блок, що необхідний для ідентифікації партнера
ПараметрОписОбов’язковий
payeeIdІдентифікатор Інтернет-магазину. Надається кожному Партнерові індивідуально при підключенні до системи Portmone.comТак
loginЛогін компанії. Використовується при перевірці підпису (необхідний, якщо переданий параметр signature)Так
dtЧас створення запиту. Використовується при перевірці підпису (необхідний, якщо переданий параметр signature)Так
signatureПідпис запитуТак
shopSiteIdЦифровий ідентифікатор каналу продажуНі
  1. order – блок, що містить опис платежу
ПараметрОписОбов’язковий
descriptionОпис платежу (коментар до замовлення/призначення оплати)Ні
shopOrderNumberНомер замовлення, що сплачується, у системі ПартнераНі
billAmountСума платежуТак
successUrlАдреса Інтернет-магазину, на яку буде спрямовано клієнта після успішної оплатиНі
failureUrlАдреса Інтернет-магазину, на яку буде спрямовано клієнта у разі скасування оплатиНі
preauthFlagОзнака преавторизації платежу (значення "Y" вказує на те, що ця оплата здійснюється з використанням процедури преавторизації (див. розділ 6 «Платежі з преавторизацією»), значення "N" – звичайна оплата без преавторизації)Ні
preauthConfirmДата автоматичного списання заблокованих коштів для платежів з преавторизацією. Може використовуватись, якщо у запиті переданий параметр preauthFlag=Y. Передається у форматі: YYYYMMDDHH24MISS (дата та час, після якого преавторизація підтверджується автоматично). Не може бути менше поточної дати.Ні
preauthRejectДата автоматичного скасування преавторизації. Може використовуватись, якщо у запиті переданий параметр preauthFlag=Y. Передається у форматі: YYYYMMDDHH24MISS (дата та час, після якого преавторизація скасовується автоматично). Не може бути менше поточної дати.Ні
billCurrencyВалюта проведення платежу. Значення без задання: UAHНі
expTimeВстановлює інтервал, протягом якого замовлення може бути оплачене. Якщо значення параметру було передане, то з моменту виклику платіжної сторінки показується зворотний відлік, який видно Клієнту на сторінці оплати. По закінченню часу на оплату рахунок переходить в статус "REJECTED" і оплатити його неможливоНі
encodingКодування (кодує текст запиту з встановленого кодування у UTF-8)Ні
attribute1Службове поле, заповнюється на розсуд компаніїНі
attribute2Службове поле, заповнюється на розсуд компаніїНі
attribute3Службове поле, заповнюється на розсуд компаніїНі
attribute4Службове поле, заповнюється на розсуд компаніїНі
attribute5Використовується для передачі параметрів розщеплення платежу (див. розділ 7 «Розщеплення платежу»)Ні
  1. paymentTypes – дозволяє обрати способи проведення платежів (Y – вмикати, N – не вмикати). Якщо параметри не задані, тоді використовуються способи платежів, що закріплені за Інтернет-магазином у налаштуваннях Portmone.com, або вмикаються два основні способи проведення платежів: "card", "portmone".
ПараметрОписОбов’язковий
cardОплата КарткоюНі
portmoneОплата через гаманець Portmone.comНі
tokenОплата за Токеном (у разі активації цього параметру, інші способи не відображаються)Ні
clicktopayОплата за допомогою Visa Click to PayНі
privatОплата через систему LiqPay, з вибором картки з Інтернет-банкінгу Приват24.
Зверніть увагу! При оплаті через Приват24 функціонал преавторизації не працює
Ні
gpayОплата через систему Google Pay, з вибором картки з тих, що були раніше збережені в акаунті Google PayНі
createtokenonlyСтворення Токену для проведення платежів за Токеном (у разі активації цього параметру, інші способи не відображаються). Параметр надає можливість отримати Токен Картки без проведення реальної оплати (на рахунку блокується 1 грн, яка повертається протягом 30 хвилин). Підходить для звичайних оплат на користь Інтернет-магазину (див. розділ 4 «Оплата замовлення з використанням платіжного токену»), а також для подальшого використання у рамках платежів з картки на картку (див. розділ 5 «Переказ з картки на картку»)Ні
gpayonlyОплата через систему Google Pay, з вибором картки з тих, що були раніше збережені в акаунті Google Pay (у разі активації цього параметру, інші способи не відображаються – на сторінці оплати відображається тільки кнопка "Оплатити через GPay")Ні
applepayОплата через систему Apple Pay, з вибором картки з тих, що були раніше збережені в акаунті Apple PayНі
applepayonlyОплата через систему Apple Pay, з вибором картки з тих, що були раніше збережені в акаунті Apple Pay (у разі активації цього параметру, інші способи не відображаються – на сторінці оплати відображається тільки кнопка "Apple Pay")Ні
kyivstarОплата з балансу мобільного рахунку Київстару (тільки для передплачених номерів)Ні
installmentРозстрочка платежуНі
linkОплата методом BankPay (через застосунок Банка платника). Метод працює за умови передачі таких параметрів: expTime та "showEmail": "Y"Ні

Зверніть увагу! Через внутрішні політики безпеки Google Pay та Apple Pay, при відкритті платіжної сторінки у WebView, гаманці Google Pay та Apple Pay можуть працювати нестабільно.
Для коректної роботи рекомендуємо пряму інтеграцію Google Pay та Apple Pay У разі наявності застосунку рекомендуємо інтегрувати SDKiOS, SDKAndroid

  1. installmentPlan – цей блок дозволяє керувати розстрочками платежів. Якщо параметри не задані, але в блоці paymentTypes переданий параметр installment=Y, будуть відображені всі доступні типи розстрочки зі стандартними налаштуваннями.

Щоб була можливість вказувати кількість місяців розстрочки за платника необхідно додати блок installmentPlan наступний масив:

"installmentPlan": {
"privat24": {
"parts": "3"
},
"oschad": {
"parts": "5"
},
"monobank": {
"parts": "8"
}
}
ПараметрОписОбов’язковий
privat24Оплата частинами від ПриватБанкуНі
oschadОплата частинами від ПриватБанкуНі
monobankОплата частинами від ПриватБанкуНі
partsДозволяє регулювати максимальну кількість місяців для розстрочкиНі

Розстрочка від Приват Банку

Для відображення розстрочки на сторінці оплати потрібно в блоці paymentTypes передавати параметр installment=Y і в блоці priorityPaymentTypes вказати порядок розташування методу, наприклад: "installment":"3"

Приклад сторінки оплати розстрочки від ПриватБанку

Приклад сторінки оплати розстрочки від ПриватБанк

Приклад оформлення оплати розстрочки від ПриватБанку

Приклад оформлення оплати розстрочки від ПриватБанку

Для підключення даного методу у мерчанта має бути відкритий рахунок в Приват Банку, а у платника картка.

Розстрочка від Монобанку

Для відображення розстрочки на сторінці оплати потрібно в блоці paymentTypes передавати параметр installment=Y і в блоці priorityPaymentTypes вказати порядок розташування методу, наприклад: "installment":"3"

Для можливості передачі номеру телефону платника потрібно в блоці payer передавати параметр phoneNumber=635337143 у форматі 635337143

Приклад сторінки оплати розстрочки від Монобанку

Приклад сторінки оплати розстрочки від Монобанку

Приклад оформлення оплати розстрочки від ПриватБанку

Приклад оформлення оплати розстрочки від Монобанку

Розстрочка від Ощадбанку

Для відображення розстрочки на сторінці оплати потрібно в блоці paymentTypes передавати параметр installment=Y і в блоці priorityPaymentTypes вказати порядок розташування методу, наприклад: "installment":"3"

Приклад оформлення оплати розстрочки від Ощадбанку

Приклад оформлення оплати розстрочки від Ощадбанку

  1. autopayment – цей блок дозволяє налаштувати функціонал автоматичних оплат.

Функціонал автоматичних оплат дає можливість Клієнтам підписатись на автоматичні списання коштів за графіком (щомісячно/щоквартально/щопівроку/щороку). Партнер може керувати параметрами підписки самостійно або надати можливість налаштування параметрів автоматичної оплати Клієнту.

Для початку роботи з автоматичними платежами Партнеру необхідно отримати credentials в Особистому кабінеті.

Зверніть увагу! При зміні паролю необхідно сформувати credentials заново.

Після налаштування:

  1. Буде створено підписку на виконання автоматичних оплат з Картки Клієнта. Portmone.com самостійно відстежує та проводить платіж. Клієнт може відключити послугу, звернувшись до підтримки Portmone.com або до співробітника Інтернет-магазину (Інтернет-магазин може самостійно видалити підписку Клієнта в Особистому кабінеті).

  2. Всі наступні оплати будуть виконуватись на той же опис (description), що і при першій оплаті.

  3. Номер замовлення для автоматичних оплат буде формуватись наступним чином:

    Номер замовлення при першій оплаті_RECURENT_Дата автоматичного списання

ПараметрОписОбов’язковий
showМожливість для клієнта бачити на сторінці оплати деталі підписки на автоматичну оплату. Приймає значення: Y – клієнт може перейти на окрему сторінку та подивитись параметри підписки; N – клієнт не має можливості бачити деталі підписки (відображається тільки чекбокс "Зробити платіж регулярним") (див. мал. 1)Ні
editМожливість для клієнта редагувати параметри автоматичної оплати. Приймає значення: Y – при переході на сторінку деталей підписки всі параметри можна редагувати, є можливість зберегти налаштування (див. мал. 2); N – відображаються параметри автоматичної оплати, що передані Інтернет-магазином, без можливості редагуватиНі
settingsБлок параметрів для налаштування автоматичної оплатиНі
credentialsПараметри авторизаціїТак
changeCheckboxStateЗначення автоплатежу *Y**Так
defaultCheckboxStateПриймає значення: Y – чекбокс "Зробити платіж регулярним" автозаповнений; N – клієнт самостійно заповнює чекбокс "Зробити платіж регулярним"Ні

Структура блоку settings:

ПараметрОписОбов’язковий
periodПеріодичність автоматичних списань. Приймає наступні значення:
1 – щомісячно, 2 – щоквартально, 3 – щопівроку, 4 – щороку
Так
payDateДень проведення автоматичного списання. Приймає значення від 1 до 28Ні
startDateДата початку автоматичних списань. Передається у форматі: DD.MM.YYYY. Якщо параметр не переданий, автоматично проставиться вчорашня датаНі
endDateДата закінчення автоматичних списань. Передається у форматі: DD.MM.YYYY. Якщо параметр не переданий, автоматично проставиться дата startDate + 3 роки (якщо startDate не задано – поточна дата платежу)Ні
amountСума автооплати. При наявності дробової частини використовується розділювач крапка (".")Так

Приклад сторінки оплати без відображення деталей підписки на автоматичну оплату

Мал. 1 – приклад сторінки оплати без відображення деталей підписки на автоматичну оплату

Приклад відображення параметрів автоматичної оплати з можливістю редагування

Мал. 2 – приклад відображення параметрів автоматичної оплати з можливістю редагування

  1. priorityPaymentTypes – цей блок дозволяє керувати розміщенням способів проведення платежів на сторінці. При значенні 0 навпроти методу оплати – вкладка з методом оплати не вмикається, інше по мірі зростання: 1 – до початку списку, 2 – на другій позиції, 3 – третя і т. д.

Важливо! У paymentTypes спосіб оплати повинен бути в значенні "Y", у priorityPaymentTypes – мати цифрове значення, що відмінне від 0 ("0" – вимикає відображення на сторінці оплати).

  1. token – налаштування для роботи з Токеном (див. розділ 4 «Оплата замовлення з використанням платіжного токену»)
ПараметрОписОбов’язковий
tokenFlagВмикає оплату за Токеном ("N" – не вмикати, "Y" – прийняти до уваги обробку даних)Обов’язковий параметр для оплати за Токеном
returnToken"Y" – вмикає опцію повернення Токена партнеру на сторінці успішної оплати, "N" або порожнє значення – не повертає Токен на сторінці успішної оплати партнераНі
tokenЗначення ТокенуОбов’язковий параметр для оплати за Токеном
cardMaskМаска КарткиОбов’язковий параметр для оплати за Токеном
otherPaymentMethodsДозволяє вмикати інші способи проведення платежу, коли переданий Токен ("N" – вимикає, "Y" – вмикає)Ні
  1. payer – блок описує налаштування платника
ПараметрОписОбов’язковий
langМова інтерфейсу платіжної сторінки. Можливі значення: uk – українська мова, en – англійськаНі
emailAddressАдреса електронної пошти платника (надсилаємо клієнту квитанцію про успішну оплату, не передаємо у відповідь на запит)Ні
showEmail"Y" або порожнє значення – вмикає відображення поля "e-mail" на сторінці оплати, "N" – приховує поле "e-mail" на сторінці оплати (значення без задання – "Y")Ні

В залежності від переданих значень параметрів emailAddress та showEmail можливі 4 варіанти відображення поля "e-mail" на сторінці оплати:

ВаріантemailAddressshowEmailВідображення на сторінці оплати
1порожнє значенняYВідображається порожнє поле вводу e-mail
2валідний
e-mail
YВідображається попередньо заповнене поле вводу e-mail з можливістю редагування
3порожнє значенняNПоле вводу адреси електронної пошти не відображається на сторінці оплати. При відкритті сторінки оплати не перевіряється, чи передана Мерчантом адреса електронної пошти та чи є вона валідною
4валідний
e-mail
NПоле вводу адреси електронної пошти не відображається на сторінці оплати. При відкритті сторінки оплати не перевіряється, чи передана Мерчантом адреса електронної пошти та чи є вона валідною. Однак e-mail, що переданий у запиті, обробляється і на нього надсилається квитанція про сплату
  1. shipping – блок, що містить інформацію про доставку
ПараметрОписОбов’язковий
servicesНайменування логістичних службТак
ukrposhtaЛогістична службаТак
deliveryTypesДоступні способи доставки: W2D – доставка кур'єром на адресу одержувача; W2W – доставка до відділенняТак
senderClientIdІдентифікатор магазину в системі логістичної служби. Створюється в Особистому кабінеті МерчантаТак
senderAddressIdІдентифікатор адреси магазину в системі логістичної служби. Створюється в Особистому кабінеті МерчантаТак
senderPostCodeПоштовий індекс відправникаТак
typeТип доставки відправлення. Можливі значення: STANDARD, EXPRESSТак
parcelWeightВага відправлення. Вказується у грамах. Максимальне значення – 30000Так
parcelLengthДовжина найбільшої сторони відправлення (тільки цифри), вказується в сантиметрахТак
parcelWidthШирина відправлення у сантиметрахТак
parcelHeightВисота відправлення у сантиметрахТак
parcelDeclaredPriceЗаявлена ціна відправлення, вказується у гривняхТак
parcelDescriptionОпис відправленняНі
fragileПозначка про крихкість посилки. Можливі значення: Y або NНі
checkOnDeliveryПозначка про огляд при отриманні. Можливі значення: Y або NНі
beesПозначка, що відправляються бджоли. Можливі значення: Y або NНі
payerВказується платник за доставку. Попередньо встановлене значення: clientТак
smsПовідомити клієнта про прибуття посилки за допомогою SMS-повідомлення. Можливі значення: Y або NНі
withDeliveryNotificationПовідомити клієнта за допомогою сервісу повідомлень служби доставки. Можливі значення: Y або NНі
enableУвімкнути відображення форми оформлення доставки. Можливі значення: Y або NТак
requiredОформлення доставки є обов'язковим. Можливі значення: Y або NТак
  1. style – налаштування стилів сторінки оплати (див. розділ 3.3 «Управління зовнішнім виглядом сторінки оплати»).

Структура відповіді:

Будь ласка, зверніться до "3.2 Приклад відповіді шлюзу у разі успішного здійснення платежу для запиту у форматі JSON" для вивчення структури відповіді.

Опис параметрів відповіді:

ПараметрОпис
SHOPBILLIDІдентифікатор транзакції (платіжного документу) у системі Portmone.com
SHOPORDERNUMBERНомер замовлення (рахунку) у системі Інтернет-магазину. До 120 символів
APPROVALCODEКод авторизації
BILL_AMOUNTПередана у запиті сума транзакції
TOKENЗначення Токену для подальших оплат
RESULTРезультат виконання операції (у разі успіху = 0)
CARD_MASKМаска Картки платника
ATTRIBUTE1Службове поле, заповнюється на розсуд компанії
ATTRIBUTE2Службове поле, заповнюється на розсуд компанії
ATTRIBUTE3Службове поле, заповнюється на розсуд компанії
ATTRIBUTE4Службове поле, заповнюється на розсуд компанії
RECEIPT_URLПосилання для отримання квитанції
LANGМова інтерфейсу платіжної системи. Можливі значення: uk – українська мова, en – англійська
DESCRIPTIONКоментар до замовлення / опис призначення оплати. До 250 символів
ERRORIPSCODEКод помилки, якщо токен Visa не був створений
ERRORIPSMESSAGEТекст помилки, якщо токен Visa не був створений
  1. goods – блок, що містить масив даних для фіскалізації.
ПараметрОписОбов’язковий
internalCodeКод продавцяТак
manufacturerCodeКод виробникаНі
govClassificationCodeКод УКТЗЕДНі
nameНазва товару\послугиТак
name_enНазва товару\послуги ENНі
descriptionОпис товару\послугиНі
description_enОпис товару\послуги ENНі
priceЦіна ( шт)Так
quantityКількістьТак
uomCodeОдиниця виміру ( не обов'язково, за замовчуванням шт)Ні
amountСумаТак
taxRateCodesЦифровий код ставки податку (попередньо програмується у особистому кабінеті податвого агента). Якщо до товару потрібно застосувати декілька податків - вказати через комуТак
descriptionUrlПоcилання на опису товараНі
imageUrlПосилання на картинку товаруНі
{"goods": {
"internalCode":"123456",
"manufacturerCode":"123456",
"govClassificationCode":"123456",
"name":"",
"name_en":"",
"description":"",
"description_en":"",
"price":"100",
"quantity":"2",
"uomCode":"",
"amount":"200",
"serviceFlag":"N",
"taxRateCodes":"1",
"descriptionUrl":"",
"imageUrl":""
}
}

3.3. Управління зовнішнім виглядом сторінки оплати

Зовнішній вигляд сторінки оплати можна налаштовувати за допомогою параметру style.

Опис полів параметру style

ПолеОписТип стилю сторінки (type), для якого може застосовуватись поле
typeВстановлює тип стилю для сторінки оплати:
portmone – значення без задання (стандартний стиль portmone.com, див. мал. 3);
brand – повна стилізація сторінки для партнера (див. мал. 4);
co-brand – логотип партнера на сторінці наведений разом з логотипом portmone.com (див. мал. 5);
light – версія для відображення у вигляді фрейму (див. мал. 6). Інструкцію з вбудовування платіжної сторінки у фрейм див. нижче
logoМістить полсилання на логотип партнера. Підтримує тільки посилання з https схемою. Формат зображення тільки SVG, PNG. Рекомендується використовувати зображення з мінімальним відступом сюжету від усіх краївbrand, co-brand
logoWidthПараметр, що визначає ширину логотипу. Необхідно вводити у вигляді "100px", максимальне рекомендоване значення 300pxbrand, co-brand
logoHeightПараметр, що визначає висоту логотипу. Необхідно вводити у вигляді "100px", максимальне рекомендоване значення 50px (для формата PNG максимальна висота – 53px)brand, co-brand
backgroundColorHeaderВстановлює колір секції header на сторінці. Формат вводу – HEX (наприклад, #ff0000)brand, light
backgroundColorButtonsВстановлює колір кнопок. Формат вводу – HEX (наприклад, #ff0000)brand, light
colorTextAndIconsВстановлює колір тексту та іконок. Формат вводу – HEX (наприклад, #ff0000)brand, light
borderColorListВстановлює колір ліній у списку методів проведення платежів. Формат вводу – HEX (наприклад, #ff0000)brand, light
bcMainВизначає колір фону сторінок. Формат вводу – HEX (наприклад, #ff0000)brand, light

Інструкція з вбудовування платіжної сторінки у фрейм

Для запуску IFRAME на сайті необхідно:

  1. На сторінці партнера необхідно організувати можливість надсилання запиту на проведення оплати, наприклад, вставити форму наступного вигляду:
<form
action="https://www.portmone.com.ua/gateway/"
method="post"
target="myFrame"
>
<input
type="hidden"
name="bodyRequest"
value='{
"paymentTypes":{"card":"Y","portmone":"Y","token":"N",
"clicktopay":"Y","createtokenonly":"N"},
"priorityPaymentTypes":{"card":"1","portmone":"2",
"token":"0","clicktopay":"1","createtokenonly":"0"},
"payee":{"payeeId":"3048","login":"","dt":"","signature":"", "shopSiteId":""},
"order":{"description":"Test Payment","shopOrderNumber":"SHP-00445401",
"billAmount":"10","attribute1":"1","attribute2":"2","attribute3":"3",
"attribute4":"4","attribute5":"","successUrl":"","failureUrl":"",
"preauthFlag":"N","billCurrency":"UAH", "encoding":""},
"token":{"tokenFlag":"N","returnToken":"N","token":"","cardMask":"",
"otherPaymentMethods":"Y","sellerToken":""},
"payer":{"lang":"uk", "emailAddress":"[email protected]"},
"style":{"type":"light","logo":"","backgroundColorHeader":"",
"backgroundColorButtons":"","colorTextAndIcons":"",
"borderColorList":"","bcMain":""}
}'
/>
<input type="hidden" name="typeRequest" value="json" />
<input type="submit" value="Portmone.com" />
</form>

Структуру та опис параметрів запиту можна подивитись у розділі 3.2 «Запит у форматі JSON».

Для відображення фрейму у стилі light необхідно задати полю type параметру style значення "light".

Параметр target форми повинен вказувати на фрейм, в якому буде відображатись сторінка оплати (у наведеному вище прикладі це фрейм з ім'ям "myFrame").

  1. Додати у DOM-модель сторінки елемент IFRAME, вказавши йому парамeтр name зі значенням, ідентичним параметру target форми з попереднього пункту.
<div>
<iframe name="myFrame" width="50%" height="70%" frameborder="0" ></iframe>
</div>

Параметри ширини та висоти фрейму можна налаштовувати за бажанням.

  1. Після надсилання запиту, відповідь буде відображено у вказаному фреймі.

Способи виведення сторінки оплати

Стандартний стиль Portmone.com

Мал. 3 – стандартний стиль Portmone.com

Повна стилізація сторінки для партнера

Мал. 4 – повна стилізація сторінки для партнера

Логотип партнера на сторінці наведений разом з логотипом Portmone.com

Мал. 5 – логотип партнера на сторінці наведений разом з логотипом Portmone.com

Версія для відображення у вигляді фрейму на сайті Інтернет-магазину

Мал. 6 – версія для відображення у вигляді фрейму на сайті Інтернет-магазину

3.4. Запит у форматі JSON для PaymentGatewayCheckout

Опис:

Дозволяє здійснювати виклик платіжного вікна без редиректу клієнта на сайт Portmone. При натисканні платіжної кнопки Portmone на сторінці оплати Мерчанта відкривається модальне вікно, в якому клієнт вводить платіжні дані.

Для розміщення платіжної кнопки Portmone на сторінці Мерчанта необхідно визначити місце розташування кнопки на сторінці та розмістити код js.

Приклад:

<div class="span4">
<script src="https://www.portmone.com.ua/r3/resources/pg/js/asset/pg.min.js?v=15092019"></script>
<script type="text/javascript" id="portmone-script">
var data = {};
var brand = {
height: "40px",
width: "150px",
buttoncolor: "#FF0000",
fontfamily: "Open Sans",
textcolor: "#FFF",
lang: "uk",
padding: "5px",
border: "1px solid grey",
fontsize: "14px",
closemodal: "Y",
};
PG.success(function (data) {
console.log(JSON.stringify(data));
});
PG.paymentData("gateway", data);
PG.brandButton(brand);
</script>
</div>

Після завантаження скрипту pg.min.js платіжна кнопка буде розміщена в тому блоці, в якому розміщений код для завантаження скрипту.

Доступність і обмеження:

Немає обмежень.

Структура запиту:

Параметри для формування JSON-структури запиту:

Масив data описує дані продавця, параметри замовлення та методи оплати (будь ласка, зверніться до "3.2 Запит оплати замовлення у форматі JSON" для вивчення структури масиву).

  1. payee – блок, що необхідний для ідентифікації партнера
ПараметрОписОбов’язковий
payeeIdІдентифікатор Інтернет-магазину. Надається кожному Партнерові індивідуально при підключенні до системи Portmone.comТак
loginЛогін компанії. Використовується при перевірці підпису (необхідний, якщо переданий параметр signature)Так
dtЧас створення запиту. Використовується при перевірці підпису (необхідний, якщо переданий параметр signature)Так
signatureПідпис запитуТак
shopSiteIdЦифровий ідентифікатор каналу продажуНі
  1. order – блок, що містить опис платежу
ПараметрОписОбов’язковий
descriptionОпис платежу (коментар до замовлення/призначення оплати)Ні
shopOrderNumberНомер замовлення, що сплачується, у системі ПартнераНі
billAmountСума платежуТак
preauthFlagОзнака преавторизації платежу (значення "Y" вказує на те, що ця оплата здійснюється з використанням процедури преавторизації (див. розділ 6 «Платежі з преавторизацією»), значення "N" – звичайна оплата без преавторизації)Ні
preauthConfirmДата автоматичного списання заблокованих коштів для платежів з преавторизацією. Може використовуватись, якщо у запиті переданий параметр preauthFlag=Y. Передається у форматі: YYYYMMDDHH24MISS (дата та час, після якого преавторизація підтверджується автоматично). Не може бути менше поточної дати.Ні
preauthRejectДата автоматичного скасування преавторизації. Може використовуватись, якщо у запиті переданий параметр preauthFlag=Y. Передається у форматі: YYYYMMDDHH24MISS (дата та час, після якого преавторизація скасовується автоматично). Не може бути менше поточної дати.Ні
billCurrencyВалюта проведення платежу. Значення без задання: UAHНі
expTimeВстановлює інтервал, протягом якого замовлення може бути оплачене. Якщо значення параметру було передане, то з моменту виклику платіжної сторінки показується зворотний відлік, який видно Клієнту на сторінці оплати. По закінченню часу на оплату рахунок переходить в статус "REJECTED" і оплатити його неможливоНі
encodingКодування (кодує текст запиту з встановленого кодування у UTF-8)Ні
attribute1Службове поле, заповнюється на розсуд компаніїНі
attribute2Службове поле, заповнюється на розсуд компаніїНі
attribute3Службове поле, заповнюється на розсуд компаніїНі
attribute4Службове поле, заповнюється на розсуд компаніїНі
attribute5Використовується для передачі параметрів розщеплення платежу (див. розділ 7 «Розщеплення платежу»)Ні
  1. paymentTypes – дозволяє обрати способи проведення платежів (Y – вмикати, N – не вмикати). Якщо параметри не задані, тоді використовуються способи платежів, що закріплені за Інтернет-магазином у налаштуваннях Portmone.com, або вмикаються два основні способи проведення платежів: "card", "portmone".
ПараметрОписОбов’язковий
cardОплата КарткоюНі
portmoneОплата через гаманець Portmone.comНі
tokenОплата за Токеном (у разі активації цього параметру, інші способи не відображаються)Ні
clicktopayОплата за допомогою Visa Click to PayНі
privatОплата через систему LigPay, з вибором картки з Інтернет-банкінгу Приват24Ні
gpayОплата через систему Google Pay, з вибором картки з тих, що були раніше збережені в акаунті Google PayНі
createtokenonlyСтворення Токену для проведення платежів за Токеном (у разі активації цього параметру, інші способи не відображаються). Параметр надає можливість отримати Токен Картки без проведення реальної оплати (на рахунку блокується 1 грн, яка повертається протягом 30 хвилин). Підходить для звичайних оплат на користь Інтернет-магазину (див. розділ 4 «Оплата замовлення з використанням платіжного токену»), а також для подальшого використання у рамках платежів з картки на картку (див. розділ 5 «Переказ з картки на картку»)Ні
gpayonlyОплата через систему Google Pay, з вибором картки з тих, що були раніше збережені в акаунті Google Pay (у разі активації цього параметру, інші способи не відображаються – на сторінці оплати відображається тільки кнопка "Оплатити через GPay")Ні
applepayОплата через систему Apple Pay, з вибором картки з тих, що були раніше збережені в акаунті Apple PayНі
applepayonlyОплата через систему Apple Pay, з вибором картки з тих, що були раніше збережені в акаунті Apple Pay (у разі активації цього параметру, інші способи не відображаються – на сторінці оплати відображається тільки кнопка "Apple Pay")Ні
linkОплата методом BankPay (через застосунок Банка платника). Метод працює за умови передачі таких параметрів: expTime та "showEmail": "Y"Ні
  1. priorityPaymentTypes – цей блок дозволяє керувати розміщенням способів проведення платежів на сторінці. При значенні 0 навпроти методу оплати – вкладка з методом оплати не вмикається, інше по мірі зростання: 1 – до початку списку, 2 – на другій позиції, 3 – третя і т. д.

Важливо! У paymentTypes спосіб оплати повинен бути в значенні "Y", у priorityPaymentTypes – мати цифрове значення, що відмінне від 0 ("0" – вимикає відображення на сторінці оплати).

  1. token – налаштування для роботи з Токеном (див. розділ 4 «Оплата замовлення з використанням платіжного токену»)
ПараметрОписОбов’язковий
tokenFlagВмикає оплату за Токеном ("N" – не вмикати, "Y" – прийняти до уваги обробку даних)Обов’язковий параметр для оплати за Токеном
returnToken"Y" – вмикає опцію повернення Токена партнеру на сторінці успішної оплати, "N" або порожнє значення – не повертає Токен на сторінці успішної оплати партнераНі
tokenЗначення ТокенуОбов’язковий параметр для оплати за Токеном
cardMaskМаска КарткиОбов’язковий параметр для оплати за Токеном
otherPaymentMethodsДозволяє вмикати інші способи проведення платежу, коли переданий Токен ("N" – вимикає, "Y" – вмикає)Ні
  1. payer – блок описує налаштування платника
ПараметрОписОбов’язковий
langМова інтерфейсу платіжної сторінки. Можливі значення: uk – українська мова, en – англійськаНі
emailAddressАдреса електронної пошти платникаНі
showEmail"Y" або порожнє значення – вмикає відображення поля "e-mail" на сторінці оплати, "N" – приховує поле "e-mail" на сторінці оплати (значення без задання – "Y")Ні

В залежності від переданих значень параметрів emailAddress та showEmail можливі 4 варіанти відображення поля "e-mail" на сторінці оплати:

ВаріантemailAddressshowEmailВідображення на сторінці оплати
1порожнє значенняYВідображається порожнє поле вводу e-mail
2валідний
e-mail
YВідображається попередньо заповнене поле вводу e-mail з можливістю редагування
3порожнє значенняNПоле вводу адреси електронної пошти не відображається на сторінці оплати. При відкритті сторінки оплати не перевіряється, чи передана Мерчантом адреса електронної пошти та чи є вона валідною
4валідний
e-mail
NПоле вводу адреси електронної пошти не відображається на сторінці оплати. При відкритті сторінки оплати не перевіряється, чи передана Мерчантом адреса електронної пошти та чи є вона валідною. Однак e-mail, що переданий у запиті, обробляється і на нього надсилається квитанція про сплату
  1. style – налаштування стилів сторінки оплати (див. розділ 3.3 «Управління зовнішнім виглядом сторінки оплати»).

Масив brand відповідає за брендування кнопки «Оплатити», при натистканні якої відбувається виклик вікна оплати.

ПараметрОписОбов’язковий
heightВстановлює висоту кнопки. Якщо інше не було задане, приймає стиль кнопки, встановлений на сторінціНі
widthВстановлює ширину кнопки. Якщо інше не було задане, приймає стиль кнопки, встановлений на сторінціНі
buttoncolorВстановлює колір кнопки. Якщо інше не було задане, приймає стиль кнопки, встановлений на сторінціНі
fontfamilyВстановлює тип шрифту кнопки. Якщо інше не було задане, приймає стиль кнопки, встановлений на сторінціНі
textcolorВстановлює колір шрифту кнопки. Якщо інше не було задане, приймає стиль кнопки, встановлений на сторінціНі
langВстановлює мову для відображення тексту кнопки “Сплатити”/ “Завантажити квитанцію”. Якщо інше не було задане, приймає значення uk – українськаНі
paddingВстановлює значення полів навколо вмісту кнопки. Якщо інше не було задане, приймає стиль кнопки, встановлений на сторінціНі
borderДозволяє одночасно встановити товщину, стиль і колір рамки навколо кнопки. Якщо інше не було задане, приймає стиль кнопки, встановлений на сторінціНі
fontsizeВстановлює розмір шрифту. Якщо інше не було задане, приймає стиль кнопки, встановлений на сторінціНі
closemodalОпція, що визначає, чи потрібно закривати модальне вікно після здійснення платежу клієнтом. При значенні "N" вікно не закривається, клієнту відображається повідомлення про успішну оплату у модальному вікні. При значенні "Y" – вікно закривається та виконується передача даних платежу до функції обробки мерчанта. Значення без задання: YНі

Службові функції:

  1. PG.success – функція, що приймає об’єкт даних data, який описує проведений платіж. У випадку, якщо Мерчант не проводить обробку даних, платіжна кнопка змінює свій стан та назву, що дозволяє платнику завантажити квитанцію при натисканні на неї.

  2. PG.brandButton – функція, що приймає об’єкт даних, який описує та стилізує платіжну кнопку.

  3. PG.paymentData – функція, що ініціалізує та розміщує платіжну кнопку на сторінці Мерчанта.

Ця функція приймає наступні аргументи:

PG.paymentData(typePayment, data, typeView);

Де:

1) typePayment – рядок, що характеризує тип проведення платежу та може набувати наступних значень:

ЗначенняОпис
gatewayЦей тип платежу дозволяє створити та провести типовий платіж на основі переданих даних. Об’єкт data формується як для звичайного запиту на основі json
stockЦей тип платежу передбачає проведення платежу на основі переданого ідентифікатора продукту, що був створений в Особистому кабінеті Мерчанта. В цьому випадку об’єкт data набуває наступної структури: var data = { "id":"303429c03b3a743bdf8ee02" };
terminalЦей тип платежу зберігає обробку властивостей об’єкту data, що передаються при оплаті з використанням типу terminal, але дозволяє залишати billAmount, description, attribute1, attribute2, attribute3, attribute4 незаповненими для подальшої ініціалізації цих даних платником
p2pЦей тип платежу передбачає проведення платежу із зарахуванням коштів на картку Мерчанта, що була перевірена та додана в Особистому кабінеті Мерчанта. В цьому випадку об’єкт data набуває наступної структури: var data = { "hash":"" };, де hash – значення з посилання на переказ

2) typeView – рядок, що характеризує вигляд модального вікна та може набувати наступних значень:

  • frame – відкриває вікно оплати у фреймі (див. мал. 7);

  • modal – відкриває вікно оплати у новому вікні браузера з заданими розмірами (див. мал. 8).

  1. PG.create – функція, що створює платіжний фрейм на основі даних, що були передані у функцію PG. paymentData. Цю функцію можна використовувати у випадку, коли Мерчант створює власні механізми виклику платіжного фрейму. Не містить жодних аргументів.

  2. PG.setButtonId – функція пропонується для випадків, коли Мерчант сам проводить стилізацію кнопки виклику фрейму та ініціалізує власний текст на кнопці. Ця функція приймає в якості аргументу html-атрибут id кнопки Мерчанта. Наприклад: PG.setButtonId('paymentButton');. Після цього, у разі натискання на кнопку, Мерчанту буде відкриватися платіжний фрейм Portmone.

Цю функцію необхідно використовувати у комбінації с функцією PG.create.

Приклад:

  • створення фрейму на основі налаштувань із функції PG. paymentData
PG.paymentData("gateway",data,"frame"); PG.create();
  • встановлення id кнопки Мерчанта
PG.setButtonId('paymentButton');

Приклад відкриття вікна оплати у фреймі

Мал. 7 – приклад відкриття вікна оплати у фреймі на сайті Інтернет-магазину

Приклад відкриття вікна оплати у новому вікні браузера з заданими розмірами

Мал. 8 – приклад відкриття вікна оплати у новому вікні браузера з заданими розмірами

Структура відповіді:

Якщо Мерчант ініціалізує обробку даних після проведення платежу клієнтом на своїй стороні через службову функцію PG.success(), то для цього необхідно реалізувати обробку даних, що будуть передані до функції обробки.

Опис параметрів, що надійдуть до функції обробки:

ПараметрОпис
statusСтатус транзакції. Приймає значення PAYED
errorCodeКод помилки
errorЗалишається незаповненим
shopBillIdІдентифікатор транзакції (платіжного документу) у системі Portmone.com
billAmountСума платежу
shopOrderNumberНомер замовлення (рахунку) у системі Мерчанта
cardMaskМаска Картки платника
attribute1Службове поле
attribute2Службове поле
attribute3Службове поле
attribute4Службове поле
receiptLinkПосилання для отримання квитанції
langМова інтерфейсу платіжної системи. Можливі значення: uk – українська мова, en – англійська
descriptionКоментар до замовлення / опис призначення оплати. До 250 символів
tokenТокен платіжної картки
commissionКомісія при проведенні платежу
payeeNameНазва Мерчанта
billCurrencyВалюта проведення платежу
IPSTokenValueУнікальний токен Visa
errorIPSCodeКод помилки, якщо токен Visa не був створений
errorIPSMessageТекст помилки, якщо токен Visa не був створений

3.5. Підпис запиту

Формування поля signature (приклад на PHP):


$login = 'wdishop';
$payeeId = '1185';
$shopOrderNumber = 'test';
$billAmount='1';
$key = 'BDFC166F8AE2F5323A557DB6CA16758D';
$dt = date("YmdHis");
$strToSignature = $payeeId.$dt.bin2hex($shopOrderNumber).$billAmount;
$strToSignature = strtoupper($strToSignature).strtoupper(bin2hex($login));
$signature = strtoupper(hash_hmac('sha256', $strToSignature, $key));

echo $signature;
ПараметрОписОбов’язковий
loginЛогін компаніїТак
payeeIdІдентифікатор Інтернет-магазину. Надається кожному Партнерові індивідуально при підключенні до системи Portmone.comТак
shopOrderNumberНомер замовлення, що сплачується, у системі ПартнераНі
billAmountСума платежу (значення без копійок - 10, з копійками - 10.23Так
keyКлюч, який надається кожному Партнерові індивідуально при підключенні до системи Portmone.comТак
dtДата формування підписуТак

Доступність і обмеження:

Якщо передаєте параметр shopOrderNumber в запиті на оплату, тоді він має бути переданий у формуванні підпису запиту і співпадати. Параметр billAmount має співпадати в запиті на оплату.

3.6. Інформація про курс валют

Опис: Цей метод дозволяє отримати інформацію про курс валют.

Запит необхідно виконати на адресу: https://www.portmone.com.ua/r3/api/gateway

Структура запиту:

Будь ласка, зверніться до "3.6 Інформація про курс валют" для вивчення структури запиту.

Параметри для формування JSON-структури запиту:

ПараметрОписОбов’язковий
payeeIdІдентифікатор Інтернет-магазину. Надається кожному Партнерові індивідуально при підключенні до системи Portmone.comТак
datedateТак

Структура відповіді:

Будь ласка, зверніться до "3.6 Успішна відповідь на запит" для вивчення структури відповіді.

Опис параметрів відповіді:

ПараметрОпис
keyНазва валюти
valueкурс валюти

Зверніть увагу:

Якщо налаштуваннями курсу валют не передбачено, то повертається помилка

"code": 500 "message": "Не знайдено курсу валют за вашими налаштуваннями. Зверніться до менеджера за уточненням деталей."

Якщо запит за некоректну дату, то повертається помилка

"code": 500 "message": "Не валідний параметр date. Формат для запиту: dd-mm-yyyy"

4. Оплата замовлення з використанням платіжного токену

4.1. Отримання токену для оплати

Опис:

Цей метод дозволяє отримати значення Токену та маски картки Клієнта. Після проведення цього методу оплати ви отримаєте значення Токену та маску Платіжної картки Клієнта, яку можете пропонувати Клієнтові в якості способу оплати на своєму ресурсі. У процесі виконання операції зі створення Токена, Portmone.com проведе авторизацію на 1 грн за карткою Клієнта, з наступним поверненням цієї суми на картку Клієнта.

Запит необхідно виконати на адресу: https://www.portmone.com.ua/gateway/

Доступність і обмеження:

Поле description, що передається при виконанні цього методу, є ключовим для подальших оплат за Токеном. При зміні цього параметру у подальших оплатах за Токеном Клієнт буде отримувати повідомлення про помилку.

Структура запиту:

Будь ласка, зверніться до "4.1 Запит на створення Токену" для вивчення структури запиту.

Параметри для формування JSON-структури запиту:

  1. paymentTypes – блок дозволяє обрати способи проведення платежів (Y – вмикати, N – не вмикати).
ПараметрОписОбов’язковий
createtokenonlyДля створення Токену необхідно вказати значення "Y" для цього параметруТак
  1. priorityPaymentTypes – блок дозволяє керувати розміщенням способів проведення платежів на сторінці
ПараметрОписОбов’язковий
createtokenonlyДля створення Токену необхідно вказати значення "1" для цього параметруТак
  1. payee – блок, що необхідний для ідентифікації партнера
ПараметрОписОбов’язковий
payeeIdІдентифікатор Інтернет-магазину. Надається кожному Партнерові індивідуально при підключенні до системи Portmone.comТак
loginЛогін компанії. Використовується при перевірці підпису (необхідний, якщо переданий параметр signature)Так
dtЧас створення запиту. Використовується при перевірці підпису (необхідний, якщо переданий параметр signature)Так
signatureПідпис запитуТак
shopSiteIdЦифровий ідентифікатор каналу продажуНі
  1. order – блок, що містить опис платежу
ПараметрОписОбов’язковий
descriptionОпис платежу (коментар до замовлення/призначення оплати)Обов’язковий, ідентифікує Токен у подальших оплатах
shopOrderNumberНомер замовлення, що сплачується, у системі ПартнераНі
billAmountСума платежу (для отримання Токену необхідно встановити значення 1 грн)Так
successUrlАдреса Інтернет-магазину, на яку буде спрямовано клієнта після успішної оплатиНі
failureUrlАдреса Інтернет-магазину, на яку буде спрямовано клієнта у разі скасування оплатиНі
preauthFlagОзнака преавторизації платежу. Обов’язкове значення при отриманні Токену – "N" (звичайна оплата без преавторизації)Ні
billCurrencyВалюта проведення платежу. Значення без задання: UAHНі
encodingКодування (кодує текст запиту з встановленого кодування у UTF-8)Ні
attribute1-4Службові поля, заповнюються на розсуд компаніїНі
  1. token – налаштування для роботи з Токеном
ПараметрОписОбов’язковий
tokenFlagВмикає оплату за Токеном ("N" – не вмикати, "Y" – прийняти до уваги обробку даних)Обов’язковий параметр для оплати за Токеном
returnToken"Y" – вмикає опцію повернення Токена партнеру на сторінці успішної оплати, "N" або порожнє значення – не повертає Токен на сторінці успішної оплати партнераНі
tokenЗначення ТокенуЗалишити порожнім
cardMaskМаска КарткиЗалишити порожнім
otherPaymentMethodsДозволяє вмикати інші способи проведення платежу, коли переданий Токен ("N" – вимикає, "Y" – вмикає)Обов’язкове значення "N"
  1. payer – блок описує налаштування платника
ПараметрОписОбов’язковий
langМова інтерфейсу платіжної сторінки. Можливі значення: uk – українська мова, en – англійськаНі
emailAddressАдреса електронної пошти платникаНі
  1. style – налаштування стилів сторінки оплати (див. розділ 3.3 «Управління зовнішнім виглядом сторінки оплати»).

Структура відповіді:

Будь ласка, зверніться до "4.1 Успішна відповідь на створення Токену" для вивчення структури відповіді.

Опис параметрів відповіді:

ПараметрОпис
SHOPBILLIDІдентифікатор транзакції (платіжного документу) у системі Portmone.com
SHOPORDERNUMBERНомер замовлення (рахунку) у системі Інтернет-магазину. До 120 символів
APPROVALCODEКод авторизації
BILL_AMOUNTПередана у запиті сума транзакції
TOKENЗначення Токену для подальших оплат
RESULTРезультат виконання операції (у разі успіху = 0)
CARD_MASKМаска Картки платника
ATTRIBUTE1Службове поле, заповнюється на розсуд компанії
ATTRIBUTE2Службове поле, заповнюється на розсуд компанії
ATTRIBUTE3Службове поле, заповнюється на розсуд компанії
ATTRIBUTE4Службове поле, заповнюється на розсуд компанії
RECEIPT_URLПосилання для отримання квитанції
LANGМова інтерфейсу платіжної системи. Можливі значення: uk – українська мова, en – англійська
DESCRIPTIONКоментар до замовлення / опис призначення оплати. До 250 символів

4.2. Проведення оплати за токеном

4.2.1. POST запит

Опис:

Для проведення оплати за Токеном необхідно передати запит методом POST на сторінку платіжного шлюзу – https://www.portmone.com.ua/r3/token/secure/token.

Доступність і обмеження:

Немає обмежень.

Структура запиту:

Будь ласка, зверніться до "4.2.1 Проведення оплати за Токеном. POST-запит" для вивчення структури запиту.

Опис параметрів запиту:

ПараметрОпис
payee_idІдентифікатор Інтернет-магазину. Надається кожному Партнерові індивідуально при підключенні до системи Portmone.com
shop_order_numberНомер замовлення (рахунку), що сплачується, у Інтернет-магазині. До 120 символів
bill_amountСума замовлення. Валюта – гривні. Дробова частина відокремлюється символом крапки “.”
descriptionКоментар до замовлення/ опис призначення оплати. До 250 символів.
application_urlАдреса додатку або Інтернет-магазину, на яку буде спрямований клієнт після успішної авторизації картки. Після успішної оплати замовлення на цю адресу методом POST Portmone.com надішле номер замовлення shop_order_number та дані платежу
langМова інтерфейсу платіжної системи. Можливі значення: uk – українська мова, en – англійська
tokenНеобхідно встановити значення токену, що отриманий на попередньому етапі
attribute1-4Службові поля, заповнюються на розсуд компанії
attribute5Використовується для передачі параметрів розщеплення платежу (див. розділ 7 «Розщеплення платежу»).

Структура відповіді:

Будь ласка, зверніться до "4.2.1 Проведення оплати за Токеном. Приклад успішної відповіді" для вивчення структури відповіді.

Опис параметрів відповіді шлюзу:

ПараметрОпис
BILL_AMOUNTПередана у запиті сума транзакції
SHOPORDERNUMBERНомер замовлення (рахунку) у системі Інтернет-магазину. До 120 символів
APPROVALCODEКод авторизації
RECEIPT_URLПосилання для отримання квитанції
TOKENЗначення Токену для подальших оплат
CARD_PAYMENT_SYSTEMЗначення платіжної системи (VISA, MASTERCARD, PROSTIR)
CARD_LAST_DIGITSОстанні 4 цифри номеру Платіжної картки
RESULTРезультат виконання операції (у разі успіху = 0)

4.2.2. Запит у форматі JSON

Опис:

Для проведення оплати за Токеном необхідно надіслати запит на URL: https://www.portmone.com.ua/gateway/

Доступність і обмеження:

Немає обмежень.

Структура запиту:

Будь ласка, зверніться до "4.2.2 Проведення оплати за Токеном. Приклад запиту у JSON форматі" для вивчення структури запиту.

Параметри для формування data:

  1. payee – блок, що необхідний для ідентифікації партнера
ПараметрОписОбов’язковий
payeeIdІдентифікатор Інтернет-магазину. Надається кожному Партнерові індивідуально при підключенні до системи Portmone.comТак
loginЛогін компанії. Використовується при перевірці підпису (необхідний, якщо переданий параметр signature)Так
dtЧас створення запиту. Використовується при перевірці підпису (необхідний, якщо переданий параметр signature)Так
signatureПідпис запитуТак
shopSiteIdЦифровий ідентифікатор каналу продажуНі
  1. order – блок, що містить опис платежу
ПараметрОписОбов’язковий
descriptionОпис платежу (коментар до замовлення/призначення оплати)Ні
shopOrderNumberНомер замовлення, що сплачується, у системі ПартнераНі
billAmountСума платежуТак
successUrlАдреса Інтернет-магазину, на яку буде спрямовано клієнта після успішної оплатиНі
failureUrlАдреса Інтернет-магазину, на яку буде спрямовано клієнта у разі скасування оплатиНі
preauthFlagОзнака преавторизації платежу (значення "Y" вказує на те, що ця оплата здійснюється з використанням процедури преавторизації (див. розділ 6 «Платежі з преавторизацією»), значення "N" – звичайна оплата без преавторизації)Ні
billCurrencyВалюта проведення платежу. Значення без задання: UAHНі
encodingКодування (кодує текст запиту з встановленого кодування у UTF-8)Ні
attribute1Службове поле, заповнюється на розсуд компаніїНі
attribute2Службове поле, заповнюється на розсуд компаніїНі
attribute3Службове поле, заповнюється на розсуд компаніїНі
attribute4Службове поле, заповнюється на розсуд компаніїНі
attribute5Використовується для передачі параметрів розщеплення платежу (див. розділ 7 «Розщеплення платежу»)Ні
  1. paymentTypes – дозволяє обрати способи проведення платежів (Y – вмикати, N – не вмикати). Якщо параметри не задані, тоді використовуються способи платежів, що закріплені за Інтернет-магазином у налаштуваннях Portmone.com, або вмикаються два основні способи проведення платежів: "card", "portmone".
ПараметрОписОбов’язковий
cardОплата КарткоюНі
portmoneОплата через гаманець Portmone.comНі
tokenОплата за Токеном (у разі активації цього параметру, інші способи не відображаються)Ні
clicktopayОплата за допомогою Visa Click to PayНі
  1. priorityPaymentTypes – цей блок дозволяє керувати розміщенням способів проведення платежів на сторінці. При значенні 0 навпроти методу оплати – вкладка з методом оплати не вмикається, інше по мірі зростання: 1 – до початку списку, 2 – на другій позиції, 3 – третя і т. д.

Важливо! В paymentTypes спосіб оплати повинен бути в значенні "Y", в priorityPaymentTypes – мати цифрове значення, що відмінне від 0 ("0" – вимикає відображення на сторінці оплати).

  1. token – налаштування для роботи з Токеном
ПараметрОписОбов’язковий
tokenFlagВмикає оплату за Токеном ("N" – не вмикати, "Y" – прийняти до уваги обробку даних)Так
returnToken"Y" – вмикає опцію повернення Токена партнеру на сторінці успішної оплати, "N" або порожнє значення – не повертає Токен на сторінці успішної оплати партнераНі
tokenЗначення ТокенуТак
cardMaskМаска КарткиТак
otherPaymentMethodsДозволяє вмикати інші способи проведення платежу, коли переданий Токен ("N" – вимикає, "Y" – вмикає)Ні
  1. payer – блок описує налаштування платника
ПараметрОписОбов’язковий
langМова інтерфейсу платіжної сторінки. Можливі значення: uk – українська мова, en – англійськаНі
emailAddressАдреса електронної пошти платникаНі
  1. style – налаштування стилів сторінки оплати (див. розділ 3.3 «Управління зовнішнім виглядом сторінки оплати»).

Структура відповіді:

Будь ласка, зверніться до "4.2.2 Проведення оплати за Токеном. Приклад успішної відповіді на запит у форматі JSON" для вивчення структури відповіді.

Опис параметрів відповіді:

ПараметрОпис
SHOPBILLIDІдентифікатор транзакції (платіжного документу) у системі Portmone.com
SHOPORDERNUMBERНомер замовлення (рахунку) у системі Інтернет-магазину. До 120 символів
APPROVALCODEКод авторизації
BILL_AMOUNTПередана у запиті сума транзакції
TOKENЗначення Токену для подальших оплат
RESULTРезультат виконання операції (у разі успіху = 0)
CARD_MASKМаска Картки платника
ATTRIBUTE1Службове поле, заповнюється на розсуд компанії
ATTRIBUTE2Службове поле, заповнюється на розсуд компанії
ATTRIBUTE3Службове поле, заповнюється на розсуд компанії
ATTRIBUTE4Службове поле, заповнюється на розсуд компанії
RECEIPT_URLПосилання для отримання квитанції
LANGМова інтерфейсу платіжної системи. Можливі значення: uk – українська мова, en – англійська
DESCRIPTIONКоментар до замовлення / опис призначення оплати. До 250 символів

4.3. Проведення оплати за токеном без CVV2 (рекурентний платіж)

Опис:

Для проведення оплати за Токеном без CVV2 необхідно надіслати запит на такий URL: https://www.portmone.com.ua/r3/recurrent/

Доступність і обмеження:

Немає обмежень.

Структура запиту:

Будь ласка, зверніться до "4.3 Запит рекурентного платежу" для вивчення структури запиту.

Опис параметрів запиту:

ПараметрОпис
loginЛогін Інтернет-магазину для доступу до управління акаунтом
passwordПароль Інтернет-магазину
payeeIdІдентифікатор Інтернет-магазину. Надається кожному Партнерові індивідуально при підключенні до системи Portmone.com
shopOrderNumberНомер замовлення (рахунку) у системі Інтернет-магазину. До 120 символів
tokenНеобхідно встановити значення токену, що отриманий на попередньому етапі
descriptionКоментар до замовлення/ опис призначення оплати. До 250 символів
billAmountСума платежу. Дробова частина відокремлюється символом крапки “.”
billCurrencyВалюта проведення платежу. Значення без задання: UAH
preauthFlagОзнака преавторизації платежу (значення "Y" вказує на те, що ця оплата здійснюється з використанням процедури преавторизації (див. розділ 6 «Платежі з преавторизацією»), значення "N" – звичайна оплата без преавторизації)
idКонстанта

Структура відповіді:

Будь ласка, зверніться до "4.3 Запит рекурентного платежу" для вивчення структури відповіді

Опис параметрів відповіді:

ПараметрОпис
resultОзнака статусу замовлення. Може приймати значення:
- PAYED – оплачене,
- CREATED – створене,
- REJECTED – скасоване.
shopOrderNumberНомер замовлення (рахунку) у системі Інтернет-магазину. До 120 символів
descriptionКоментар до замовлення/ опис призначення оплати. До 250 символів
idID запиту з боку Інтернет-магазину до системи Portmone.com

Важливо! При отриманні помилки по запиту за токеном рекомендуємо робити наступний запит не раніше ніж через 72 години.

4.4. Формування замовлення (платіжного повідомлення) у Viber Bot

Опис:

Необхідно надіслати запит на такий URL: https://www.portmone.com.ua/r3/api/gateway

Доступність і обмеження:

Операція можлива тільки для тих користувачів, які зареєстровані у Portmone Viber Bot.

Структура запиту JSON:

{
"method":"initViberPayment",
"params":{
"data":{
"payeeId":"11344",
"billAmount":"1",
"shopOrderNumber":"shp_0001",
"description":"test",
"msisdnClient":"+380630000000",
"paymentMessage":"test message",
"attribute1":"",
"attribute2":"",
"attribute3":"",
"attribute4":"",
"attribute5":"",
"preauthFlag":"N",
"emailAddress":"[email protected]",
"credentials":""
}
},
"id":"1"
}

Опис параметрів запиту:

ПараметрОпис
payeeIdІдентифікатор Інтернет-магазину. Надається кожному Партнерові індивідуально при підключенні до системи Portmone.com
billAmountСума платежу. Дробова частина відокремлюється символом крапки “.”
shopOrderNumberНомер замовлення (рахунку) у системі Інтернет-магазину. До 120 символів
descriptionКоментар до замовлення/ опис призначення оплати. До 250 символів
msisdnClientНомер телефону клієнта
paymentMessageПовідомлення, яке побачить клієнт у Viber Bot. Максимум 250 символів
attribute1, attribute2, attribute3, attribute4, attribute5Атрибути операції, необов'язково заповнювати
preauthFlagМає бути значення N
emailAddressEmail клієнта
credentialsНеобхідні авторизаційні дані, можна отримати у вигляді хеш-рядку тут (у кабінеті: прийом платежів -> автоплатежі) - https://business.portmone.com.ua/request/subscriptions
idКонстанта

Структура відповіді:

{
"result": {
"errorCode": "0",
"error": "",
"linkqr": "",
"linkbot": ""
},
"id": "1"
}

Опис параметрів відповіді:

ПараметрОпис
errorCodeКод помилки
errorОпис помилки порожній у разі успішної відповіді. Якщо клієнт не знайдений, повернеться опис "Client not found"
linkqrПосилання на QR код чат боту
linkbotПосилання чат бот
idКонстанта

4.5. Отримання даних МПС за токеном Portmone

Опис:

Необхідно надіслати запит на такий URL: https://www.portmone.com.ua/r3/api/gateway

Доступність і обмеження:

Доступно після проведення оплати картою.

Структура запиту JSON:

{
"method":"getDataTokenIPS",
"params":{
"data":{
"login":${MERCHANT_LOGIN},
"password":${MERCHANT_PASSWORD},
"tokenType":"PORTMONE",
"tokenReference":${TOKEN_REFERENCE}
}
},
"id":"1"
}

Опис параметрів запиту:

ПараметрОпис
MERCHANT_LOGINЛогін мерчанта у системі Portmone
MERCHANT_PASSWORDПароль мерчанта у системі Portmone
TOKEN_REFERENCEТокен карти, який повертає система Portmone
idКонстанта

Структура та приклад відповіді (Mastercard):

{
"result": {
"token_type": "M4M",
"token_info": {
"tokenUniqueReference": "DM4MMC0000****ed8d7249e",
"panUniqueReference": "FM4MMC000012971373*****6a75a3cf",
"productConfig": {
"termsAndConditionsUrl": "",
"issuerName": ",
"cardBackgroundCombinedAssetId": "954e89****8655a",
"iconAssetId": "7fcf53be****cf1fbfe",
"foregroundColor": "ffffff",
"issuerLogoAssetId": "cd90eb72****5cc1",
"shortDescription": "",
"customerServiceEmail": "",
"customerServicePhoneNumber": "",
"customerServiceUrl": "",
"isCoBranded": "false",
"brandLogoAssetId": "3789637f****c509"
},
"tokenInfo": {
"tokenPanSuffix": "4444",
"accountPanSuffix": "4444",
"tokenExpiry": "0823",
"accountPanExpiry": "",
"productCategory": "DEBIT",
"dsrpCapable": true,
"tokenAssuranceLevel": ""
}
}
},
"id": "1"
}

Опис ключових параметрів відповіді:

ПараметрОпис
TOKEN_TYPEТип токену в залежності від МПС
idКонстанта

Структура та приклад відповіді (Visa):

{
"result": {
"token_type": "VTS",
"token_info": {
"vPanEnrollmentID": "724bfc****38701",
"paymentInstrument": {
"expirationDate": {
"month": "11",
"year": "2023"
},
"last4": "1111",
"cvv2PrintedInd": "Y",
"expDatePrintedInd": "Y",
"enabledServices": {
"merchantPresentedQR": "N"
}
},
"cardMetaData": {
"backgroundColor": "0xffff00",
"foregroundColor": "0x000000",
"labelColor": "0x000000",
"contactWebsite": "https://www.aval.ua",
"contactEmail": "[email protected]",
"contactNumber": "+380444908888",
"contactName": "Raiffeisen Bank Aval",
"privacyPolicyURL": "https://www.aval.ua/storage/files/politika-konfidencijnosti-04042019_1554448866.pdf",
"termsAndConditionsURL": "https://aval.ua/storage/files/wallet-pi.pdf",
"shortDescription": "Visa Classic",
"cardData": [
{
"guid": "8407fa4e5****d705f6cb07",
"contentType": "cardSymbol",
"content": [
{
"mimeType": "image/png",
"width": "100",
"height": "100"
}
]
},
{
"guid": "09e037d****c17995ddf6",
"contentType": "digitalCardArt",
"content": [
{
"mimeType": "image/png",
"width": "1536",
"height": "969"
}
]
}
],
"issuerFlags": {
"deviceBinding": false,
"cardholderVerification": false,
"trustedBeneficiaryEnrollment": false,
"delegatedAuthenticationSupported": true
}
},
"vProvisionedTokenID": "ebc77cd5****bcc8885e01",
"tokenInfo": {
"tokenRequestorID": "1111111111",
"tokenStatus": "ACTIVE",
"last4": "",
"expirationDate": {
"month": "",
"year": ""
}
}
}
},
"id": "1"
}

Опис ключових параметрів відповіді:

ПараметрОпис
TOKEN_TYPEТип токену в залежності від МПС
idКонстанта
tokenInfo, cardMetaData, cardDataМета-дані карти

4.6. Отримання ассету за унікальним ідентифікатором МПС

Опис:

Необхідно надіслати запит на такий URL: https://www.portmone.com.ua/r3/api/gateway.

Доступність і обмеження:

Доступно після отримання ідентифікатору МПС методом getDataTokenIPS згідно п. 4.5. Для отримання кожного виду ассету необхідно зробити унікальний запит з відповідним ідентифікатором.

Структура і приклад запиту JSON:

{
"method":"getMetaDataTokenIPS",
"params":{
"data":{
"login":${MERCHANT_LOGIN},
"password":${MERCHANT_PASSWORD},
"tokenType":${TOKEN_TYPE},
"metaDataId":${ASSET_ID}
}
},
"id":"1"
}

Опис параметрів запиту:

ПараметрОпис
MERCHANT_LOGINЛогін мерчанта у системі Portmone
MERCHANT_PASSWORDПароль мерчанта у системі Portmone
TOKEN_TYPEТип токену, отриманий методом getDataTokenIPS згідно п. 4.5
ASSET_ID:Ідентифікатор ассету, отриманий методом getDataTokenIPS згідно п. 4.5 (tokenUniqueReference - для Mastercard\guid - для Visa)
idКонстанта

Структура та приклад відповіді:

{
"result": {
"mediaContents": [
{
"data": "", //Base64 encoded content
"width": 1536,
"type": "image\/png",
"height": 969
}
]
},
"id": "1"
}

4.7. Проведення оплати за Токеном з 3Ds без CVV2 (рекурентний платіж)

Опис:

Для проведення оплати за Токеном з 3Ds без CVV2 необхідно надіслати запит на такий URL: https://www.portmone.com.ua/r3/recurrent/.

Доступність і обмеження:

Немає обмежень.

Структура запиту:

Будь ласка, зверніться до "4.7 Запит рекурентного платежу" для вивчення структури запиту.

Опис параметрів запиту:

ПараметрОписОбов’язковий
methodЗначення: paywith3dsТак
loginЛогін Інтернет-магазину для доступу до управління акаунтомТак
passwordПароль Інтернет-магазинуТак
payeeIdІдентифікатор Інтернет-магазину. Надається кожному Партнерові індивідуально при підключенні до системи Portmone.comТак
shopOrderNumberНомер замовлення (рахунку) у системі Інтернет-магазину. До 120 символівНі
tokenНеобхідно встановити значення токену, що отриманий на попередньому етапіТак
descriptionКоментар до замовлення/ опис призначення оплати. До 250 символівТак
billAmountСума платежу. Дробова частина відокремлюється символом крапки “.”Так
billCurrencyВалюта проведення платежу. Значення без задання: UAHНі
successUrlАдреса Інтернет-магазину, на яку буде спрямовано клієнта після успішної оплатиНі
attribute1Службове поле, заповнюється на розсуд компаніїНі
attribute2Службове поле, заповнюється на розсуд компаніїНі
attribute3Службове поле, заповнюється на розсуд компаніїНі
attribute4Службове поле, заповнюється на розсуд компаніїНі
idКонстантаТак

Структура успішної відповіді, коли потрібно пройти 3Ds:

Будь ласка, зверніться до "4.7.1 Успішна відповідь, коли потрібно пройти 3Ds" для вивчення структури відповіді

Опис параметрів відповіді:

ПараметрОпис
statusСтатус транзакції. Може приймати значення:
- PAYED – оплачене,
- CREATED – створене,
- REJECTED – скасоване.
shopbillIdІдентифікатор замовлення у системі Portmone.com
shopOrderNumberНомер замовлення (рахунку) у системі Інтернет-магазину. До 120 символів
descriptionКоментар до замовлення/ опис призначення оплати. До 250 символів
pdfUrlЗалишається порожнім
authCodeКод авторизації банку (проставляється якщо замовлення оплачене)
isNeed3DSОзнака необхідності проходження перевірки 3D Secure ("Y" – необхідно пройти процедуру перевірки 3D Secure, "N" – додаткові дії не потрібні)
actionMPIURL банку, на який треба перенаправити клієнта для проходження 3D Secure перевірки
idКонстанта

При таких значеннях парметрів isNeed3DS = Y, status = CREATED необхідно перейти по actionMPI

Структура відповіді після проходження 3Ds:

Будь ласка, зверніться до "4.7.2 Відповідь після проходження 3Ds" для вивчення структури відповіді

Відповідь надходить на successUrl у форматі POST

Опис параметрів відповіді:

ПараметрОпис
shopbillIdІдентифікатор замовлення у системі Portmone.com
statusСтатус транзакції. Може приймати значення:
- PAYED – оплачене,
- CREATED – створене,
- REJECTED – скасоване.
billAmountСума платежу. Дробова частина відокремлюється символом крапки “.”
billNumberНомер замовлення (рахунку) у системі Інтернет-магазину. До 120 символів
payeeName
authCodeКод авторизації банку (проставляється якщо замовлення оплачене)
commissionКомісія при проведенні платежу
pdfUrlЗалишається порожнім
payeeIdІдентифікатор Інтернет-магазину
payDateДата оплати
descriptionКоментар до замовлення/ опис призначення оплати. До 250 символів
cardMaskМаска Картки платника
errorMessageПовідомлення про помилку
errorCodeКод помилки

Структура успішної відповіді, коли не потрібно проходити 3Ds:

Будь ласка, зверніться до "4.7.3 Успішна відповідь, коли не потрібно проходити 3Ds" для вивчення структури відповіді

Опис параметрів відповіді:

ПараметрОпис
statusСтатус транзакції. Може приймати значення:
- PAYED – оплачене,
- CREATED – створене,
- REJECTED – скасоване.
shopbillIdІдентифікатор замовлення у системі Portmone.com
shopOrderNumberНомер замовлення (рахунку) у системі Інтернет-магазину. До 120 символів
descriptionКоментар до замовлення/ опис призначення оплати. До 250 символів
pdfUrlПосилання на квитианцію
authCodeКод авторизації банку (проставляється якщо замовлення оплачене)
isNeed3DSОзнака необхідності проходження перевірки 3D Secure ("Y" – необхідно пройти процедуру перевірки 3D Secure, "N" – додаткові дії не потрібні)
actionMPIURL банку, на який треба перенаправити клієнта для проходження 3D Secure перевірки
idКонстанта

При таких значеннях парметрів isNeed3DS = N, status = PAYED - транзакція успішна.

Структура неуспішної відповіді:

Будь ласка, зверніться до "4.7.4 Неуспішна відповідь" для вивчення структури відповіді

Опис параметрів відповіді:

ПараметрОпис
CodeКод помилки
MessageТекст помилки
idКонстанта

4.8. Проведення оплати за Токеном з відображенням зовнішнього вигляду картки без CVV2

Опис:

Для проведення оплати за Токеном з відображенням зовнішнього вигляду картки без CVV2 необхідно надіслати запит на такий URL: https://www.portmone.com.ua/gateway/

Доступність і обмеження:

Немає обмежень.

Структура запиту:

Будь ласка, зверніться до "4.8 Запит рекурентного платежу" для вивчення структури запиту.

Опис параметрів запиту:

  1. payee – блок, що необхідний для ідентифікації партнера
ПараметрОписОбов’язковий
payeeIdІдентифікатор Інтернет-магазину. Надається кожному Партнерові індивідуально при підключенні до системи Portmone.comТак
credentialsПараметри авторизації ( можна отримати у вигляді хеш-рядку у кабінеті: прийом платежів -> автоплатежі https://business.portmone.com.ua/request/subscriptionsТак
  1. order – блок, що містить опис платежу
ПараметрОписОбов’язковий
descriptionОпис платежу (коментар до замовлення/призначення оплати)Ні
shopOrderNumberНомер замовлення, що сплачується, у системі ПартнераНі
billAmountСума платежуТак
successUrlАдреса Інтернет-магазину, на яку буде спрямовано клієнта після успішної оплатиНі
failureUrlАдреса Інтернет-магазину, на яку буде спрямовано клієнта у разі скасування оплатиНі
preauthFlagОзнака преавторизації платежу (значення "Y" вказує на те, що ця оплата здійснюється з використанням процедури преавторизації (див. розділ 6 «Платежі з преавторизацією»), значення "N" – звичайна оплата без преавторизації)Ні
billCurrencyВалюта проведення платежу. Значення без задання: UAHНі
encodingКодування (кодує текст запиту з встановленого кодування у UTF-8)Ні
attribute1Службове поле, заповнюється на розсуд компаніїНі
attribute2Службове поле, заповнюється на розсуд компаніїНі
attribute3Службове поле, заповнюється на розсуд компаніїНі
attribute4Службове поле, заповнюється на розсуд компаніїНі
attribute5Використовується для передачі параметрів розщеплення платежу (див. розділ 7 «Розщеплення платежу»)Ні
  1. paymentTypes – дозволяє обрати способи проведення платежів (Y – вмикати, N – не вмикати). Якщо параметри не задані, тоді використовуються способи платежів, що закріплені за Інтернет-магазином у налаштуваннях Portmone.com, або вмикаються два основні способи проведення платежів: "card", "portmone".
ПараметрОписОбов’язковий
tokenОплата за Токеном (у разі активації цього параметру, інші способи не відображаються)Так
  1. priorityPaymentTypes – цей блок дозволяє керувати розміщенням способів проведення платежів на сторінці. При значенні 0 навпроти методу оплати – вкладка з методом оплати не вмикається, інше по мірі зростання: 1 – до початку списку, 2 – на другій позиції, 3 – третя і т. д.

Важливо! В paymentTypes спосіб оплати повинен бути в значенні "Y", в priorityPaymentTypes – мати цифрове значення, що відмінне від 0 ("0" – вимикає відображення на сторінці оплати).

  1. token – налаштування для роботи з Токеном
ПараметрОписОбов’язковий
tokenFlagВмикає оплату за Токеном ("N" – не вмикати, "Y" – прийняти до уваги обробку даних)Так
returnToken"Y" – вмикає опцію повернення Токена партнеру на сторінці успішної оплати, "N" або порожнє значення – не повертає Токен на сторінці успішної оплати партнераНі
tokenЗначення ТокенуТак
cardMaskМаска КарткиТак
otherPaymentMethodsДозволяє вмикати інші способи проведення платежу, коли переданий Токен ("N" – вимикає, "Y" – вмикає)Ні
  1. payer – блок описує налаштування платника
ПараметрОписОбов’язковий
langМова інтерфейсу платіжної сторінки. Можливі значення: uk – українська мова, en – англійськаНі
emailAddressАдреса електронної пошти платникаНі
showEmail"Y" або порожнє значення – вмикає відображення поля "e-mail" на сторінці оплати, "N" – приховує поле "e-mail" на сторінці оплати (значення без задання – "Y")Ні

5. Переказ з картки на картку

Платіжна система Portmone.com дозволяє здійснювати переказ грошових коштів з Картки на Картку будь-якого банку України.

Переказ може здійснюватись:

1. Між Токенами Карток без вводу номерів Карток відправника та одержувача (попередньо разово створюються Токен Картки відправника та Токен Картки одержувача).

Схема взаємодії:

  1. Відправник (Клієнт) разово реєструє свою картку у системі Portmome.com (здійснює транзакцію на 1 грн з наступним поверненням цієї суми на картку Клієнта протягом 30 хвилин. Інтернет-магазин отримує ідентифікатор (Токен) цієї Картки, який може зберігати у своїй системі (див. розділ 5.1 «Отримання Токену для картки»).

  2. Одержувач (Клієнт або Мерчант) разово реєструє свою картку у системі Portmome.com (здійснює транзакцію на 1 грн з наступним її поверненням протягом 30 хвилин). Інтернет-магазин отримує ідентифікатор (Токен) цієї Картки, який може зберігати у своїй системі (див. розділ 5.1 «Отримання Токену для картки»).

  3. Коли відправник бажає перерахувати гроші одержувачеві, Інтернет-магазин надсилає до системи Portmome.com запит у форматі json із зазначенням Токену та маски Картки відправника, Токену та маски Картки одержувача і суми платежу (див. розділ 5.2 «Створення запиту на переказ коштів між токенами карток»).

2. З Токену Картки відправника на номер Картки одержувача (див. розділ 5.3 «Запит на переказ коштів з токену на картку»).

3. З Токену Картки відправника на транзитний розрахунковий рахунок (р/р) еквайра та з розрхункового рахунку на Токен Картки одержувача (див. розділ 5.4 «Розривний переказ коштів (з картки на рахунок + з рахунку на картку)»).

5.1. Отримання токену для картки

Опис:

Для отримання Токену (для будь-якого з учасників – як для відправника, так і для одержувача) необхідно виконати запит на адресу: https://www.portmone.com.ua/gateway/.

Доступність і обмеження:

Немає обмежень.

Структура запиту:

Будь ласка, зверніться до "5.1 Запит створення токену" для вивчення структури запиту.

Параметри для формування JSON-структури запиту:

  1. paymentTypes – блок дозволяє обрати способи проведення платежів (Y – вмикати, N – не вмикати).
ПараметрОписОбов’язковий
createtokenonlyДля створення Токену необхідно вказати значення "Y" для цього параметруТак
  1. priorityPaymentTypes – цей блок дозволяє керувати розміщенням способів проведения платежів на строрінці. При значенні 0 навпроти методу оплати – вкладка з методом оплати не вмикається, інше по мірі зростання: 1 – до початку списку, 2 – на другій позиції, 3 – третя і т. д.

Важливо! У paymentTypes спосіб оплати повинен бути в значенні "Y", у priorityPaymentTypes – мати цифрове значення, що відмінне від 0 ("0" – вимикає відображення на сторінці оплати).

  1. payee – блок, що необхідний для ідентифікації партнера
ПараметрОписОбов’язковий
payeeIdІдентифікатор Інтернет-магазину. Надається кожному Партнерові індивідуально при підключенні до системи Portmone.comТак
loginЛогін компанії. Використовується при перевірці підпису (необхідний, якщо переданий параметр signature)Так
dtЧас створення запиту. Використовується при перевірці підпису (необхідний, якщо переданий параметр signature)Так
signatureПідпис запитуТак
shopSiteIdЦифровий ідентифікатор каналу продажуНі
  1. order – блок, що містить опис платежу
ПараметрОписОбов’язковий
descriptionЗалишити порожнімТак
shopOrderNumberНомер замовлення, що сплачується, у системі ПартнераНі
billAmountСума платежу (для отримання Токену необхідно встановити значення 1 грн)Так
successUrlАдреса Інтернет-магазину, на яку буде спрямовано клієнта після успішної оплатиНі
failureUrlАдреса Інтернет-магазину, на яку буде спрямовано клієнта у разі скасування оплатиНі
billCurrencyВалюта проведення платежу. Значення без задання: UAHНі
encodingКодування (кодує текст запиту з встановленого кодування у UTF-8)Ні
attribute2-4Службові поля, заповнюються на розсуд компаніїНі
  1. token – налаштування для роботи з Токеном
ПараметрОписОбов’язковий
tokenFlagВмикає оплату за Токеном ("N" – не вмикати, "Y" – прийняти до уваги обробку даних)Обов’язкове значення "N"
returnToken"Y" – вмикає опцію повернення Токена партнеру на сторінці успішної оплати, "N" або порожнє значення – не повертає Токен на сторінці успішної оплати партнераОбов’язкове значення "Y"
tokenЗначення ТокенуЗалишити порожнім
cardMaskМаска КарткиЗалишити порожнім
otherPaymentMethodsДозволяє вмикати інші способи проведення платежу, коли переданий Токен ("N" – вимикає, "Y" – вмикає)Обов’язкове значення "N"
sellerTokenТокен Картки отримувачаЗалишити порожнім
  1. payer – блок описує налаштування платника
ПараметрОписОбов’язковий
langМова інтерфейсу платіжної сторінки. Можливі значення: uk – українська мова, en – англійськаНі
emailAddressАдреса електронної пошти платникаНі
  1. style – налаштування стилів сторінки оплати (див. розділ 3.3 «Управління зовнішнім виглядом сторінки оплати»).

Структура відповіді:

Будь ласка, зверніться до "5.1 Відповідь на запит створення токену" для вивчення структури відповіді.

Опис параметрів відповіді:

ПараметрОпис
SHOPBILLIDІдентифікатор транзакції (платіжного документу) у системі Portmone.com
SHOPORDERNUMBERНомер замовлення (рахунку) у системі Інтернет-магазину. До 120 символів
APPROVALCODEКод авторизації
BILL_AMOUNTПередана у запиті сума транзакції
TOKENЗначення Токену для подальших оплат
RESULTРезультат виконання операції (у разі успіху = 0)
CARD_MASKМаска Картки
ATTRIBUTE1Службове поле
ATTRIBUTE2Службове поле, заповнюється на розсуд компанії
ATTRIBUTE3Службове поле, заповнюється на розсуд компанії
ATTRIBUTE4Службове поле, заповнюється на розсуд компанії
RECEIPT_URLПосилання для отримання квитанції
LANGМова інтерфейсу платіжної системи. Можливі значення: uk – українська мова, en – англійська
DESCRIPTIONМаска картки отдержувача

5.2. Створення запиту на переказ коштів між токенами карток

Опис:

Для переказу коштів з Токену картки відправника на Токен картки одержувача необхідно виконати запит на адресу: https://www.portmone.com.ua/gateway/.

Доступність і обмеження:

Немає обмежень.

Структура запиту:

Будь ласка, зверніться до "5.2 Запит на переказ коштів між токенами карток" для вивчення структури запиту.

Опис параметрів запиту:

  1. payee – блок, що необхідний для ідентифікації партнера
ПараметрОписОбов’язковий
payeeIdІдентифікатор Інтернет-магазину. Надається кожному Партнерові індивідуально при підключенні до системи Portmone.comТак
loginЛогін компанії. Використовується при перевірці підпису (необхідний, якщо переданий параметр signature)Так
dtЧас створення запиту. Використовується при перевірці підпису (необхідний, якщо переданий параметр signature)Так
signatureПідпис запитуТак
shopSiteIdЦифровий ідентифікатор каналу продажуНі
  1. order – блок, що містить опис платежу
ПараметрОписОбов’язковий
descriptionМаска Картки одержувачаТак
shopOrderNumberНомер замовлення, що сплачується, у системі ПартнераНі
billAmountСума платежуТак
successUrlАдреса Інтернет-магазину, на яку буде спрямовано клієнта після успішної оплатиНі
failureUrlАдреса Інтернет-магазину, на яку буде спрямовано клієнта у разі скасування оплатиНі
preauthFlagОзнака преавторизації платежу (значення "Y" вказує на те, що ця оплата здійснюється з використанням процедури преавторизації (див. розділ 6 «Платежі з преавторизацією»), значення "N" – звичайна оплата без преавторизації)Ні
billCurrencyВалюта проведення платежу. Значення без задання: UAHНі
encodingКодування (кодує текст запиту з встановленого кодування у UTF-8)Ні
attribute2Службове поле, заповнюється на розсуд компаніїНі
attribute3Службове поле, заповнюється на розсуд компаніїНі
attribute4Службове поле, заповнюється на розсуд компаніїНі
  1. paymentTypes – дозволяє обрати способи проведення платежів (Y – вмикати, N – не вмикати). Якщо параметри не задані, тоді використовуються способи платежів, що закріплені за Інтернет-магазином у налаштуваннях Portmone.com, або вмикаються два основні способи проведення платежів: "card", "portmone".
ПараметрОписОбов’язковий
cardОплата КарткоюНі
portmoneОплата через гаманець Portmone.comНі
tokenОплата за Токеном (у разі активації цього параметру, інші способи не відображаються)Ні
clicktopayОплата за допомогою Visa Click to PayНі
  1. priorityPaymentTypes – цей блок дозволяє керувати розміщенням способів проведення платежів на сторінці. При значенні 0 навпроти методу оплати – вкладка з методом оплати не вмикається, інше по мірі зростання: 1 – до початку списку, 2 – на другій позиції, 3 – третя і т. д.

Важливо! У paymentTypes спосіб оплати повинен бути в значенні "Y", у priorityPaymentTypes – мати цифрове значення, що відмінне від 0 ("0" – вимикає відображення на сторінці оплати).

  1. token – налаштування для роботи з Токеном
ПараметрОписОбов’язковий
tokenFlagВмикає оплату за Токеном ("N" – не вмикати, "Y" – прийняти до уваги обробку даних)Так
returnToken"Y" – вмикає опцію повернення Токена партнеру на сторінці успішної оплати, "N" або порожнє значення – не повертає Токен на сторінці успішної оплати партнераНі
tokenЗначення Токену Картки відправникаТак
cardMaskМаска Картки відправникаТак
otherPaymentMethodsДозволяє вмикати інші способи проведення платежу, коли переданий Токен ("N" – вимикає, "Y" – вмикає)Ні
sellerTokenТокен Картки одержувачаТак
  1. payer – блок описує налаштування платника
ПараметрОписОбов’язковий
langМова інтерфейсу платіжної сторінки. Можливі значення: uk – українська мова, en – англійськаНі
emailAddressАдреса електронної пошти платникаНі
  1. style – налаштування стилів сторінки оплати (див. розділ 3.3 «Управління зовнішнім виглядом сторінки оплати»).

5.3. Запит на переказ коштів з токену на картку

Опис:

Метод дозволяє виконати переказ коштів з Токену Картки відправника на номер Картки одержувача.

Для здійснення переказу необхідно виконати запит на адресу: https://www.portmone.com.ua/gateway/.

Під час виклику методу відкривається сторінка оплати Portmone.com, на якій Клієнтові необхідно вказати номер Картки одержувача, CVV-код Картки відправника та ПІБ відправника.

Доступність і обмеження:

Немає обмежень.

Структура запиту:

Будь ласка, зверніться до "5.3 Запит на переказ коштів з токену на картку" для вивчення структури запиту.

Опис параметрів запиту:

  1. payee – блок, що необхідний для ідентифікації партнера
ПараметрОписОбов’язковий
payeeIdІдентифікатор Інтернет-магазину. Надається кожному Партнерові індивідуально при підключенні до системи Portmone.comТак
checkParamsНеобхідно встановити значення "Y"Так
loginЛогін компанії. Використовується при перевірці підпису (необхідний, якщо переданий параметр signature)Так
dtЧас створення запиту. Використовується при перевірці підпису (необхідний, якщо переданий параметр signature)Так
signatureПідпис запитуТак
shopSiteIdЦифровий ідентифікатор каналу продажуНі
  1. order – блок, що містить опис платежу
ПараметрОписОбов’язковий
descriptionНомер Картки одержувача (якщо номер не буде переданий, то його має вказати відправникНі
shopOrderNumberНомер замовлення, що сплачується, у системі ПартнераНі
billAmountСума платежуТак
successUrlАдреса Інтернет-магазину, на яку буде спрямовано клієнта після успішної оплатиНі
failureUrlАдреса Інтернет-магазину, на яку буде спрямовано клієнта у разі скасування оплатиНі
billCurrencyВалюта проведення платежу. Значення без задання: UAHНі
encodingКодування (кодує текст запиту з встановленого кодування у UTF-8)Ні
attribute2Службове поле, заповнюється на розсуд компаніїНі
attribute3Службове поле, заповнюється на розсуд компаніїНі
attribute4Службове поле, заповнюється на розсуд компаніїНі
  1. paymentTypes – дозволяє обрати способи проведення платежів (Y – вмикати, N – не вмикати).
ПараметрОписОбов’язковий
tokenПереказ з Токену на КарткуТак
  1. priorityPaymentTypes – цей блок дозволяє керувати розміщенням способів проведення платежів на сторінці. При значенні 0 навпроти методу оплати – вкладка з методом оплати не вмикається, інше по мірі зростання: 1 – до початку списку, 2 – на другій позиції, 3 – третя і т. д.

Важливо! У paymentTypes спосіб оплати повинен бути в значенні "Y", у priorityPaymentTypes – мати цифрове значення, що відмінне від 0 ("0" – вимикає відображення на сторінці оплати).

  1. token – налаштування для роботи з Токеном
ПараметрОписОбов’язковий
tokenFlagВмикає оплату за Токеном ("N" – не вмикати, "Y" – прийняти до уваги обробку даних)Так
returnToken"Y" – вмикає опцію повернення Токена партнеру на сторінці успішної оплати, "N" або порожнє значення – не повертає Токен на сторінці успішної оплати партнераНі
tokenЗначення Токену Картки відправникаТак
cardMaskМаска Картки відправникаТак
otherPaymentMethodsДозволяє вмикати інші способи проведення платежу, коли переданий Токен ("N" – вимикає, "Y" – вмикає)Так
  1. payer – блок описує налаштування платника
ПараметрОписОбов’язковий
langМова інтерфейсу платіжної сторінки. Можливі значення: uk – українська мова, en – англійськаНі
emailAddressАдреса електронної пошти платникаНі
  1. style – налаштування стилів сторінки оплати (див. розділ 3.3 «Управління зовнішнім виглядом сторінки оплати»).

Структура відповіді:

Будь ласка, зверніться до "5.3 Відповідь на запит переказу коштів з токену на картку" для вивчення структури відповіді.

Опис параметрів відповіді:

ПараметрОпис
SHOPBILLIDІдентифікатор транзакції (платіжного документу) у системі Portmone.com
SHOPORDERNUMBERНомер замовлення (рахунку) у системі Інтернет-магазину. До 120 символів
APPROVALCODEКод авторизації
BILL_AMOUNTПередана у запиті сума транзакції
TOKENЗначення Токену для подальших оплат
RESULTРезультат виконання операції (у разі успіху = 0)
CARD_MASKМаска Картки відправника
ATTRIBUTE1Службове поле
ATTRIBUTE2Службове поле, заповнюється на розсуд компанії
ATTRIBUTE3Службове поле, заповнюється на розсуд компанії
ATTRIBUTE4Службове поле, заповнюється на розсуд компанії
RECEIPT_URLПосилання для отримання квитанції
LANGМова інтерфейсу платіжної системи. Можливі значення: uk – українська мова, en – англійська
DESCRIPTIONМаска Картки одержувача

5.4. Розривний переказ коштів (з картки на рахунок + з рахунку на картку)

Метод дозволяє виконати розривний переказ коштів між токенами карток відправника та одрежувача (з Токена Картки відправника на транзитний розрахунковий рахунок еквайра (р/р) та з р/р на Токен Картки одержувача).

5.4.1. Переказ з токену картки відправника на рахунок

Опис:

Для здійснення переказу необхідно виконати запит на адресу: https://www.portmone.com.ua/gateway/.

Під час виклику методу відкривається сторінка оплати Portmone.com, на якій Клієнтові необхідно ввести CVV-код Картки відправника та здійснити переказ.

Доступність і обмеження:

Немає обмежень.

Структура запиту:

Будь ласка, зверніться до "5.4.1 Запит на переказ коштів з токену картки на рахунок" для вивчення структури запиту.

Опис параметрів запиту:

  1. payee – блок, що необхідний для ідентифікації партнера
ПараметрОписОбов’язковий
payeeIdІдентифікатор Інтернет-магазину. Надається кожному Партнерові індивідуально при підключенні до системи Portmone.comТак
checkParamsНеобхідно встановити значення "N"Так
loginЛогін компанії. Використовується при перевірці підпису (необхідний, якщо переданий параметр signature)Так
dtЧас створення запиту. Використовується при перевірці підпису (необхідний, якщо переданий параметр signature)Так
signatureПідпис запитуТак
shopSiteIdЦифровий ідентифікатор каналу продажуНі
  1. order – блок, що містить опис платежу
ПараметрОписОбов’язковий
shopOrderNumberНомер замовлення, що сплачується, у системі ПартнераНі
billAmountСума платежуТак
successUrlАдреса Інтернет-магазину, на яку буде спрямовано клієнта після успішної оплатиНі
failureUrlАдреса Інтернет-магазину, на яку буде спрямовано клієнта у разі скасування оплатиНі
billCurrencyВалюта проведення платежу. Значення без задання: UAHНі
encodingКодування (кодує текст запиту з встановленого кодування у UTF-8)Ні
attribute2Службове поле, заповнюється на розсуд компаніїНі
attribute3Службове поле, заповнюється на розсуд компаніїНі
attribute4Службове поле, заповнюється на розсуд компаніїНі
  1. paymentTypes – дозволяє обрати способи проведення платежів (Y – вмикати, N – не вмикати).
ПараметрОписОбов’язковий
tokenПереказ з Токену на рахунокТак
  1. priorityPaymentTypes – цей блок дозволяє керувати розміщенням способів проведення платежів на сторінці. При значенні 0 навпроти методу оплати – вкладка з методом оплати не вмикається, інше по мірі зростання: 1 – до початку списку, 2 – на другій позиції, 3 – третя і т. д.

Важливо! У paymentTypes спосіб оплати повинен бути в значенні "Y", у priorityPaymentTypes – мати цифрове значення, що відмінне від 0 ("0" – вимикає відображення на сторінці оплати).

  1. token – налаштування для роботи з Токеном
ПараметрОписОбов’язковий
tokenFlagВмикає оплату за Токеном ("N" – не вмикати, "Y" – прийняти до уваги обробку даних)Так
returnToken"Y" – вмикає опцію повернення Токена партнеру на сторінці успішної оплати, "N" або порожнє значення – не повертає Токен на сторінці успішної оплати партнераНі
tokenЗначення Токену Картки відправникаТак
cardMaskМаска Картки відправникаТак
otherPaymentMethodsДозволяє вмикати інші способи проведення платежу, коли переданий Токен ("N" – вимикає, "Y" – вмикає)Так
  1. payer – блок описує налаштування платника
ПараметрОписОбов’язковий
langМова інтерфейсу платіжної сторінки. Можливі значення: uk – українська мова, en – англійськаНі
emailAddressАдреса електронної пошти платникаНі
showEmail"Y" або порожнє значення – вмикає відображення поля "e-mail" на сторінці оплати, "N" – приховує поле "e-mail" на сторінці оплати (значення без задання – "Y")Ні
  1. style – налаштування стилів сторінки оплати (див. розділ 3.3 «Управління зовнішнім виглядом сторінки оплати»).

Структура відповіді:

Будь ласка, зверніться до "5.4.1 Відповідь на запит переказу коштів з картки на рахунок" для вивчення структури відповіді.

Опис параметрів відповіді:

ПараметрОпис
SHOPBILLIDІдентифікатор транзакції (платіжного документу) у системі Portmone.com
SHOPORDERNUMBERНомер замовлення (рахунку) у системі Інтернет-магазину. До 120 символів
APPROVALCODEКод авторизації
BILL_AMOUNTПередана у запиті сума транзакції
TOKENЗначення Токену для подальших оплат
RESULTРезультат виконання операції (у разі успіху = 0)
CARD_MASKМаска Картки відправника
ATTRIBUTE1Службове поле
ATTRIBUTE2Службове поле, заповнюється на розсуд компанії
ATTRIBUTE3Службове поле, заповнюється на розсуд компанії
ATTRIBUTE4Службове поле, заповнюється на розсуд компанії
RECEIPT_URLПосилання для отримання квитанції
LANGМова інтерфейсу платіжної системи. Можливі значення: uk – українська мова, en – англійська
DESCRIPTIONМаска Картки одержувача

5.4.2. Переказ з рахунку на токен картки одержувача

Опис:

Мерчант ініціює зарахування коштів з розрахункового рахунку на Токен Картки одержувача.

Для здійснення переказу необхідно виконати запит на адресу: https://www.portmone.com.ua/gateway/.

Доступність і обмеження:

Немає обмежень.

Структура запиту:

Будь ласка, зверніться до "5.4.2 Запит на переказ коштів з рахунку на токен картки" для вивчення структури запиту.

Опис параметрів запиту:

ПараметрОпис
methodОбов’язковий параметр для виклику процедури зарахування коштів з рахунку на Токен Картки одержувача. Значення: confirmp2p
loginЛогін Інтернет-магазину
passwordПароль Інтернет-магазину
shopBillIdНомер замовлення у системі Portmone.com (повинен бути отриманий з відповіді на запит, що описаний у розділі 5.4.1 «Переказ з токену картки відправника на рахунок»)
tokenТокен Картки одержувача, на яку необхідно зарахувати кошти
idКонстанта

Структура відповіді:

Будь ласка, зверніться до "5.4.2 Відповідь на запит переказу коштів з рахунку на картку" для вивчення структури відповіді.

Опис параметрів відповіді:

ПараметрОпис
SHOPBILLIDІдентифікатор транзакції (платіжного документу) у системі Portmone.com
SHOPORDERNUMBERНомер замовлення (рахунку) у системі Інтернет-магазину. До 120 символів
APPROVALCODEКод авторизації
BILL_AMOUNTПередана у запиті сума транзакції
TOKENЗначення Токену для подальших оплат
RESULTРезультат виконання операції (у разі успіху = 0)
CARD_MASKМаска Картки відправника
ATTRIBUTE1Службове поле
ATTRIBUTE2Службове поле, заповнюється на розсуд компанії
ATTRIBUTE3Службове поле, заповнюється на розсуд компанії
ATTRIBUTE4Службове поле, заповнюється на розсуд компанії
RECEIPT_URLПосилання для отримання квитанції
LANGМова інтерфейсу платіжної системи. Можливі значення: uk – українська мова, en – англійська
DESCRIPTIONМаска Картки одержувача

5.5. Переказ з картки відправника на токен отримувача

Опис:

Мерчанту потрібно зареєструватися в portmone.business за посиланням https://business.portmone.com.ua/signup (обрати розділ "для приватних осіб").

В особистому кабінеті зберегти картки, на які плануюєте отримувати кошти.

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

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

5.5.1 Отримання списку доступних карток

Необхідно виконати запит на адресу: https://www.portmone.com.ua/r3/api/gateway/.

Структура запиту:

Будь ласка, зверніться до "5.5.1 Запит на отримання списку доступних карток" для вивчення структури запиту.

Опис параметрів запиту:

ПараметрОписОбов’язковий
methodОбов’язковий параметр для отримання спику доступних карток для зарахування переказу. Значення: getTokensForMoneyTransferтак
loginЛогін Інтернет-магазинутак
passwordПароль Інтернет-магазинутак
idКонстантатак

Структура відповіді:

Будь ласка, зверніться до "5.5.1 Відповідь на запит отримання списку доступних карток" для вивчення структури відповіді.

Опис параметрів відповіді:

ПараметрОпис
SHOPBILLIDІдентифікатор транзакції (платіжного документу) у системі Portmone.com
BILL_AMOUNTПередана у запиті сума транзакції
CARD_MASKМаска Картки отримувача

5.5.2 Отримання посилання для переказу коштів

Структура запиту:

Будь ласка, зверніться до "5.5.2 Запит на отримання посилання для переказу коштів" для вивчення структури запиту.

Опис параметрів запиту:

ПараметрОписОбов’язковий
methodОбов’язковий параметр для отримання посиллання на переказ коштів. Значення: getLinkMoneyTransferтак
loginЛогін Інтернет-магазинутак
passwordПароль Інтернет-магазинутак
shopBillIdНомер замовлення у системі Portmone.com (повинен бути отриманий з відповіді на запит, що описаний у розділі 5.5.1 «Отримання списку доступних карток»)
billAmountСума платежуТак
purposeПризначення платежуТак
fullNameПІБ відправникаТак
phoneНомер телефону відправникаНі
commentSenderКоментар відправникаНі
idКонстантатак

Структура відповіді:

Будь ласка, зверніться до "5.5.2 Відповідь на отримання посилання для переказу коштів" для вивчення структури відповіді.

Опис параметрів відповіді:

ПараметрОпис
resultпосилання на переказ
idКонстанта

5.5.3 Додавання картки в особистий кабінет без участі клієнта

Необхідно виконати запит на адресу: https://www.portmone.com.ua/r3/api/gateway/.

  1. Отримання credentials

Структура запиту:

Будь ласка, зверніться до "5.5.3 Запит на отримання значення credentials" для вивчення структури запиту.

Опис параметрів запиту:

ПараметрОписОбов’язковий
methodОбов’язковий параметр для отримання посиллання на переказ коштів. Значення: credentialserтак
loginЛогін Інтернет-магазинутак
passwordПароль Інтернет-магазинутак
idКонстантатак

Структура відповіді:

Будь ласка, зверніться до "5.5.3 Відповідь на отримання значення credentials" для вивчення структури відповіді.

Опис параметрів відповіді:

ПараметрОпис
credentialsзанчення для подальших запитів
idКонстанта
  1. Збереження картки

Структура запиту:

Будь ласка, зверніться до "5.5.3 Запит на отримання збереження картки" для вивчення структури запиту.

Опис параметрів запиту:

  1. paymentTypes – блок способів проведення платежів
ПараметрОписОбов’язковий
createtokenonlyЗначення YТак
  1. priorityPaymentTypes - блок розміження способів оплати
ПараметрОписОбов’язковий
createtokenonlyЗначення 1Так
  1. payee – блок, що необхідний для ідентифікації партнера
ПараметрОписОбов’язковий
payeeIdЗавжди пиррймає значення P2PLINKCREATEТак
credentialsзначенн отримане методом credentialsТак
  1. order – блок, що містить опис платежу
ПараметрОписОбов’язковий
billAmountСума платежуТак
successUrlАдреса Інтернет-магазину, на яку буде спрямовано клієнта після успішної оплатиНі
  1. token – налаштування для роботи з Токеном
ПараметрОписОбов’язковий
returnTokenЗначення "Y"Так
createp2plinkshopЗначення "Y"Так
  1. payer – блок описує налаштування платника
ПараметрОписОбов’язковий
langМова інтерфейсу платіжної сторінки. Можливі значення: uk – українська мова, en – англійськаНі

Після проходження клієнтом підтвердження картки, картка буде у вашому профілі і можна генерувати посилання на p2p переказ.

6. Платежі з преавторизацією

6.1. Проведення преавторизації платежу (блокування коштів)

Платіжна система Portmone.com дозволяє здійснювати платежі з попередньою авторизацією.
Попередня авторизація (преавторизація) – блокування коштів на Картці користувача без фактичного фінансового списання коштів з рахунку Клієнта. Для того, щоб кошти були списані з Картки та перераховані Мерчанту, останньому необхідно по кожній преавторизації надіслати запит підтвердження платежу (виконати процедуру поставторизації, див. розділ 6.2. «Підтвердження платежу, що проведений з преавторизацією»). Таким чином, оплата товара/послуги з попередньою авторизацією складається з послідовних операцій в рамках одного замовлення – Блокування коштів на Картці, Отримання результатів транзакції у системі Portmone.com та Процедури поставторизації.

Важливо! Згідно правил МПС, для більшості MCC, термін блокування коштів на Картці користувача можливий до 7 календарних днів. При блокуванні коштів більше ніж на 7 календарних днів - рішення про підтвердження списання коштів буде прийматись банком-емітентом. Максимальний термін преавторизації не повинен перевищувати 30 календарних днів.

Для проведення преавторизації платежу Мерчант повинен передати у POST запиті параметр preauth_flag=Y (для запиту у форматі JSON – параметр preauthFlag=Y). Опис формату та параметрів запитів див. у розділі 3 «Оплата замовлення».

6.2. Підтвердження платежу, що проведений з преавторизацією (процедура поставторизації)

6.2.1. POST запит

Опис:

Для завершення оплат з преавторизацією (оплат, при проведенні яких використовувався параметр preauth_flag=Y), повинна бути виконана процедура поставторизації.

URL для запиту: https://www.portmone.com.ua/gateway/.

Доступність і обмеження:

Немає обмежень.

Структура запиту:

Будь ласка, зверніться до "6.2.1 Процедура поставторизації. POST запит" для вивчення структури запиту.

Опис параметрів запиту:

ПараметрОписОбов’язковий
methodЗначення: preauthТак
loginЛогін Інтернет-магазинуТак
passwordПароль Інтернет-магазинуТак
actionІдентифікатор дії, що повинна бути виконана по відношенню до цього замовлення – підтвердження блокування коштів (можливе зі зміною суми). Значення: set_paidНі
shop_bill_idНомер замовлення у системі Portmone.com (повинен бути отриманий за допомогою методу result, що описаний у розділі 8.2 «Запит результатів авторизації»)Ні
postauth_amountСума оплати. Передається при значенні action=set_paid. Не може бути більше за суму, на яку проводилась преавторизація
encodingКодуванняНі
langМова повідомлень про помилкиНі

Структура відповіді:

Будь ласка, зверніться до "6.2.1 Успішна відповідь для процедури поставторизації" для вивчення структури відповіді.

Секція результату <request> може бути використана для налагодження – теги відповідають реально отриманим параметрам запиту. Якщо якогось тегу у <request> немає – значить, цей параметр не був переданий у запиті.

У разі виникнення помилки під час виклику метода (наприклад, некоректному логіні і т.д.), секція <order> буде складатись тільки з двух тегів – <error_code> та <error_message> (див. "6.2.1 Неуспішна відповідь для процедури поставторизації").

6.2.2. Запит у форматі JSON

Опис:

Для підтвердження платежу необхідно виконати запит на адресу: https://www.portmone.com.ua/gateway/.

Доступність і обмеження:

Немає обмежень.

Структура запиту:

Будь ласка, зверніться до "6.2.2 Процедура поставторизації. Запит у форматі JSON" для вивчення структури запиту.

Опис параметрів запиту:

ПараметрОписОбов’язковий
methodЗначення: confirmPreauthТак
loginЛогін Інтернет-магазину для доступу до управління акаунтомТак
passwordПароль Інтернет-магазинуТак
payeeIdІдентифікатор Інтернет-магазину. Надається кожному Партнерові індивідуально при підключенні до системи Portmone.comТак
shopOrderNumberНомер замовлення (рахунку) у системі Інтернет-магазину. До 120 символів*Так/Ні
shopbillIdІдентифікатор замовлення у системі Portmone.com. Необов’язковий параметр*Так/Ні
postauthAmountСума оплати. Не може бути більше за суму, на яку проводилась преавторизаціяНі
distributionРозподілення преавторизації.Надає можливість підтверджувати меншу кількість отримувачів, ніж було при запиті на оплату ( п.7 розщеплення платежу)Ні
idКонстантаТак

Важливо! *Пошук може виконуватись за параметром shopOrderNumber або shopbillId. У випадку, коли передані обидва параметри, пошук буде виконуватись за параметром shopbillId. Якщо жодний з параметрів не був переданий, виникне помилка.

Структура відповіді:

Будь ласка, зверніться до "6.2.2 Формат відповіді" для вивчення структури відповіді.

Опис параметрів відповіді:

ПараметрОпис
shop_bill_idІдентифікатор замовлення у системі Portmone.com
shop_order_numberНомер замовлення (рахунку) у системі Інтернет-магазину. До 120 символів
descriptionОпис замовлення
bill_dateДата рахунку
pay_dateДата оплати
pay_order_dateДата банківського меморіального ордеру
bill_amountСума рахунку
auth_codeКод авторизації банку (проставляється якщо замовлення оплачене)
statusСтатус замовлення
attribute1Службове поле, заповнюється на розсуд компанії
attribute2Службове поле, заповнюється на розсуд компанії
error_codeКод помилки
error_messageПовідомлення про помилку

6.3. Скасування платежу з преавторизацією

6.3.1. POST запит

Опис:

Для скасування платежу з преавторизацією необхідно надіслати запит на адресу: https://www.portmone.com.ua/gateway/.

Доступність і обмеження:

Немає обмежень.

Структура запиту:

Будь ласка, зверніться до "6.3.1 Запит скасування платежу з преавторизацією. POST запит" для вивчення структури запиту.

Опис параметрів запиту:

ПараметрОписОбов’язковий
methodЗначення: preauthТак
loginЛогін Інтернет-магазинуТак
passwordПароль Інтернет-магазинуТак
actionІдентифікатор дії, що повинна бути виконана по відношенню до цього замовлення. Значення: reject – відміна блокуванняТак
shop_bill_idНомер замовлення у системі Portmone.com (має бути отриманий за допомогою методу result, що описаний у розділі 8.2 «Запит результатів авторизації»)Так
encodingКодуванняНі
langМова повідомлень про помилкиНі

Структура відповіді:

Будь ласка, зверніться до "6.3.1 Приклад відповіді на POST запит скасування платежу з преавторизацією" для вивчення структури відповіді.

Опис параметрів відповіді:

ПараметрОпис
shop_bill_idІдентифікатор замовлення у системі Portmone.com
shop_order_numberНомер замовлення (рахунку) у системі Інтернет-магазину. До 120 символів
descriptionОпис замовлення
bill_dateДата рахунку
pay_dateДата оплати
pay_order_dateДата банківського меморіального ордеру
bill_amountСума рахунку
auth_codeКод авторизації банку (проставляється якщо замовлення оплачене)
statusСтатус замовлення
attribute1Службове поле, заповнюється на розсуд компанії
attribute2Службове поле, заповнюється на розсуд компанії
error_codeКод помилки
error_messageПовідомлення про помилку

6.3.2. Запит у форматі JSON

Опис:

Для відміни платежу необхідно виконати запит на адресу: https://www.portmone.com.ua/gateway/.

Доступність і обмеження:

Немає обмежень.

Структура запиту:

Будь ласка, зверніться до "6.3.2 Запит скасування платежу з преавторизацією. Запит у форматі JSON" для вивчення структури запиту.

Опис параметрів запиту:

ПараметрОписОбов’язковий
methodЗначення: rejectPreauthТак
loginЛогін Інтернет-магазинуТак
passwordПароль Інтернет-магазинуТак
payeeIdІдентифікатор Інтернет-магазину. Надається кожному Партнерові індивідуально при підключенні до системи Portmone.comТак
shopOrderNumberНомер замовлення (рахунку) у системі Інтернет-магазину. До 120 символівТак
shopbillIdІдентифікатор замовлення у системі Portmone.comНі
idКонстантаТак

Важливо! Пошук може виконуватись за параметром shopOrderNumber або shopbillId. У випадку, коли передані обидва параметри, пошук буде виконуватись за параметром shopbillId. Якщо жодний з параметрів не був переданий, виникне помилка.

Структура відповіді:

Будь ласка, зверніться до "6.3.2 Успішна відповідь на запит скасування платежу з преавторизацією" для вивчення структури відповіді.

Опис параметрів відповіді:

ПараметрОпис
shop_bill_idІдентифікатор замовлення у системі Portmone.com
shop_order_numberНомер замовлення (рахунку) у системі Інтернет-магазину. До 120 символів
descriptionОпис замовлення
bill_amountСума рахунку
statusСтатус замовлення
bank_idНазва банка еквайра
terminal_idНомер терміналу еквайра
merchant_idНазва терміналу
rrnRRN транзакціїї
auth_codeКод авторизації банку (проставляється якщо замовлення оплачене)
attribute1Службове поле, заповнюється на розсуд компанії
attribute2Службове поле, заповнюється на розсуд компанії
attribute3Службове поле, заповнюється на розсуд компанії
attribute4Службове поле, заповнюється на розсуд компанії
attribute6маска картки
commissionкомісія мерчата
error_codeКод помилки
error_messageПовідомлення про помилку

7. Розщеплення платежу

Платіжна система Portmone.com надає можливість розщеплення 1 (одного) карткового платежу на декілька компаній (юридичних осіб). З Картки Клієнта списується єдина сума, яка потім окремими транзакціями переказується на рахунок кожного з одержувачів, дані яких Мерчант передав у запиті на оплату. Розщеплення платежу доступне для компаній-одержувачів, що зареєстровані в Portmone.com.

Схема взаємодії:

  1. Кожна з компаній-одержувачів реєструється у системі Portmone.com.

  2. Клієнт робить замовлення на сайті Основної компанії.

  3. Основна компанія (компанія, що виступає ініціатором розщеплення) передає в полі attribute5 запиту на оплату параметри розщеплення:

    • опис замовлення по кожному з одержувачів (Desc);

    • ID компанії для кожного з одержувачів (payeeID);

    • суму, яку необхідно зарахувати на рахунок кожного з одержувачів (amount).

Поле attribute5 заповнюється у форматі:

Desc1:payeeID1;amount1;Desc2:payeeID2;amount2;...

Кількість компаній-одержувачів для одного запиту на оплату з розщепленням платежу обмежена довжиною рядку (до 500 символів).

  1. Portmone.com надсилає до Основної компанії XML-повідомлення з результатом авторизації на всю суму замовлення.

Приклад запиту:

Будь ласка, зверніться до "7 Приклад запиту на оплату з розщепленням платежу" для вивчення структури запиту.

8. Отримання результатів авторизації

Інтернет-магазини можуть отримувати результати авторизації наступними способами:

  • при поверненні клієнта на сайт Мерчанта відразу після оплати;
  • самостійно в Особистому кабінеті Мерчанта: https://www.portmone.com.ua/b2b_dash/;
  • XML-запитом до системи Portmone.com;
  • передача XML-повідомлення до Інтернет-магазину про результат авторизації (XML-нотифікация про оплату);
  • передача XML-повідомлення до Інтернет-магазину про платіжне доручення (XML-нотифікація про фінансове покриття транзакцій);
  • повідомлення про результат авторизації та платіжне доручення у форматі JSON
  • повідомленнями на електронну пошту.

8.1. Отримання виписок з результатами авторизації в Особистому кабінеті

Особистий кабінет платіжної системи Portmone.com – це спеціалізований сайт з набором сторінок та інтерактивних форм, за допомогою якого авторизований користувач може отримувати необхідну інформацію та здійснювати інші операції у системі Portmone.com.

Для авторизації у Особистому кабінеті необхідно перейти за адресою https://www.portmone.com.ua/b2b_dash та у окні, що з’явиться, ввести логін та пароль. Реквізити для роботи з Особистим кабінетом (логін та пароль) можна отримати у Portmone.com за запитом (телефоном або по e-mail).

Інформацію про операції можна отримати на сторінці «Замовлення». Виписку можна подивитись за будь-який проміжок часу, фільтруючи транзакції за наявністю платіжки, номером замовлення, результатом операції (усі, вдалі, невдалі або повернення) або кодом авторизації.

Приклад сторінки з випискою у Особистому кабінеті

8.2. Запит результатів авторизації

8.2.1. POST запит

Опис:

Для отримання статусу оплати необхідно виконати запит на URL: https://www.portmone.com.ua/gateway/.

Доступність і обмеження:

Максимальний період запиту не повинен перевищувати 31 день.

Структура запиту:

Будь ласка, зверніться до "8.2.1 Запит результатів авторизації методом POST" для вивчення структури запиту.

Опис параметрів запиту:

ПараметрОписОбов’язковий
methodЗначення: resultТак
payee_idІдентифікатор Інтернет-магазину. Надається кожному Партнерові індивідуально при підключенні до системи Portmone.comТак
loginЛогін Інтернет-магазину для доступу до управління акаунтомТак
passwordПароль Інтернет-магазинуТак
shop_order_numberНомер замовлення в Інтернет-магазині. Якщо не вказувати це значення, будуть обиратись замовлення без прив’язки до номераНі
statusОзнака статусу замовленнь, які потрібно включити до звіту. Може приймати значення:
- PAYED – оплачене,
- CREATED – створене,
- REJECTED – скасоване,
- RETURN – повернене.
За попередньою опцією обираються замовлення з усіма типами статусів
Ні
start_dateДата початку звіту. Формат: дд.мм.рррр. За попередньою опцією – поточна дата минулого місяцяНі
end_dateДата закінчення звіту. Формат: дд.мм.рррр. За попередньою опцією – поточна датаНі

Структура відповіді:

Будь ласка, зверніться до "8.2.1 Відповідь на запит результатів авторизації методом POST" для вивчення структури відповіді.

Опис параметрів відповіді:

ПараметрОпис
shop_bill_idІдентифікатор замовлення у системі Portmone.com
shop_order_numberНомер замовлення (рахунку), що сплачується, в Інтернет-магазині
descriptionОпис замовлення
bill_dateДата рахунку
pay_dateДата оплати
bill_amountСума рахунку
auth_codeКод авторизації банку (проставляється якщо замовлення оплачене)
statusСтатус замовлення. У разі успішної операції приймає значення PAYED або PREAUTH
error_codeКод помилки
error_messageПовідомлення про помилку

8.2.2. Запит у форматі JSON

Опис:

Для отримання статусу платежу або переліку транзакцій по компанії необхідно виконати запит на адресу: https://www.portmone.com.ua/gateway/.

Доступність і обмеження:

Немає обмежень.

Структура запиту:

Будь ласка, зверніться до "8.2.2 Запит результатів авторизації у форматі JSON" для вивчення структури запиту.

Опис параметрів запиту:

ПараметрОписОбов’язковий
methodЗначення: resultТак
loginЛогін Інтернет-магазину для доступу до управління акаунтомТак
passwordПароль Інтернет-магазинуТак
payeeIdІдентифікатор Інтернет-магазину. Надається кожному Партнерові індивідуально при підключенні до системи Portmone.comТак
shopOrderNumberНомер замовлення в Інтернет-магазині. Якщо не вказувати це значення, будуть обиратись замовлення без прив’язки до номераНі
shopbillIdІдентифікатор замовлення у системі Portmone.com. Необов’язковий параметрНі
statusОзнака статусу замовленнь, які потрібно включити до звіту. Може приймати значення:
- PAYED – оплачене,
- CREATED – створене,
- REJECTED – скасоване.
За попередньою опцією обираються замовлення з усіма типами статусів
Ні
startDateДата початку звіту. Формат: дд.мм.рррр. За попередньою опцією – поточна дата минулого місяцяНі
endDateДата закінчення звіту. Формат: дд.мм.рррр. За попередньою опцією – поточна датаНі
idКонстантаТак

Важливо! Пошук може виконуватись за параметром shopOrderNumber або shopbillId. У випадку, коли передані обидва параметри, пошук буде виконуватись за параметром shopbillId. Якщо жодний з параметрів не був переданий, виникне помилка.

Структура відповіді:

Будь ласка, зверніться до "8.2.2 Приклад успішної відповіді на запит у форматі JSON" для вивчення структури відповіді.

Опис параметрів відповіді:

ПараметрОпис
payeeIdІдентифікатор Інтернет-магазину
descriptionОпис замовлення
statusСтатус замовлення. У разі успішної операції приймає значення PAYED або PREAUTH
attribute1Службове поле, заповнюється на розсуд компанії
attribute2Службове поле, заповнюється на розсуд компанії
attribute3Службове поле, заповнюється на розсуд компанії
attribute4Службове поле, заповнюється на розсуд компанії
attribute5Передаємо у разі використання розщелення платежу
distribution_payee_idОпис замовлення при використанні розщеплення оплати
commissionЗначення поверненої комісії з платежу
bank_nameНазва банка еквайра
terminal_idНомер терміналу еквайра
merchant_idНазва терміналу
rrnRRN транзакціїї
pay_dateДата оплати
payee_export_dateДата відправки суми/повідомлення про сплату постачальникові
payee_export_flagПри успішній оплаті прймає значення Y
chargebackЧи був поданий за транзакцією чарджбек
payee_nameНазва мерчанта
payee_commissionКомісія з мерчанта
pay_order_dateДата банківського меморіального ордеру
pay_order_numberНомер рахунку
pay_order_amountСума рахунку
shopBillIdІдентифікатор замовлення у системі Portmone.com
shopOrderNumberНомер замовлення (рахунку) у системі Інтернет-магазину. До 120 символів
billAmountСума рахунку
errorCodeКод помилки
errorMessageПовідомлення про помилку
authCodeКод авторизації банку (проставляється якщо замовлення оплачене)
cardMaskМаска Картки платника
cardBankNameНазва банка-емітента
tokenЗначення Токену для подальших оплат
payeeExportResultОпис помилки
gateTypeІдентифікатор методу оплати
cardTypeNameНазва МПС

8.2.2.1. Запит результатів авторизації при використанні розстрочки від Монобанку у форматі JSON

Опис:

Для отримання статусу платежу або переліку транзакцій по компанії необхідно виконати запит на адресу: https://www.portmone.com.ua/gateway/.

Доступність і обмеження:

Для можливості робити запит, необхідно направити відповідного листа з зареєстрованої адреси електронної пошти менеджерам Portmone.com по співпраці з Інтернет-магазинами на адресу [email protected]

Структура запиту:

Будь ласка, зверніться до "8.2.2.1 Запит результатів авторизації при використанні розстрочки від Монобанку у форматі JSON" для вивчення структури запиту.

Опис параметрів запиту:

ПараметрОписОбов’язковий
methodЗначення: resultТак
loginЛогін Інтернет-магазину для доступу до управління акаунтомТак
passwordПароль Інтернет-магазинуТак
payeeIdІдентифікатор Інтернет-магазину. Надається кожному Партнерові індивідуально при підключенні до системи Portmone.comНе вказувати
shopOrderNumberНомер замовлення в Інтернет-магазині. Якщо не вказувати це значення, будуть обиратись замовлення без прив’язки до номераНі
shopbillIdІдентифікатор замовлення у системі Portmone.com. Необов’язковий параметрНі
statusОзнака статусу замовленнь, які потрібно включити до звіту. Може приймати значення:
- PAYED – оплачене,
- CREATED – створене,
- REJECTED – скасоване.
За попередньою опцією обираються замовлення з усіма типами статусів
Ні
startDateДата початку звіту. Формат: дд.мм.рррр. За попередньою опцією – поточна дата минулого місяцяНі
endDateДата закінчення звіту. Формат: дд.мм.рррр. За попередньою опцією – поточна датаНі
idКонстантаТак

Структура відповіді:

Будь ласка, зверніться до "8.2.2.1 Приклад успішної відповіді на запит у форматі JSON" для вивчення структури відповіді.

Опис параметрів відповіді:

ПараметрОпис
payeeIdІдентифікатор Інтернет-магазину. Надається кожному Партнерові індивідуально при підключенні до системи Portmone.com
descriptionОпис замовлення
statusСтатус замовлення
attribute1Службове поле, заповнюється на розсуд компанії
attribute2Службове поле, заповнюється на розсуд компанії
attribute3Службове поле, заповнюється на розсуд компанії
attribute4Службове поле, заповнюється на розсуд компанії
commissionЗначення поверненої комісії з платежу
bank_nameНазва банка еквайра
terminal_idНомер терміналу еквайра
merchant_idНазва терміналу
rrnRRN транзакціїї
pay_dateДата оплати
payee_export_dateДата відправки суми/повідомлення про сплату постачальникові
pay_order_dateДата банківського меморіального ордеру
chargebackЧи був поданий за транзакцією чарджбек
payee_commissionКоміся з мерчанта
payee_nameНазва мерчанта
shopBillIdІдентифікатор замовлення у системі Portmone.com
shopOrderNumberНомер замовлення (рахунку) у системі Інтернет-магазину. До 120 символів
billAmountСума рахунку
errorCodeКод помилки
errorMessageПовідомлення про помилку
authCodeКод авторизації банку (проставляється якщо замовлення оплачене)
cardMaskМаска Картки платника
tokenЗначення Токену для подальших оплат
gateTypeІдентифікатор методу оплати

8.3. Повідомлення серверу Інтернет-магазину про результат авторизації

Повідомлення про успішну оплату – BILLS

Опис:

Для обміну інформацією використовується система XML-повідомлень, що передаються з використанням протоколу HTTPS. Ініціатором обміну завжди є система Portmone.com. Компанія повинна забезпечити URL-адресу, на яку система Portmone.com надсилатиме XML-повідомлення методом POST через параметр data.

Приклад:

data=<?xml version="1.0" encoding="UTF-8"?><BILLS> …..

Повідомлення BILLS надсилається Portmone.com до компанії у випадку успішного виконання оплати. Воно призначене для отримання інформації про прийнятий платіж, не чекаючи надходження коштів на розрахунковий рахунок компанії. Повідомлення містить інформацію про один сплачений рахунок.

Структура повідомлення:

Будь ласка, зверніться до "8.3 Повідомлення про успішну оплату – BILLS" для вивчення структури повідомлення.

Опис полів повідомлення:

Назва поляТипКоментар
PAYEE\NAMECHAR(100)Назва компанії отримувача коштів
PAYEE\CODENUMBER(15,0)Код компанії (надається компанії системою Portmone.com)
BANK\NAMECHAR(100)Назва банку відправника
BANK\CODECHAR(6)МФО банку відправника.
У разі заповнення номеру рахунку відправника за стандартом IBAN в полі BANK\CODE передаватиметься значення "0" (нуль)
BANK\ACCOUNTCHAR(29)Рахунок банку відправника або IBAN (в залежності від того, який з реквізитів був заповнений при здійсненні платежу)
BILL_IDNUMBER(15,0)Унікальний ID рахунку у системі Портмоне. Компанія повинна перевіряти унікальність BILL_ID. Та не дозволяти реєструвати два повідомлення з однаковими BILL_ID.
Відповідає параметру SHOPBILLID (див. розділ 3 «Оплата замовлення»).
BILL_NUMBERCHAR(120)Номер рахунку.
Відповідає параметру shop_order_number (якщо переданий, див. розділ 3 «Оплата замовлення»).
BILL_DATECHAR(10)Дата рахунку. Формат YYYY-MM-DD
BILL_PERIODCHAR(4)Період, за який виставляється рахунок. Формат – MMYY (місяць та рік)
PAY_DATECHAR(10)Дата оплати. Формат YYYY-MM-DD
PAYED_AMOUNTNUMBER(15,2)Сума оплати. Розділювач крапка
PAYED_COMMISSIONNUMBER(15,2)Сума комісії з мерчанат
PAYED_DEBTNUMBER(15,2)В тому числі оплата боргу. Розділювач крапка
AUTH_CODECHAR(6)Код авторизації платіжної картки
CONTRACT_NUMBERCHAR(20)Параметр, за яким компанія та система Portmone.com домовились ідентифікувати клієнта
ATTRIBUTE1CHAR(20)Додатковий параметр ідентифікації клієнта. Якщо для ідентифікації абонента він не потрібний, то у повідомленні він не передається
ATTRIBUTE2CHAR(20)Додатковий параметр ідентифікації клієнта. Якщо для ідентифікації абонента він не потрібний, то у повідомленні він не передається
ATTRIBUTE3CHAR(20)Додатковий параметр ідентифікації клієнта. Якщо для ідентифікації абонента він не потрібний, то у повідомленні він не передається
ATTRIBUTE4CHAR(20)Додатковий параметр ідентифікації клієнта. Якщо для ідентифікації абонента він не потрібний, то у повідомленні він не передається

Приклади:

Дивіться "8.3 Приклад повідомлення BILLS".

Повідомлення про банківський платіж – PAY_ORDERS

Опис:

Для обміну інформацією використовується система XML-повідомлень, що передаються з використанням протоколу HTTPS. Ініціатором обміну завжди є система Portmone.com. Компанія повинна забезпечити URL-адресу, на яку система Portmone.com надсилатиме XML-повідомлення методом POST через параметр data.

Приклад:

data=<?xml version="1.0" encoding="UTF-8"?><PAY_ORDERS> …..

Повідомлення PAY_ORDERS надсилається системою Portmone.com до компанії та містить інформацію про банківські платежі. Це повідомлення використовується для звірення повідомлень BILLS з грошовими коштами, що перераховуються на розрахунковий рахунок компанії банком. Повідомлення містить інформацію про один банківський платіж.

Структура повідомлення:

Будь ласка, зверніться до "8.3 Повідомлення про банківський платіж – PAY_ORDERS" для вивчення структури повідомлення.

Опис полів повідомлення:

Назва поляТипКоментар
PAY_ORDER_IDNUMBER(15,0)ID платіжного доручення. Компанія повинна перевіряти унікальність PAY_ORDER_ID. Та не дозволяти реєструвати два повідомлення з однаковими PAY_ORDER_ID
PAY_ORDER_DATECHAR(10)Дата платіжного доручення. Формат YYYY-MM-DD
PAY_ORDER_NUMBERCHAR(20)Номер платіжного доручення
PAY_ORDER_AMOUNTNUMBER(15,2)Сума платіжного доручення. Розділювач – крапка
PAYEE\NAMECHAR(100)Назва компанії отримувача коштів
PAYEE\CODENUMBER(15,0)Код компанії (надається компанії системою Portmone.com)
BANK\NAMECHAR(100)Назва банку відправника
BANK\CODECHAR(6)МФО банку відправника.
У разі заповнення номеру рахунку відправника за стандартом IBAN в полі BANK\CODE передаватиметься значення "0" (нуль)
BANK\ACCOUNTCHAR(29)Рахунок банку відправника або IBAN (в залежності від того, який з реквізитів був заповнений при здійсненні платежу)
BILL_IDNUMBER(15,0)Унікальний ID рахунку у системі Портмоне. Компанія повинна перевіряти унікальність BILL_ID. Та не дозволяти реєструвати два повідомлення з однаковими BILL_ID.
Відповідає параметру SHOPBILLID (див. розділ 3 «Оплата замовлення»)
BILL_NUMBERCHAR(120)Номер рахунку.
Відповідає параметру shop_order_number (якщо переданий, див. розділ 3 «Оплата замовлення»).
BILL_DATECHAR(10)Дата рахунку. Формат YYYY-MM-DD
BILL_PERIODCHAR(4)Період, за який виставляється рахунок. Формат – MMYY (місяць та рік)
PAY_DATECHAR(10)Дата оплати. Формат YYYY-MM-DD
PAYED_AMOUNTNUMBER(15,2)Сума оплати. Розділювач крапка
PAYED_COMMISSIONNUMBER(15,2)Сума комісії, що буде утримана банком
PAYED_DEBTNUMBER(15,2)В тому числі оплата боргу. Розділювач крапка
AUTH_CODECHAR(6)Код авторизації платіжної картки
CONTRACT_NUMBERCHAR(20)Параметр, за яким компанія та система Portmone.com домовились ідентифікувати клієнта
ATTRIBUTE1CHAR(20)Додатковий параметр ідентифікації клієнта. Якщо для ідентифікації абонента він не потрібний, то у повідомленні він не передається
ATTRIBUTE2CHAR(20)Додатковий параметр ідентифікації клієнта. Якщо для ідентифікації абонента він не потрібний, то у повідомленні він не передається
ATTRIBUTE3CHAR(20)Додатковий параметр ідентифікації клієнта. Якщо для ідентифікації абонента він не потрібний, то у повідомленні він не передається
ATTRIBUTE4CHAR(20)Додатковий параметр ідентифікації клієнта. Якщо для ідентифікації абонента він не потрібний, то у повідомленні він не передається

Приклади:

Дивіться "8.3 Приклад повідомлення PAY_ORDERS".

Підтвердження прийому інформації про оплату – повідомлення RESULT

Опис:

Повідомлення RESULT компанія надсилає до системи Portmone.com у відповідь на повідомлення PAY_ORDERS та BILLS.

Структура повідомлення:

Будь ласка, зверніться до "8.3 Підтвердження прийому інформації про оплату – повідомлення RESULT" для вивчення структури повідомлення.

Опис полів повідомлення:

Назва поляТипКоментар
ERROR_CODENUMBER(15,0)Код помилки (0 у разі успішної обробки повідомлення)
REASONCHAR(250)Опис помилки

Приклади:

Дивіться "8.3 Приклад повідомлення RESULT".

8.4. Отримання виписок з результатами авторизації на електронну пошту

Виписки розсилаються магазинам відразу ж після успішної авторизації картки. Можливі два варианти розсилання виписок:

  1. Надсилання на e-mail Партнера двох електронних листів – одного з випискою у текстовому вигляді та другого з випискою у вигляді XML-повідомлення (дивіться "8.4 Приклад виписки з результатами авторизації у форматі XML");
  2. Надсилання на e-mail Партнера тільки текстового повідомлення.

Приклад виписки у текстовому вигляді:

В системі Portmone.com оплачено замовлення: Номер замовлення: 305966 Дата замовлення: 18.03.2010 Коментар: 50908: покриття по платіжним карткам Сума: 108.98 Валюта: UAH Код авторизації: 87446Z Тип авторизації: 3DSECURE

8.5. Повідомлення у форматі JSON

Повідомлення про успішну оплату у форматі JSON

Опис:

Повідомлення надсилається Portmone.com до компанії у випадку успішного виконання оплати. Компанія повинна забезпечити URL-адресу, на яку система Portmone.com надсилатиме повідомлення у форматі JSON.

Структура повідомлення:

Будь ласка, зверніться до "8.5 Повідомлення про успішну оплату у форматі JSON" для вивченя структури повідомлення.

Опис параметрів повідомлення:

ПараметрОпис
shopBillIdІдентифікатор транзакції (платіжного документу) у системі Portmone.com
shopOrderNumberНомер замовлення (рахунку) у системі Партнера
descriptionКоментар до замовлення/ опис призначення оплати
cardMaskМаска Картки платника
expDateСтрок дії Картки платника
billAmountПередана у запиті сума транзакції
statusСтатус замовлення. Можливі значення: PAYED, PREAUTH, REJECTED, CREATED. У разі успішної операції приймає значення PAYED або PREAUTH
tokenЗначення Токену для подальших оплат
authCodeКод авторизації банку (проставляється якщо замовлення оплачене)
receiptUrlПорожнє значення
attribute1Службове поле, заповнюється на розсуд компанії
attribute2Службове поле, заповнюється на розсуд компанії
attribute3Службове поле, заповнюється на розсуд компанії
attribute4Службове поле, заповнюється на розсуд компанії
errorCodeКод помилки
errorОпис помилки
notificationTypeСтатус нотифікації
cardTypeТип картки
bank_nameНазва банка-еквайра
terminal_idНомер терміналу еквайра
merchant_idНазва терміналу
rrnІдентифікатор транзакції (RRN)

Підтвердження прийому інформації про оплату у форматі JSON

Опис:

Це повідомлення надсилається компанією до системи Portmone.com у відповідь на повідомлення про успішну оплату у форматі JSON.

Структура повідомлення:

Будь ласка, зверніться до "8.5 Підтвердження прийому інформації про оплату у форматі JSON" для вивчення структури повідомлення.

Опис параметрів повідомлення:

ПараметрОпис
errorCodeКод помилки
reasonОпис помилки. Встановіть значення "OK" у разі успішної обробки повідомлення
responseIdЗначення генерується випадковим чином. Довжина – до 31 символу

8.6. Передача повідомлення про платіжне доручення (текстове повідомлення на e-mail про фінансове покриття за транзакціями)

Наступного дня після перерахування банком фінансового покриття на розрахунковий рахунок магазину, система Portmone.com надсилає на e-mail магазину листа з текстовим файлом, що містить перелік замовлень, які покриті цим платіжним дорученням.

Лист містить наступну інформацію:

Агент: ООО "ПОРТМОНЕ" Довіритель ТОВ Квіточка Реєстр отриманих оплат "Райффайзен банк Аваль" МФО 300335 розрахунковий рахунок 29249215 № п/д 6559503 дата 17.07.2010 +------------------------------------------------------------------------+ |Дата оплати |Номер замовлення |Код авт.|Сум. плат. | +------------------------------------------------------------------------+ |14.07.2014 00:08 | 141192| 171363| 191.00| |14.07.2014 02:10 | 141205| 29797B| 104.00| |14.07.2014 10:49 | 141225| 432054| 104.00| |14.07.2014 12:40 | 141249| 37614B| 89.00| |14.07.2014 14:47 | 141275| 34502Z| 158.00| |14.07.2014 14:54 | 141281| 083689| 220.00| |14.07.2014 18:52 | 141339| 841013| 290.50| |14.07.2014 19:26 | 141348| 587414| 91.00| |14.07.2014 19:35 | 141353| 389922| 141.50| |14.07.2014 19:56 | 141361| 638960| 74.00| |14.07.2014 22:08 | 141405| 61791B| 249.00| |14.07.2014 22:47 | 141418| 013761| 131.00| +------------------------------------------------------------------------+ Всього оплат на суму 1843.00 грн. Комісія 36.86 грн. Всього за день 1843.00 грн. Комісія 36.86 грн. Перераховується одержувачу 1806.14 грн.

8.7. Отримання посилання на квитанцію

Опис:

Для отримання посилання на квитанцію необхідно виконати запит у форматі JSON на адресу: https://www.portmone.com.ua/r3/api/gateway/.

Доступність і обмеження:

Немає обмежень.

Структура запиту:

Будь ласка, зверніться до "8.7 Запит для отримання посилання на квитанцію" для вивчення структури запиту.

Опис параметрів запиту:

ПараметрОписОбов’язковий
loginЛогін Інтернет-магазину для доступу до управління акаунтомТак
passwordПароль Інтернет-магазинуТак
shopOrderNumberНомер замовлення (рахунку) у системі Інтернет-магазинуТак
idКонстантаТак

Структура відповіді:

Будь ласка, зверніться до "8.7 Приклад відповіді" для вивчення структури відповіді.

9. Повернення коштів

9.1.1 запит повернення коштів у форматі POST

Опис:

URL для запиту: https://www.portmone.com.ua/gateway/.

Формат запиту: HTTPS POST

Доступність і обмеження:

Немає обмежень.

Структура запиту:

Будь ласка, зверніться до "9.1.1 Запит повернення коштів. POST запит" для вивчення структури запиту.

Опис параметрів запиту:

ПараметрОписОбов’язковий
methodЗначення: returnТак
loginЛогін Інтернет-магазинуТак
passwordПароль Інтернет-магазинуТак
shop_bill_idНомер замовлення у системі Portmone.com (має бути отриманий за допомогою методу result, що описаний у розділі 8.2 «Запит результатів авторизації»)Так
return_amountСума повернення. Можливе повернення суми платежу повністю або частковоТак
attribute1Додатковий параметрНі
attribute5Використовується при розщепленні оплати
encodingКодуванняНі
langМова повідомлень про помилкиНі

Структура відповіді:

Будь ласка, зверніться до "9.1.1 Успішна відповідь для процедури повернення коштів" для вивчення структури відповіді.

Секція результату <request> може бути використана для налагодження – теги відповідають реально отриманим параметрам запиту. Якщо якогось тегу у <request> немає – значить, цей параметр не був переданий у запиті.

У разі виникнення помилки під час виклику метода (наприклад, некоректному логіні і т.д.), секція <order> буде складатись тільки з двух тегів – <error_code> та <error_message> (див. "9.1 Неуспішна відповідь для процедури повернення коштів").

9.1.2 Запит повернення коштів у форматі JSON

Опис:

Для повернення коштів необхідно виконати запит на адресу: https://www.portmone.com.ua/gateway/.

Доступність і обмеження:

Немає обмежень.

Структура запиту:

Будь ласка, зверніться до "9.1.2 Запит повернення коштів у форматі JSON" для вивчення структури запиту.

Опис параметрів запиту:

ПараметрОписОбов’язковий
methodЗначення: returnТак
loginЛогін Інтернет-магазину для доступу до управління акаунтомТак
passwordПароль Інтернет-магазинуТак
payeeIdІдентифікатор Інтернет-магазину. Надається кожному Партнерові індивідуально при підключенні до системи Portmone.comТак
shopOrderNumberНомер замовлення (рахунку) у системі Інтернет-магазину. До 120 символівТак
shopbillIdІдентифікатор замовлення у системі Portmone.comНі
attribute5Використовується при розщепленні оплати
returnAmountСума повернення. Можливе повернення суми платежу повністю або частковоТак
messageКоментар до поверненняТак
idКонстантаТак

Важливо! Повернення може виконуватись за параметром shopOrderNumber або shopbillId. У випадку, коли передані обидва параметри, пошук буде виконуватись за параметром shopbillId. Якщо жодний з параметрів не був переданий, виникне помилка.

Структура відповіді:

Будь ласка, зверніться до "9.1.2 Формат відповіді"для вивчення структури відповіді.

Опис параметрів відповіді:

ПараметрОпис
descriptionОпис замовлення
statusСтатус замовлення
bank_idКод банка-эквайра
terminal_idНомер терміналу банка-эквайра
merchant_idНазва терміналу
rrnRRN транзакції (ідентифікатор трнанзакції в банківській системі)
attribute1Службове поле, заповнюється на розсуд компанії
attribute2Службове поле, заповнюється на розсуд компанії
attribute3Службове поле, заповнюється на розсуд компанії
attribute4Службове поле, заповнюється на розсуд компанії
attribute5Використовується при розщепленні оплати
commissionЗначення поверненої комісії з платежу
shopBillIdІдентифікатор замовлення у системі Portmone.com
shopOrderNumberНомер замовлення (рахунку) у системі Інтернет-магазину. До 120 символів
billAmountСума повернення
errorCodeКод помилки
errorMessageПовідомлення про помилку
authCodeКод авторизації банку (проставляється, якщо замовлення оплачене)
cardMaskМаска картки
tokenТокен картки
gateTypeІдентифікатор методу оплати

9.2 Запит відміни оплати у форматі JSON

Опис:

Для відміни оплати необхідно виконати запит на адресу: https://www.portmone.com.ua/gateway/.

Доступність і обмеження:

Запит можна використовувати за умови, якщо він відбуватиметься в день оплати.

Структура запиту:

Будь ласка, зверніться до "9.2 Запит повернення коштів у форматі JSON" для вивчення структури запиту.

Опис параметрів запиту:

ПараметрОписОбов’язковий
methodЗначення: rejectТак
loginЛогін Інтернет-магазину для доступу до управління акаунтомТак
passwordПароль Інтернет-магазинуТак
payeeIdІдентифікатор Інтернет-магазину. Надається кожному Партнерові індивідуально при підключенні до системи Portmone.comТак
shopOrderNumberНомер замовлення (рахунку) у системі Інтернет-магазину. До 120 символівТак
shopbillIdІдентифікатор замовлення у системі Portmone.comНі
returnAmountСума повернення. Можливе повернення суми платежу повністю або частковоТак
messageКоментар до поверненняНі
idКонстантаТак

Важливо! Повернення може виконуватись за параметром shopOrderNumber або shopbillId. У випадку, коли передані обидва параметри, пошук буде виконуватись за параметром shopbillId. Якщо жодний з параметрів не був переданий, виникне помилка.

Структура відповіді:

Будь ласка, зверніться до "9.2 Формат відповіді"для вивчення структури відповіді.

Опис параметрів відповіді:

ПараметрОпис
descriptionОпис замовлення
statusСтатус замовлення
bank_idКод банка-эквайра
terminal_idНомер терміналу банка-эквайра
merchant_idНазва терміналу
rrnRRN транзакції (ідентифікатор трнанзакції в банківській системі)
attribute1Службове поле, заповнюється на розсуд компанії
attribute2Службове поле, заповнюється на розсуд компанії
attribute3Службове поле, заповнюється на розсуд компанії
attribute4Службове поле, заповнюється на розсуд компанії
commissionЗначення поверненої комісії з платежу
shopBillIdІдентифікатор замовлення у системі Portmone.com
shopOrderNumberНомер замовлення (рахунку) у системі Інтернет-магазину. До 120 символів
billAmountСума повернення
errorCodeКод помилки
errorMessageПовідомлення про помилку
authCodeКод авторизації банку (проставляється, якщо замовлення оплачене)
cardMaskМаска картки
tokenТокен картки
gateTypeІдентифікатор методу оплати

10. Використання Gateway для сплати сервісів Portmone

Опис:

Платіжний шлюз Portmone дозволяє здійснювати оплату рахунків URL для виклику методів: – https://www.portmone.com.ua/r3/:lang/bills/merchant.

10.1. Методи

Назва методуОпис
10.1.1. getsessidрезультатом виклику методу _ getsessid_ є поверення параметру sessid, який необхідний для подальший запитів на формування рахунку
10.1.2. regionметод використовується для отримання списку регіонів України з пошуком за назвою регіону
10.1.3. citiesметод використовується для отримання списку населених пунктів вказаного регіону за назвою населеного пункту
10.1.4. streetsметод використовується для отримання списку вулиць вказаного населеного пункту з пошуком за назвою вулиці
10.1.5. housesметод використовується для отримання списку будинків для вказаної вулиці з пошуком за номером будинку
10.1.6. apartmentsметод використовується для отримання списку квартир за відомим ідентифікатором будинку (тільки для багатоквартирних будинків) з пошуком за номером квартири
10.1.7. getBillsAttributesByAddressIdметод використовується для отримання даних для формування рахунку
10.1.8. billsCreateметод використовується для отримання списку рахунків за знайденим ідентифікатором будинку (для приватних будинків) або квартири (для багатоквартирних будинків). Повертає рахунки з повною відповідністю за адресою
10.1.9. updateTariffItemsметод використовується для оновлення суми рахунку
10.1.10. payeesметод використовується для пошуку рахунків за особовим рахунком

10.1.1. Запит на отримання параметру сесії

Метод: _ getsessid_

Опис: результатом виклику методу _ getsessid_ є поверення параметру sessid, який необхідний для подальший запитів на формування рахунку.

Параметри:

ПараметрОписОбов’язковий
loginЛогін компанії-реселера в системі Portmone.comТак
passwordПароль компанії-реселера в системі Portmone.comТак
idКонстантаТак

Приклад запиту:

{
"method": "getsessid",
"params": {
"data": {
"login": "PORTMONE_DIRECT_IT_SERVE",
"password": "11111111"
}
},
"id": "1"
}

Приклад успішної відповіді:

{
"result": {
"errorCode": "0",
"error": "",
"status": "success",
"sessid": "3ek43kplfjlho2ndn75a66g6u1"
},
"id": "1"
}

10.1.2. Запит інформації по регіону

Метод: _ region_

Опис: результатом виклику методу _ region_ є отримання списку регіонів України.

Приклад запиту:

{
"method": "search",
"params": {
"data": {
"requestType": "region",
"query": "Кие"
}
},
"id": "1"
}

Приклад успішної відповіді:

{
"result": [
{
"regionId": "44",
"name": "м. Київ",
"sort": 4
},
{
"regionId": "45",
"name": "Київська область",
"sort": 4
}
],
"id": "1"
}

10.1.3. Запит інформації по містах (населених пунктах)

Метод: cities

Опис: результатом виклику методу _ cities_ є отримання списку міст (населених пунктів) по регіону.

Приклад запиту:

{
"method": "search",
"params": {
"data": {
"requestType": "cities",
"query": "Кие",
"regionId": "44"
}
},
"id": "1"
}

Приклад успішної відповіді:

{
"result": [
{
"cityId": "22",
"name": "м. Київ",
"sort": 4,
"highlight": null
}
],
"id": "1"
}

10.1.4. Запит інформації по вулицях

Метод: _ streets_

Опис: результатом виклику методу _ streets_ є отримання списку вулиць по місту (населеному пункту).

Приклад запиту:

{
"method": "search",
"params": {
"data": {
"requestType": "streets",
"query": "Лаврух",
"cityId": "22"
}
},
"id": "1"
}

Приклад успішної відповіді:

{
"result": [
{
"streetId": "2368",
"name": "вулиця Миколи Лаврухіна",
"sort": 4,
"highlight": "вулиця Миколи <em>Лаврух</em>іна"
}
],
"id": "1"
}

10.1.5. Запит інформації по будинках

Метод: _ houses_

Опис: результатом виклику методу houses є отримання списку будинків по вулиці.

Приклад запиту:

{
"method": "search",
"params": {
"data": {
"requestType": "houses",
"query": "14",
"streetId": "2368"
}
},
"id": "1"
}

Приклад успішної відповіді:

{
"result": [
{
"houseId": 373194,
"name": "14",
"hasApartments": "Y",
"highlight": "<em>14</em>",
"sort": 13
}
],
"id": "1"
}

10.1.6. Запит інформації по квартирах будинку

Метод: _ apartment_

Опис: результатом виклику методу _ apartment_ є отримання списку будинків по вулиці.

Приклад запиту:

{
"method": "search",
"params": {
"data": {
"requestType": "apartment",
"query": "34",
"houseId": "373194"
}
},
"id": "1"
}

Приклад успішної відповіді:

{
"result": [
{
"apartmentId": "7381096",
"name": "34",
"sort": 34,
"highlight": "<em>34</em>"
}
],
"id": "1"
}

10.1.7. Запит для отримання даних по формуваню рахунку

Метод: _ getBillsAttributesByAddressId_

Опис: результатом виклику методу _ getBillsAttributesByAddressId_ є отримання даних для формування рахунку.

Приклад запиту:

{
"method": "getBillsAttributesByAddressId",
"params": {
"data": {
"sessid": "3ek43kplfjlho2ndn75a66g6u11",
"addressId": "7587028"
}
},
"id": "1"
}

Приклад успішної відповіді:

{
"result": [
{
"payeeId": "22494",
"contractNumber": "168847",
"attribute1": "КИЇВ, ЛАВРУХІНА МИКОЛИ ВУЛ. Д14 КВ14",
"contractNumberTitle": "ІД",
"attribute1Title": "Адреса",
"contractNumberType": "N",
"attribute1Type": "C",
"attribute1ForInfo": "Y",
"payany": "N"
},
{
"payeeId": "14329",
"contractNumber": "164024100140100",
"attribute1": "КИЇВ, ЛАВРУХІНА МИКОЛИ ВУЛ. Д14 КВ14",
"contractNumberTitle": "О/р",
"attribute1Title": "Адреса",
"contractNumberType": "C",
"contractNumberSize": "15",
"attribute1Type": "C",
"attribute1ForInfo": "Y",
"payany": "N"
},
{
"payeeId": "17495",
"contractNumber": "12058901418",
"attribute1": "вул.Лаврухіна Миколи буд.14 кв.14",
"contractNumberTitle": "Особовий рахунок",
"attribute1Title": "Адреса",
"contractNumberType": "C",
"attribute1Type": "C",
"attribute1ForInfo": "Y",
"payany": "N"
}
],
"id": "1"
}

10.1.8. Запит на отримання рахунків

Метод: _ billsCreate_

Опис: результатом виклику методу _ billsCreate_ є отримання рахунків.

Приклад запиту:

{
"method": "billsCreate",
"params": {
"data": {
"sessid": "3ek43kplfjlho2ndn75a66g6u11",
"attributes": [
{
"payeeId": "22494",
"contractNumber": "168847"
},
{
"payeeId": "14329",
"contractNumber": "164024100140100"
},
{
"payeeId": "17495",
"contractNumber": "12058901418"
}
]
}
},
"id": "1"
}

Приклад успішної відповіді:

{
"result": {
"bills": [
{
"payeeId": "22494",
"contractNumber": "168847",
"billId": "802655789",
"billAmount": "0.00",
"billTariffItems": [
{
"billTariffItemId": "425366990",
"billId": "802655789",
"name": "Вивезення побутових відходів",
"subsidy": "0.00",
"tariff": "0",
"counter": "0",
"prevCounter": "0",
"amount": "36.12",
"calculatedAmount": "36.12",
"calculatedAmountClass": null,
"debt": "-41.58",
"paidDebt": "-36.12",
"paidDebtName": "врах.переп.",
"paidDebtClass": null,
"compensation": "0",
"itemTypeId": "28859",
"nameUa": "Вивезення побутових відходів",
"nameEng": "Вивезення побутових відходів",
"itemTypeCode": "727",
"itemTypeSubCode": "11",
"readOnly": "N",
"shortName": "Вивезення побутових відходів",
"shortNameUa": "Вивезення побутових відходів",
"shortNameEng": "Вивезення побутових відходів",
"attribute1": "36.12",
"attribute2": "121541",
"attribute3": "1921",
"attribute4": null,
"attribute5": null,
"attribute6": null,
"attribute7": null,
"attribute8": null,
"attribute9": null,
"attribute10": null,
"payeeName": null,
"calculated": "Y",
"counterState": "N",
"counterClass": null,
"prevCounterState": "N",
"prevCounterClass": null,
"tariffState": "N",
"tariffClass": null,
"subsidyState": "E",
"subsidyClass": null,
"amountState": "E",
"amountClass": null,
"debtState": "E",
"debtClass": null,
"attribute1State": "V",
"attribute1Class": null,
"attribute2State": "N",
"attribute2Class": null,
"attribute3State": "N",
"attribute3Class": null,
"attribute4State": null,
"attribute4Class": null,
"attribute5State": null,
"attribute5Class": null,
"tariffName": null,
"counterName": null,
"prevCounterName": null,
"subsidyName": "субсидія",
"debtName": "перепл.",
"attribute1Name": "нараховано",
"attribute2Name": null,
"attribute3Name": null,
"attribute4Name": null,
"attribute5Name": null,
"compansationName": null,
"overpayment": null,
"overpaymentName": null,
"overpaymentState": null,
"overpaymentClass": null,
"amountName": "сплачую",
"id": "425366990",
"canPaySeparateDebt": null,
"totalAmount": "0",
"totalAmountName": "сплачено",
"totalAmountState": "E",
"totalAmountClass": null,
"difference": null,
"differenceName": null,
"differenceState": null,
"differenceClass": null,
"negativeAmount": "N",
"counterAccuracy": null,
"description": null
}
],
"errorCode": "",
"errorMessage": ""
},
{
"payeeId": "14329",
"contractNumber": "164024100140100",
"billId": "802655793",
"billAmount": "3694.58",
"billTariffItems": [
{
"billTariffItemId": "425366992",
"billId": "802655793",
"name": "Централізоване постачання гарячої води лічильник",
"subsidy": "0.00",
"tariff": "0",
"counter": "0",
"prevCounter": "0",
"amount": "195.78",
"calculatedAmount": "195.78",
"calculatedAmountClass": null,
"debt": "3498.8",
"paidDebt": "3498.8",
"paidDebtName": "спл.борг",
"paidDebtClass": null,
"compensation": "0",
"itemTypeId": "26167",
"nameUa": "Централізоване постачання гарячої води лічильник",
"nameEng": "Централізоване постачання гарячої води лічильник",
"itemTypeCode": "677",
"itemTypeSubCode": "11",
"readOnly": "N",
"shortName": "Централізоване постачання гарячої води лічильник",
"shortNameUa": "Централізоване постачання гарячої води лічильник",
"shortNameEng": "Централізоване постачання гарячої води лічильник",
"attribute1": "195.78",
"attribute2": "116977",

"attribute3": "1834",
"attribute4": null,
"attribute5": null,
"attribute6": null,
"attribute7": null,
"attribute8": null,
"attribute9": null,
"attribute10": null,
"payeeName": null,
"calculated": "Y",
"counterState": "N",
"counterClass": null,
"prevCounterState": "N",
"prevCounterClass": null,
"tariffState": "N",
"tariffClass": null,
"subsidyState": "E",
"subsidyClass": null,
"amountState": "E",
"amountClass": null,
"debtState": "E",
"debtClass": null,
"attribute1State": "V",
"attribute1Class": null,
"attribute2State": "N",
"attribute2Class": null,
"attribute3State": "N",
"attribute3Class": null,
"attribute4State": null,
"attribute4Class": null,
"attribute5State": null,
"attribute5Class": null,
"tariffName": null,
"counterName": null,
"prevCounterName": null,
"subsidyName": "субсидія",
"debtName": "борг",
"attribute1Name": "нараховано",
"attribute2Name": null,
"attribute3Name": null,
"attribute4Name": null,
"attribute5Name": null,
"compansationName": null,
"overpayment": null,
"overpaymentName": null,
"overpaymentState": null,
"overpaymentClass": null,
"amountName": "сплачую",
"id": "425366992",
"canPaySeparateDebt": null,
"totalAmount": "3694.58",
"totalAmountName": "сплачено",
"totalAmountState": "E",
"totalAmountClass": null,
"difference": null,
"differenceName": null,
"differenceState": null,
"differenceClass": null,
"negativeAmount": "N",
"counterAccuracy": "0",
"description": null
},
{
"billTariffItemId": "425366993",
"billId": "802655793",
"name": "Централізоване постачання гарячої води лічильник",
"subsidy": "0.00",
"tariff": "97.89",
"counter": "2",
"prevCounter": "1",
"amount": "0",
"calculatedAmount": "97.89",
"calculatedAmountClass": null,
"debt": "0",
"paidDebt": "0",
"paidDebtName": null,
"paidDebtClass": null,
"compensation": "0",
"itemTypeId": "26168",
"nameUa": "Централізоване постачання гарячої води лічильник",
"nameEng": "Централізоване постачання гарячої води лічильник",
"itemTypeCode": "677",
"itemTypeSubCode": "20",
"readOnly": "N",
"shortName": "Централізоване постачання гарячої води лічильник",
"shortNameUa": "Централізоване постачання гарячої води лічильник",
"shortNameEng": "Централізоване постачання гарячої води лічильник",
"attribute1": "191555382А",
"attribute2": "116977",
"attribute3": "1834",
"attribute4": null,
"attribute5": "1",
"attribute6": null,
"attribute7": null,
"attribute8": null,
"attribute9": null,
"attribute10": null,
"payeeName": null,
"calculated": "Y",
"counterState": "V",
"counterClass": null,
"prevCounterState": "V",
"prevCounterClass": null,
"tariffState": "V",
"tariffClass": null,
"subsidyState": "N",
"subsidyClass": null,
"amountState": "N",
"amountClass": null,
"debtState": "N",
"debtClass": null,
"attribute1State": "V",
"attribute1Class": null,
"attribute2State": "N",
"attribute2Class": null,
"attribute3State": "N",
"attribute3Class": null,
"attribute4State": null,
"attribute4Class": null,
"attribute5State": null,
"attribute5Class": null,
"tariffName": "тариф",
"counterName": "поточні",
"prevCounterName": "поперед.",
"subsidyName": null,
"debtName": null,
"attribute1Name": "ID ліч.",
"attribute2Name": null,
"attribute3Name": null,
"attribute4Name": null,
"attribute5Name": null,
"compansationName": null,
"overpayment": null,
"overpaymentName": null,
"overpaymentState": null,
"overpaymentClass": null,
"amountName": null,
"id": "425366993",
"canPaySeparateDebt": null,
"totalAmount": "0",
"totalAmountName": null,
"totalAmountState": "N",
"totalAmountClass": null,
"difference": null,
"differenceName": null,
"differenceState": null,
"differenceClass": null,
"negativeAmount": "N",
"counterAccuracy": "2",
"description": null
},
{
"billTariffItemId": "425366994",
"billId": "802655793",
"name": "Централізоване постачання гарячої води лічильник. показання на дату оплати",
"subsidy": "0.00",
"tariff": "97.89",
"counter": "2",
"prevCounter": "0",
"amount": "0",
"calculatedAmount": "195.78",
"calculatedAmountClass": null,
"debt": "0",
"paidDebt": "0",
"paidDebtName": null,
"paidDebtClass": null,
"compensation": "0",
"itemTypeId": "26170",
"nameUa": "Централізоване постачання гарячої води лічильник. показання на дату оплати",
"nameEng": "Централізоване постачання гарячої води лічильник. counter meter readings on payment date",
"itemTypeCode": "677",
"itemTypeSubCode": "21",
"readOnly": "N",
"shortName": "Централізоване постачання гарячої води лічильник. показания на дату оплаты",
"shortNameUa": "Централізоване постачання гарячої води лічильник. показання на дату оплати",
"shortNameEng": "Централізоване постачання гарячої води лічильник. counter meter readings on payment date",
"attribute1": "191555382А",
"attribute2": "116977",
"attribute3": "1834",
"attribute4": null,
"attribute5": "1",
"attribute6": null,
"attribute7": null,
"attribute8": null,
"attribute9": null,
"attribute10": null,
"payeeName": null,
"calculated": "N",
"counterState": "E",
"counterClass": null,
"prevCounterState": "N",
"prevCounterClass": null,
"tariffState": "V",
"tariffClass": null,
"subsidyState": "N",
"subsidyClass": null,
"amountState": "N",
"amountClass": null,
"debtState": "N",
"debtClass": null,
"attribute1State": "V",
"attribute1Class": null,
"attribute2State": "N",
"attribute2Class": null,
"attribute3State": "N",
"attribute3Class": null,
"attribute4State": null,
"attribute4Class": null,
"attribute5State": null,
"attribute5Class": null,
"tariffName": "тариф",
"counterName": "поточні",
"prevCounterName": null,
"subsidyName": null,
"debtName": null,
"attribute1Name": "ID ліч.",
"attribute2Name": null,
"attribute3Name": null,
"attribute4Name": null,
"attribute5Name": null,
"compansationName": null,
"overpayment": null,
"overpaymentName": null,
"overpaymentState": null,
"overpaymentClass": null,
"amountName": null,
"id": "425366994",
"canPaySeparateDebt": null,
"totalAmount": "0",
"totalAmountName": null,
"totalAmountState": "N",
"totalAmountClass": null,
"difference": null,
"differenceName": null,
"differenceState": null,
"differenceClass": null,
"negativeAmount": "N",
"counterAccuracy": "2",
"description": null
},
{
"billTariffItemId": "425366995",
"billId": "802655793",
"name": "Централізоване постачання гарячої води лічильник",
"subsidy": "0.00",
"tariff": "97.89",
"counter": "2",
"prevCounter": "1",
"amount": "0",
"calculatedAmount": "97.89",
"calculatedAmountClass": null,
"debt": "0",
"paidDebt": "0",
"paidDebtName": null,
"paidDebtClass": null,
"compensation": "0",
"itemTypeId": "26168",
"nameUa": "Централізоване постачання гарячої води лічильник",
"nameEng": "Централізоване постачання гарячої води лічильник",
"itemTypeCode": "677",
"itemTypeSubCode": "20",
"readOnly": "N",
"shortName": "Централізоване постачання гарячої води лічильник",
"shortNameUa": "Централізоване постачання гарячої води лічильник",
"shortNameEng": "Централізоване постачання гарячої води лічильник",
"attribute1": "191554256А",
"attribute2": "116977",
"attribute3": "1834",
"attribute4": null,
"attribute5": "2",
"attribute6": null,
"attribute7": null,
"attribute8": null,
"attribute9": null,
"attribute10": null,
"payeeName": null,
"calculated": "Y",
"counterState": "V",
"counterClass": null,
"prevCounterState": "V",
"prevCounterClass": null,
"tariffState": "V",
"tariffClass": null,
"subsidyState": "N",
"subsidyClass": null,
"amountState": "N",
"amountClass": null,
"debtState": "N",
"debtClass": null,
"attribute1State": "V",
"attribute1Class": null,
"attribute2State": "N",
"attribute2Class": null,
"attribute3State": "N",
"attribute3Class": null,
"attribute4State": null,
"attribute4Class": null,
"attribute5State": null,
"attribute5Class": null,
"tariffName": "тариф",
"counterName": "поточні",
"prevCounterName": "поперед.",
"subsidyName": null,
"debtName": null,
"attribute1Name": "ID ліч.",
"attribute2Name": null,
"attribute3Name": null,
"attribute4Name": null,
"attribute5Name": null,
"compansationName": null,
"overpayment": null,
"overpaymentName": null,
"overpaymentState": null,
"overpaymentClass": null,
"amountName": null,
"id": "425366995",
"canPaySeparateDebt": null,
"totalAmount": "0",
"totalAmountName": null,
"totalAmountState": "N",
"totalAmountClass": null,
"difference": null,
"differenceName": null,
"differenceState": null,
"differenceClass": null,
"negativeAmount": "N",
"counterAccuracy": "2",
"description": null
},
{
"billTariffItemId": "425366996",
"billId": "802655793",
"name": "Централізоване постачання гарячої води лічильник. показання на дату оплати",
"subsidy": "0.00",
"tariff": "97.89",
"counter": "2",
"prevCounter": "0",
"amount": "0",
"calculatedAmount": "195.78",
"calculatedAmountClass": null,
"debt": "0",
"paidDebt": "0",
"paidDebtName": null,
"paidDebtClass": null,
"compensation": "0",
"itemTypeId": "26170",
"nameUa": "Централізоване постачання гарячої води лічильник. показання на дату оплати",
"nameEng": "Централізоване постачання гарячої води лічильник. counter meter readings on payment date",
"itemTypeCode": "677",
"itemTypeSubCode": "21",
"readOnly": "N",
"shortName": "Централізоване постачання гарячої води лічильник. показания на дату оплаты",
"shortNameUa": "Централізоване постачання гарячої води лічильник. показання на дату оплати",
"shortNameEng": "Централізоване постачання гарячої води лічильник. counter meter readings on payment date",
"attribute1": "191554256А",
"attribute2": "116977",
"attribute3": "1834",
"attribute4": null,
"attribute5": "2",
"attribute6": null,
"attribute7": null,
"attribute8": null,
"attribute9": null,
"attribute10": null,
"payeeName": null,
"calculated": "N",
"counterState": "E",
"counterClass": null,
"prevCounterState": "N",
"prevCounterClass": null,
"tariffState": "V",
"tariffClass": null,
"subsidyState": "N",
"subsidyClass": null,
"amountState": "N",
"amountClass": null,
"debtState": "N",
"debtClass": null,
"attribute1State": "V",
"attribute1Class": null,
"attribute2State": "N",
"attribute2Class": null,
"attribute3State": "N",
"attribute3Class": null,
"attribute4State": null,
"attribute4Class": null,
"attribute5State": null,
"attribute5Class": null,
"tariffName": "тариф",
"counterName": "поточні",
"prevCounterName": null,
"subsidyName": null,
"debtName": null,
"attribute1Name": "ID ліч.",
"attribute2Name": null,
"attribute3Name": null,
"attribute4Name": null,
"attribute5Name": null,
"compansationName": null,
"overpayment": null,
"overpaymentName": null,
"overpaymentState": null,
"overpaymentClass": null,
"amountName": null,
"id": "425366996",
"canPaySeparateDebt": null,
"totalAmount": "0",
"totalAmountName": null,
"totalAmountState": "N",
"totalAmountClass": null,
"difference": null,
"differenceName": null,
"differenceState": null,
"differenceClass": null,
"negativeAmount": "N",
"counterAccuracy": "2",
"description": null
}
],
"errorCode": "",
"errorMessage": ""
},
{
"payeeId": "17495",
"contractNumber": "12058901418",
"billId": "802655796",
"billAmount": "84.16",
"billTariffItems": [
{
"billTariffItemId": "425366998",
"billId": "802655796",
"name": "Електропостачання",
"subsidy": "0.00",
"tariff": "0",
"counter": "0",
"prevCounter": "0",
"amount": "84.16",
"calculatedAmount": "84.16",
"calculatedAmountClass": null,
"debt": "0",
"paidDebt": "0",
"paidDebtName": "спл.борг",
"paidDebtClass": null,
"compensation": "0",
"itemTypeId": "29634",
"nameUa": "Електропостачання",
"nameEng": "Power supply",
"itemTypeCode": "1",
"itemTypeSubCode": "1",
"readOnly": "N",
"shortName": "Электроснабжение",
"shortNameUa": "Електропостачання",
"shortNameEng": "Power supply",
"attribute1": null,
"attribute2": "84.16",
"attribute3": null,
"attribute4": null,
"attribute5": null,
"attribute6": null,
"attribute7": null,
"attribute8": null,
"attribute9": null,
"attribute10": null,
"payeeName": null,
"calculated": "Y",
"counterState": "E",
"counterClass": null,
"prevCounterState": "E",
"prevCounterClass": null,
"tariffState": "W",
"tariffClass": null,
"subsidyState": "E",
"subsidyClass": null,
"amountState": "E",
"amountClass": null,
"debtState": "E",
"debtClass": null,
"attribute1State": "N",
"attribute1Class": null,
"attribute2State": "V",
"attribute2Class": null,
"attribute3State": "N",
"attribute3Class": null,
"attribute4State": null,
"attribute4Class": null,
"attribute5State": null,
"attribute5Class": null,
"tariffName": "тариф",
"counterName": "поточ",
"prevCounterName": "поперед",
"subsidyName": "субс./пільг",
"debtName": "борг",
"attribute1Name": null,
"attribute2Name": "рек.сума",
"attribute3Name": null,
"attribute4Name": null,
"attribute5Name": null,
"compansationName": null,
"overpayment": null,
"overpaymentName": null,
"overpaymentState": null,
"overpaymentClass": null,
"amountName": "сума",
"id": "425366998",
"canPaySeparateDebt": null,
"totalAmount": "84.16",
"totalAmountName": "сплачено",
"totalAmountState": "E",
"totalAmountClass": null,
"difference": null,
"differenceName": null,
"differenceState": null,
"differenceClass": null,
"negativeAmount": "N",
"counterAccuracy": "0",
"description": null
}
],
"errorCode": "",
"errorMessage": ""
}
]
},
"id": "1"
}

10.1.9. Запит для оновлення даних по рахунку

Метод: _ updateTariffItems_

Опис: результатом виклику методу _ updateTariffItems_ є можливість для оновлення суми рахунку.

Приклад запиту:

{
"method": "updateTariffItems",
"params": {
"data": {
"sessid": "3ek43kplfjlho2ndn75a66g6u11",
"billId": "",
"billTariffItemId": "",
"tariff": "",
"counter": "",
"prevCounter": "",
"subsidy": "",
"debt": "",
"paidDebt": "",
"amount": "",
"attribute1": "",
"attribute2": "",
"attribute3": ""
}
},
"id": "1"
}

Приклад успішної відповіді:

{
"result": true,
"id": "1"
}

10.1.10. Пошук рахунку за особовим рахунком

Метод: _ payees_

Опис: результатом виклику методу payees є отримання рахунків.

Параметри:

ПараметрОписОбов’язковий
sessidПараметр, який отримали за допомогою методу getsessidТак
directПараметр, яки завжди приймає значення YТак
idКонстантаТак

Приклад запиту:

{
"method": "payees",
"params": {
"data": {
"sessid": "vsgput63liar2ktfn1dau7m3of",
"direct": "Y"
}
},
"id": "1"
}

Приклад успішної відповіді:

{
"result": [
{
"payeeId": "1003",
"merchant": null,
"terminal": null,
"name": "Укртелеком м. Київ",
"nameInCheck": "АТ \"УКРТЕЛЕКОМ\"",
"billMessage": "<b>Без комісії</b>",
"requestBillMessage": "Особовий рахунок повинен складатись із 16 цифр.",
"contractNumberTitle": "Особовий рахунок",
"contractNumberType": "C",
"contractNumberTypeFormat": null,
"contractNumberSize": "16",
"contractNumberMask": null,
"contractNumberHint": null,
"attribute1": null,
"attribute2": null,
"attribute3": null,
"attribute4": null,
"attribute5": null,
"attribute1Title": "Номер телефону",
"attribute1Type": "C",
"attribute1TypeFormat": null,
"attribute1Size": null,
"attribute1ForInfo": "Y",
"attribute1Mask": null,
"attribute1Hint": null,
"attribute2Title": "Адреса",
"attribute2Type": "C",
"attribute2TypeFormat": null,
"attribute2Size": null,
"attribute2ForInfo": "Y",
"attribute2Mask": "type:address",
"attribute2Hint": null,
"attribute3Title": null,
"attribute3Type": "C",
"attribute3TypeFormat": null,
"attribute3Size": null,
"attribute3ForInfo": "N",
"attribute3Mask": null,
"attribute3Hint": null,
"attribute4Title": null,
"attribute4Type": "C",
"attribute4TypeFormat": null,
"attribute4Size": null,
"attribute4ForInfo": "N",
"attribute4Mask": null,
"attribute4Hint": null,
"payeeGroupId": "1006",
"bankCode": "300346",
"bankName": "АТ \"Сенс Банк\"",
"bankAccount": "UA463003460000026007010194910",
"zkpo": "21560766"
},
....
]
}

Приклад неуспішної відповіді:

{
"error": {
"code": 400,
"message": "Оновіть sessid",
"data": {}
},
"id": "1"
}

10.2. Оплата рахунку за допомою Gateway

Опис:

Для здійснення оплати отриманого рахунку необхідно виконати запит на адресу: https://www.portmone.com.ua/gateway/. Перед запитом на форму оплати необхідно отримати параметр credentials через метод getcredentials зі значенням sessid отриманного в розділі 10.1.1.:

Приклад запиту:

{
"method": "getcredentials",
"params": {
"data": {
"sessid": "3ek43kplfjlho2ndn75a66g6u11"
}
},
"id": "1"
}

Приклад успішної відповіді:

{
"result": {
"credentials": "000186f6a4e33bf33625e9afdabc99afc7f7010085c89209407dd5ad0ea5074d83f3d0f73aecc606700f7c0a27bbc9189d82e5ba219a006cac545c57f4f883df76dccf0a100816964106057730fa953087a0a5fa75edb74ef26ab6e34f107d4828ed1718820addc1b915009d51b9671c601d9604f6894280ef20d6293cb22b528e4004e6fa6f00578e6373dd88ed7b71d61967b7aa08025732514294057b2eeca97c5d8da5cd0252f60a2751122b004280b156b409f69e457ee3039648dbc6e8a1a4ee68462599b314b4409630fbd965a9723583cd853a2becced809ee4101a4913cb7e8d81f3807387c2cb92e17b46d960cd26decafde037cfa1cd4396cfedd0b128e0b07ebe5279c5ee769c62d5929bec4894e1b80208be948564b4cbc670c01acc22225cb8e8beff1867cd32c6c0bc5fc30d898"
},
"id": "1"
}

Доступність і обмеження:

Немає обмежень.

Структура запиту:

Будь ласка, зверніться до "10.2 Запит на сплату рахунку" для вивчення структури запиту.

Параметри для формування JSON-структури запиту:

  1. paymentTypes – блок дозволяє обрати способи проведення платежів (Y – вмикати, N – не вмикати).
ПараметрОписОбов’язковий
cardДля оплати рахунку за допомогою картки необхідно вказати значення "Y" для цього параметруТак
gpayДля оплати рахунку за допомогою GooglePay необхідно вказати значення "Y" для цього параметруТак
applepayДля оплати рахунку за допомогою ApplePay необхідно вказати значення "Y" для цього параметруТак
  1. priorityPaymentTypes – цей блок дозволяє керувати розміщенням способів проведения платежів на строрінці. При значенні 0 навпроти методу оплати – вкладка з методом оплати не вмикається, інше по мірі зростання: 1 – до початку списку, 2 – на другій позиції, 3 – третя і т. д.

Важливо! У paymentTypes спосіб оплати повинен бути в значенні "Y", у priorityPaymentTypes – мати цифрове значення, що відмінне від 0 ("0" – вимикає відображення на сторінці оплати).

  1. payee – блок, що необхідний для ідентифікації партнера
ПараметрОписОбов’язковий
shopSiteIdЦифровий ідентифікатор каналу продажуНі
  1. order – блок, що містить опис платежу
ПараметрОписОбов’язковий
successUrlАдреса Інтернет-магазину, на яку буде спрямовано клієнта після успішної оплатиНі
failureUrlАдреса Інтернет-магазину, на яку буде спрямовано клієнта у разі скасування оплатиНі
  1. ** bill** – налаштування для роботи з рахунком
ПараметрОписОбов’язковий
idid рахункуОбов’язкове значення
billAmountСума рахункуОбовязкове значення
  1. payer – блок описує налаштування платника
ПараметрОписОбов’язковий
langМова інтерфейсу платіжної сторінки. Можливі значення: uk – українська мова, en – англійська, uk – українська моваНі
emailAddressАдреса електронної пошти платникаНі
  1. style – налаштування стилів сторінки оплати (див. розділ 3.3 «Управління зовнішнім виглядом сторінки оплати»).

  2. ** credentials** – параметр отриманий в данному розділі.

Структура відповіді:

Будь ласка, зверніться до "10.2 Відповідь на запит створення токену" для вивчення структури відповіді.

10.3. Отримання посилання для сплати рахунку

Опис:

Для отримання посилання необхідно виконати запит на адресу: https://www.portmone.com.ua/r3/uk/api/merchant-bills .

Перед запитом на форму оплати необхідно отримати параметр credentials через метод getcredentials зі значенням sessid отриманного в розділі 10.1.1.:

Приклад запиту:

{
"method": "getcredentials",
"params": {
"data": {
"sessid": "3ek43kplfjlho2ndn75a66g6u11"
}
},
"id": "1"
}

Приклад успішної відповіді:

{
"result": {
"credentials": "000186f6a4e33bf33625e9afdabc99afc7f7010085c89209407dd5ad0ea5074d83f3d0f73aecc606700f7c0a27bbc9189d82e5ba219a006cac545c57f4f883df76dccf0a100816964106057730fa953087a0a5fa75edb74ef26ab6e34f107d4828ed1718820addc1b915009d51b9671c601d9604f6894280ef20d6293cb22b528e4004e6fa6f00578e6373dd88ed7b71d61967b7aa08025732514294057b2eeca97c5d8da5cd0252f60a2751122b004280b156b409f69e457ee3039648dbc6e8a1a4ee68462599b314b4409630fbd965a9723583cd853a2becced809ee4101a4913cb7e8d81f3807387c2cb92e17b46d960cd26decafde037cfa1cd4396cfedd0b128e0b07ebe5279c5ee769c62d5929bec4894e1b80208be948564b4cbc670c01acc22225cb8e8beff1867cd32c6c0bc5fc30d898"
},
"id": "1"
}

Доступність і обмеження:

Немає обмежень.

Структура запиту:

Будь ласка, зверніться до "10.3 Запиту отримання посилання для сплати рахунку" для вивчення структури запиту.

Параметри для формування JSON-структури запиту:

  1. paymentTypes – блок дозволяє обрати способи проведення платежів (Y – вмикати, N – не вмикати).
ПараметрОписОбов’язковий
cardДля оплати рахунку за допомогою картки необхідно вказати значення "Y" для цього параметруТак
gpayДля оплати рахунку за допомогою GooglePay необхідно вказати значення "Y" для цього параметруТак
applepayДля оплати рахунку за допомогою ApplePay необхідно вказати значення "Y" для цього параметруТак
  1. priorityPaymentTypes – цей блок дозволяє керувати розміщенням способів проведения платежів на строрінці. При значенні 0 навпроти методу оплати – вкладка з методом оплати не вмикається, інше по мірі зростання: 1 – до початку списку, 2 – на другій позиції, 3 – третя і т. д.

Важливо! У paymentTypes спосіб оплати повинен бути в значенні "Y", у priorityPaymentTypes – мати цифрове значення, що відмінне від 0 ("0" – вимикає відображення на сторінці оплати).

  1. payee – блок, що необхідний для ідентифікації партнера
ПараметрОписОбов’язковий
shopSiteIdЦифровий ідентифікатор каналу продажуНі
  1. order – блок, що містить опис платежу
ПараметрОписОбов’язковий
successUrlАдреса Інтернет-магазину, на яку буде спрямовано клієнта після успішної оплатиНі
failureUrlАдреса Інтернет-магазину, на яку буде спрямовано клієнта у разі скасування оплатиНі
  1. ** bill** – налаштування для роботи з рахунком
ПараметрОписОбов’язковий
idid рахункуОбов’язкове значення
billAmountСума рахункуОбовязкове значення

Структура відповіді:

Будь ласка, зверніться до "10.3 Відповідь на запит отримання посилання для сплати рахунку" для вивчення структури відповіді.

11. Використання Gateway для мобільних додатків

Для інтеграції платіжного шлюзу Potrmone.com у мобільні додатки (наприклад, iOS або Android) можливо використовувати механізми custom-URL. Вони дозволяють викликати з додатку сторінку платіжного шлюзу з необхідними параметрами і після оплати отримати управління назад у додаток.

Приклад, як це можливо зробити для iOS додатків:

Звернення до url на оплату робиться методом GET (! а не POST) з передачею усіх параметрів, що вказані в нашій документації з підключення Інтернет-магазину.

У якості параметрів success_url та failure_url необхідно вказати url-и, в яких замість https протоколу вказаний певний custom utl type, що зареєстрований в iOS додатку Інтернет-магазину.

Наприклад, якщо в iOS-додатку зареєстрований наступний url type: “customurl”, то параметри success_url та failure_url будуть виглядати так:

success_url = “customurl://success” failure_url = “customurl://failure”

URL виклику сервісу Portmone.com буде виглядати так:

https://www.portmone.com.ua/gateway/?payee_id=1185&bill_amount=123.56 &shop_order_number=shopordernumber1&description=My%20test &success_url=customurl://success&failure_url=customurl://failure

де:

payee_id = 1185 – ID Інтернет-магазину

bill_amount = 123.56 – сума до сплати за замовленням

shop_order_number = shopordernumber – номер замовлення

description = “My test” – коментар до замовлення

В результаті такого виклику буде відкритий браузер із стандартною сторінкою оплати замовлення, де необхідно ввести реквізити картки. За результатами виконання оплати буде викликаний або success_url, або failure_url з параметрів первинного запиту магазину, та відповідно буде виконаний переход до iOS-програми Інтернет-магазину.

Зовнішній вигляд сторінки, адаптованої для екрану смартфонів, показаний на малюнку:

Зовнішній вигляд сторінки оплати на екрані смартфону

12. Виставлення рахунків клієнтам

Платіжний шлюз Portmone.com дозволяє виставляти рахунки (замовлення) на оплату по e-mail або SMS.

12.1. Відправка рахунку по e-mail

Для відправки рахунку по e-mail необхідно викликати форму з наступними параметрами:

ПараметрОписОбов’язковий
loginЛогін Інтернет-магазину для доступу до управління акаунтомТак
passwordПароль Інтернет-магазинуТак
payeeIdІдентифікатор Інтернет-магазину. Надається кожному Партнерові індивідуально при підключенні до системи Portmone.comТак
shopOrderNumberНомер замовлення (рахунку) у системі Інтернет-магазину. До 120 символівНі
namePayerІм’я КлієнтаНі
commentКоментар до оплатиНі
amountСума оплатиТак
emailRecipientАдреса електронної пошти КлієнтаТак
langМова листаНі
cc_emailЕлектронна адреса, на яку буде надіслано копію рахункуНі
preauth_flagОзнака преавторизації платежу (значення "Y" вказує на те, що ця оплата здійснюється з використанням процедури преавторизації (див. розділ 6 «Платежі з преавторизацією»), значення "N" – звичайна оплата без преавторизації)Ні
bill_currencyВалюта проведення платежу. Можливі значення: UAH, USD, EUR, GBP, PLN, KZT (значення без задання – UAH)Ні
expDateВстановлює час, до якого Клієнт може сплатити рахунок. По закінченню зазначеного часу рахунок переходить в статус "REJECTED" і оплатити його неможливо. Передається у форматі: ррррммддггххсс (наприклад, 20181208130724)Ні
attribute5Використовується для передачі параметрів розщеплення платежу (див. розділ 7 «Розщеплення платежу»)Ні

Приклади:

Дивіться "12.1 Форма для відправки рахунку по e-mail".

12.2. Відправка рахунку за допомогою SMS

Для відправки рахунку за допомогою SMS необхідно викликати форму з наступними параметрами:

ПараметрОписОбов’язковий
loginЛогін Інтернет-магазину для доступу до управління акаунтомТак
passwordПароль Інтернет-магазинуТак
payeeIdІдентифікатор Інтернет-магазину. Надається кожному Партнерові індивідуально при підключенні до системи Portmone.comТак
shopOrderNumberНомер замовлення (рахунку) у системі Інтернет-магазину. До 120 символівНі
namePayerІм’я КлієнтаНі
commentКоментар до оплатиНі
amountСума оплатиТак
phoneRecipientНомер мобільного телефону КлієнтаТак
langМова SMS-повідомленняНі
preauth_flagОзнака преавторизації платежу (значення "Y" вказує на те, що ця оплата здійснюється з використанням процедури преавторизації (див. розділ 6 «Платежі з преавторизацією»), значення "N" – звичайна оплата без преавторизації)Ні
bill_currencyВалюта проведення платежу. Можливі значення: UAH, USD, EUR, GBP, PLN, KZT (значення без задання – UAH)Ні
expDateВстановлює час, до якого Клієнт може сплатити рахунок. По закінченню зазначеного часу рахунок переходить в статус "REJECTED" і оплатити його неможливо. Передається у форматі: ррррммддггххсс (наприклад, **20181208
0724**)Ні
attribute5Використовується для передачі параметрів розщеплення платежу (див. розділ 7 «Розщеплення платежу»)Ні

Приклади:

Дивіться "12.2 Форма для відправки рахунку по SMS".

При отриманні такого рахунку на оплату, клієнт отримає повідомлення наступного змісту:

Приклад повідомлення

При кліку на гіпертекстовому посиланні для оплати у клієнта відкриється сторінка для оплати такого змісту:

Зовнішній вигляд сторінки оплати на екрані смартфону

12.3. Масове виставлення рахунків на оплату по e-mail або SMS

Опис:

Для масового виставлення рахунків по e-mail або SMS необхідно надіслати запит на такий URL: https://www.portmone.com.ua/r3/api/gateway/.

Доступність і обмеження:

У блоці даних повинно бути мінімум 5 обов'язкових параметрів, що заповнені в суворій послідовності (див. таблицю з описом параметрів запиту). Також є 4 додаткові параметри, які заповнюються за необхідності.

За один раз можливо виставити максимум 100 рахунків.

Структура запиту:

Будь ласка, зверніться до "12.3 Запит для масового виставлення рахунків" для вивчення структури запиту.

Опис параметрів запиту:

Порядок у блоці данихПараметрОписОбов’язковий
1ПІБ одержувачаІм’я Клієнта, яке буде відображатись у рахунку, що надійдеТак
2E-mail одержувача або номер телефону одержувачаАдреса електронної пошти або номер мобільного телефону Клієнта. Номер телефону необхідно вказувати у форматі "+380ХХХХХХХХХ"Так
3Номер замовленняНомер замовлення (рахунку) у системі Інтернет-магазину. До 120 символівТак
4Призначення платежуКоментар до замовлення/ опис призначення оплатиТак
5СумаСума оплатиТак
6ВалютаВалюта проведення платежу. Можливі значення: UAH, USD, EUR, GBP, KZT, PLN (значення без задання – UAH)Ні
7ПреавторизаціяОзнака преавторизації платежу (значення "Y" вказує на те, що ця оплата здійснюється з використанням процедури преавторизації (див. розділ 6 «Платежі з преавторизацією»), значення "N" – звичайна оплата без преавторизації. Значення без задання – "N")Ні
8Мова рахункуМова електронного листа або SMS-повідомленя. Може приймати значення: uk – українська мова, en – англійська. Якщо параметр не переданий, то рахунок виставляється українською мовоюНі
9Термін дії рахункуВстановлює час, до якого Клієнт може сплатити рахунок. По закінченню зазначеного часу рахунок переходить в статус "REJECTED" і оплатити його неможливо. Передається у форматі: ррррммддггххсс (наприклад, 20181208130724)Ні

Структура відповіді:

Будь ласка, зверніться до "12.3 Успішна відповідь" для вивчення структури відповіді.

12.4. Отримання платіжного посилання

Опис:

Якщо не вказувати значення expDate, тоді посилання не матиме строку дії. Для отримання платіжного посилання необхідно надіслати запит на такий URL: https://www.portmone.com.ua/r3/api/gateway/.

Доступність і обмеження:

Немає обмежень.

Структура запиту:

Будь ласка, зверніться до "12.4 Запит для отримання платіжного посилання" для вивчення структури запиту.

Опис параметрів запиту:

ПараметрОписОбов’язковий
loginЛогін Інтернет-магазину для доступу до управління акаунтомТак
passwordПароль Інтернет-магазинуТак
payeeIdІдентифікатор Інтернет-магазину. Надається кожному Партнерові індивідуально при підключенні до системи Portmone.comТак
amountСума оплатиТак
shopOrderNumberНомер замовлення (рахунку) у системі Інтернет-магазину. До 120 символівНі
emailRecipientАдреса електронної пошти Клієнта, яка буде автоматично заповнена на сторінці оплатиНі
descriptionКоментар до оплатиНі
preauth_flagОзнака преавторизації платежу (значення "Y" вказує на те, що ця оплата здійснюється з використанням процедури преавторизації (див. розділ 6 «Платежі з преавторизацією»), значення "N" – звичайна оплата без преавторизації)Ні
bill_currencyВалюта проведення платежу. Можливі значення: UAH, USD, EUR, GBP, PLN, KZT (значення без задання – UAH)Ні
expDateВстановлює час, до якого Клієнт може сплатити рахунок. По закінченню зазначеного часу рахунок переходить в статус "REJECTED" і оплатити його неможливо. Передається у форматі: ррррммддггххсс (наприклад, 20181208130724)Ні
attribute1Службове поле, заповнюється на розсуд компаніїНі
attribute2Службове поле, заповнюється на розсуд компаніїНі
attribute3Службове поле, заповнюється на розсуд компаніїНі
attribute4Службове поле, заповнюється на розсуд компаніїНі
attribute5Використовується для передачі параметрів розщеплення платежу (див. розділ 7 «Розщеплення платежу»)Ні
  1. goods – блок, що містить масив даних для фіскалізації.
ПараметрОписОбов’язковий
internalCodeКод продавцяТак
manufacturerCodeКод виробникаНі
govClassificationCodeКод УКТЗЕДНі
nameНазва товару\послугиТак
name_enНазва товару\послуги ENНі
descriptionОпис товару\послугиНі
description_enОпис товару\послуги ENНі
priceЦіна ( шт)Так
quantityКількістьТак
uomCodeОдиниця виміру ( не обов'язково, за замовчуванням шт)Ні
amountСумаТак
taxRateCodesЦифровий код ставки податку (попередньо програмується у особистому кабінеті податвого агента). Якщо до товару потрібно застосувати декілька податків - вказати через комуТак
descriptionUrlПоcилання на опису товараНі
imageUrlПосилання на картинку товаруНі

Структура відповіді:

Будь ласка, зверніться до "12.4 Успішна відповідь" для вивчення структури відповіді.

12.5. Створення платіжного посилання

Опис:

Метод дозволяє створти платіжне посилання і отримати його на сервер мерчанта. Підходить для використання у Instagram, Facebook. Якщо не вказати expTime то цей виклик не створює інвойс, а складає дані в сесію, яка живе 15 хв після останнього звернення до неї. Для створення платіжного посилання необхідно надіслати запит на такий URL: https://www.portmone.com.ua/gateway/.

Доступність і обмеження:

Немає обмежень.

Структура запиту:

Будь ласка, зверніться до "12.5 Запит для створення платіжного посилання" для вивчення структури запиту.

Опис параметрів запиту:

  1. payee – блок, що необхідний для ідентифікації партнера
ПараметрОписОбов’язковий
payeeIdІдентифікатор Інтернет-магазину. Надається кожному Партнерові індивідуально при підключенні до системи Portmone.comТак
loginЛогін компанії. Використовується при перевірці підпису (необхідний, якщо переданий параметр signature)Так
dtЧас створення запиту. Використовується при перевірці підпису (необхідний, якщо переданий параметр signature)Так
signatureПідпис запитуТак
shopSiteIdЦифровий ідентифікатор каналу продажуНі
  1. order – блок, що містить опис платежу
ПараметрОписОбов’язковий
descriptionОпис платежу (коментар до замовлення/призначення оплати)Ні
shopOrderNumberНомер замовлення, що сплачується, у системі ПартнераНі
billAmountСума платежуТак
successUrlАдреса Інтернет-магазину, на яку буде спрямовано клієнта після успішної оплатиНі
failureUrlАдреса Інтернет-магазину, на яку буде спрямовано клієнта у разі скасування оплатиНі
preauthFlagОзнака преавторизації платежу (значення "Y" вказує на те, що ця оплата здійснюється з використанням процедури преавторизації (див. розділ 6 «Платежі з преавторизацією»), значення "N" – звичайна оплата без преавторизації)Ні
billCurrencyВалюта проведення платежу. Значення без задання: UAHНі
expTimeВстановлює інтервал, протягом якого замовлення може бути оплачене. Якщо значення параметру було передане, то з моменту виклику платіжної сторінки показується зворотний відлік, який видно Клієнту на сторінці оплати. По закінченню часу на оплату рахунок переходить в статус "REJECTED" і оплатити його неможливоНі
encodingКодування (кодує текст запиту з встановленого кодування у UTF-8)Ні
attribute1Службове поле, заповнюється на розсуд компаніїНі
attribute2Службове поле, заповнюється на розсуд компаніїНі
attribute3Службове поле, заповнюється на розсуд компаніїНі
attribute4Службове поле, заповнюється на розсуд компаніїНі
attribute5Використовується для передачі параметрів розщеплення платежу (див. розділ 7 «Розщеплення платежу»)Ні
  1. paymentTypes – дозволяє обрати способи проведення платежів (Y – вмикати, N – не вмикати). Якщо параметри не задані, тоді використовуються способи платежів, що закріплені за Інтернет-магазином у налаштуваннях Portmone.com, або вмикаються два основні способи проведення платежів: "card", "portmone".
ПараметрОписОбов’язковий
cardОплата КарткоюНі
portmoneОплата через гаманець Portmone.comНі
tokenОплата за Токеном (у разі активації цього параметру, інші способи не відображаються)Ні
clicktopayОплата за допомогою Visa Click to PayНі
privatОплата через систему LiqPay, з вибором картки з Інтернет-банкінгу Приват24.
Зверніть увагу! При оплаті через Приват24 функціонал преавторизації не працює
Ні
gpayОплата через систему Google Pay, з вибором картки з тих, що були раніше збережені в акаунті Google PayНі
createtokenonlyСтворення Токену для проведення платежів за Токеном (у разі активації цього параметру, інші способи не відображаються). Параметр надає можливість отримати Токен Картки без проведення реальної оплати (на рахунку блокується 1 грн, яка повертається протягом 30 хвилин). Підходить для звичайних оплат на користь Інтернет-магазину (див. розділ 4 «Оплата замовлення з використанням платіжного токену»), а також для подальшого використання у рамках платежів з картки на картку (див. розділ 5 «Переказ з картки на картку»)Ні
applepayОплата через систему Apple Pay, з вибором картки з тих, що були раніше збережені в акаунті Apple PayНі
linkОплата методом BankPay (через застосунок Банка платника). Метод працює за умови передачі таких параметрів: expTime та "showEmail": "Y"Ні
  1. priorityPaymentTypes – цей блок дозволяє керувати розміщенням способів проведення платежів на сторінці. При значенні 0 навпроти методу оплати – вкладка з методом оплати не вмикається, інше по мірі зростання: 1 – до початку списку, 2 – на другій позиції, 3 – третя і т. д.

Важливо! У paymentTypes спосіб оплати повинен бути в значенні "Y", у priorityPaymentTypes – мати цифрове значення, що відмінне від 0 ("0" – вимикає відображення на сторінці оплати).

  1. token – налаштування для роботи з Токеном (див. розділ 4 «Оплата замовлення з використанням платіжного токену»)
ПараметрОписОбов’язковий
tokenFlagВмикає оплату за Токеном ("N" – не вмикати, "Y" – прийняти до уваги обробку даних)Обов’язковий параметр для оплати за Токеном
returnToken"Y" – вмикає опцію повернення Токена партнеру на сторінці успішної оплати, "N" або порожнє значення – не повертає Токен на сторінці успішної оплати партнераНі
tokenЗначення ТокенуОбов’язковий параметр для оплати за Токеном
cardMaskМаска КарткиОбов’язковий параметр для оплати за Токеном
otherPaymentMethodsДозволяє вмикати інші способи проведення платежу, коли переданий Токен ("N" – вимикає, "Y" – вмикає)Ні
  1. payer – блок описує налаштування платника
ПараметрОписОбов’язковий
langМова інтерфейсу платіжної сторінки. Можливі значення: uk – українська мова, en – англійськаНі
emailAddressАдреса електронної пошти платникаНі
showEmail"Y" або порожнє значення – вмикає відображення поля "e-mail" на сторінці оплати, "N" – приховує поле "e-mail" на сторінці оплати (значення без задання – "Y")Ні

В залежності від переданих значень параметрів emailAddress та showEmail можливі 4 варіанти відображення поля "e-mail" на сторінці оплати:

ВаріантemailAddressshowEmailВідображення на сторінці оплати
1порожнє значенняYВідображається порожнє поле вводу e-mail
2валідний
e-mail
YВідображається попередньо заповнене поле вводу e-mail з можливістю редагування
3порожнє значенняNПоле вводу адреси електронної пошти не відображається на сторінці оплати. При відкритті сторінки оплати не перевіряється, чи передана Мерчантом адреса електронної пошти та чи є вона валідною
4валідний
e-mail
NПоле вводу адреси електронної пошти не відображається на сторінці оплати. При відкритті сторінки оплати не перевіряється, чи передана Мерчантом адреса електронної пошти та чи є вона валідною. Однак e-mail, що переданий у запиті, обробляється і на нього надсилається квитанція про сплату

Структура відповіді:

Будь ласка, зверніться до "12.5 Успішна відповідь" для вивчення структури відповіді.

12.6 Закрити рахунок

Опис:

Метод дозволяє закрити виставлений рахунок в статусі CREATED та REJECTED (рахунок стає неактнивним).

Для створення платіжного посилання необхідно надіслати запит на такий URL: https://www.portmone.com.ua/gateway/.

Доступність і обмеження:

Немає обмежень.

Структура запиту:

Будь ласка, зверніться до "12.6 Запит для створення платіжного посилання" для вивчення структури запиту.

Опис параметрів запиту:

ПараметрОписОбов’язковий
methodЗначення: closeInvoiceТак
loginЛогін Інтернет-магазину для доступу до управління акаунтомТак
passwordПароль Інтернет-магазинуТак
payeeIdІдентифікатор Інтернет-магазину. Надається кожному Партнерові індивідуально при підключенні до системи Portmone.comТак
shopOrderNumberНомер замовлення в Інтернет-магазиніТак

Структура відповіді:

Будь ласка, зверніться до "12.6 Успішна відповідь" для вивчення структури відповіді.

Опис параметрів відповіді:

ПараметрОпис
descriptionОпис замовлення
statusСтатус замовлення
attribute1Службове поле, заповнюється на розсуд компанії
attribute2Службове поле, заповнюється на розсуд компанії
attribute3Службове поле, заповнюється на розсуд компанії
attribute4Службове поле, заповнюється на розсуд компанії
commissionЗначення поверненої комісії з платежу
shopBillIdІдентифікатор замовлення у системі Portmone.com
shopOrderNumberНомер замовлення (рахунку) у системі Інтернет-магазину. До 120 символів
billAmountСума рахунку
errorCodeКод помилки
errorMessageПовідомлення про помилку
authCodeКод авторизації банку (проставляється якщо замовлення оплачене)
cardMaskМаска Картки платника
tokenЗначення Токену для подальших оплат
gateTypeІдентифікатор методу оплати

13. Переказ коштів з рахунку на картку.

Опис:

Дозволяє здійснювати переказ коштів з розрахункового рахунку на Картку. Для здійснення переказу коштів з рахунку на картку необхідно виконати запит на такий URL: https://www.portmone.com.ua/r3/pm/

Важливо! При використанні даного сервісу мерчанти стають податковими агентами і зобов'язані сплачувати податки (ПДФО, ЄСВ, ВЗ). Виключенням являються компанії,які мають ліцензії на здійснення особливого виду діяльності такі як: МФО (мікрокредитні організації), СК (страхові компанії).

Доступність і обмеження:

Метод працює тільки у синхронному режимі (mode = 1101).

Структура запиту:

Будь ласка, зверніться до "13 Запит на переказ коштів з рахунку на картку" для вивчення структури запиту.

Опис параметрів запиту:

ПараметрОписОбов’язковий
paymentTypeНеобхідно вказати значення "a2c_1" для цього параметруТак
descriptionНомер картки одержувачаТак
attribute1Службове поле. Залишити порожнімНі
attribute2Передається інформація для перказу коштівза необхідністю
attribute3Службове поле, заповнюється на розсуд компаніїНі
attribute4Службове поле, заповнюється на розсуд компаніїНі
billAmountСума платежуТак
payeeIdІдентифікатор Партнера. Надається кожному Партнерові індивідуально при підключенні до системи Portmone.comТак
shopOrderNumberНомер замовлення, що сплачується, у системі ПартнераНі
cvvVerifyFlagЗначення без задання – "Y", для платежів без CVV2 необхідно встановлювати значення "N"Ні
tokenЗалишити порожнімНі
billCurrencyВалюта проведення платежу. Значення без задання: UAHНі
preauthFlagОзнака преавторизації платежу (значення "Y" вказує на те, що ця оплата здійснюється з використанням процедури преавторизації (див. розділ 6 «Платежі з преавторизацією»), значення "N" – звичайна оплата без преавторизації)Ні
shopSiteIdЦифровий ідентифікатор каналу продажуНі
cardDataЗашифроване значення даних платіжної картки (номер картки, термін дії (місяць та рік), CVV2)Ні
dtЧас створення запиту. Використовується для перевірки підпису. Передається у форматі: yyyymmddhhmmss (наприклад, 20181208130724)Так
signatureПідпис запиту. Формування підпису див. у розділі 2.2 "Підпис запиту"Так
modeДля роботи в синхронному режимі використовується значення "1101"Так
senderДля роботи в синхронному режимі використовується значення "1101"Так

Блок identification (ідентифікація відправника/отримувача).

Дані відправника

sender

ПараметрОписОбов’язковий
firstNameІм'я відправника. У разі юридичної особи вказувати назву ТОВ "Квітка" або ФОП ПІБТак
lastNameПриізвище відправника. У разі юридичної особи вказувати назву ТОВ "Квітка" або ФОП ПІБТак
firstNameІм'я по батькові відправникаНі
account_numberНомер розрахункового рахунку відправникаТак

senderAddress

ПараметрОписОбов’язковий
countryCodeКод країни реєстраціїТак
cityМісто реєстраціїТак
addressАдреса реєстраціїТак
zipCodeКодНі

Дані одержувача

recipient

ПараметрОписОбов’язковий
dstFirstNameІм'я одержувачаТак
dstLastNameПрізвище одержувачаТак
dstMiddleNameІм'я по батькові одержувачаНі
tax_idІПН одержувачаТак

В блоці taxes вказують суму податків

У разі сплати податків в attribute2 необхідно передавати такі параметри:

"attribute2":""client_id":"Іванов Іван", "taxes":{"income": 20, "social": 10, "military": 5},"identification":{"general":{"tax_id":"1234567890"}}",

Опис параметрів запиту:

ПараметрОписОбов’язковий
client_idПІБ отримувача коштівТак
incomeСума ПДФО в копійкахТак
socialСума ЄСВ в копійкахТак
militaryСума ВЗ в копійкахТак
date_of_birthДата народження отримувача коштів. Передається у форматі YYYYMMDDТак, у разі без сплати податків
tax_idІПН отримувача коштівТак

Важливо! У випадку нарахування кешбеку (бонусів) не потрібно передавати параметр social.

Структура відповіді:

Будь ласка, зверніться до "13 Відповідь на запит переказу коштів з рахунку на картку" для вивчення структури відповіді.

Опис параметрів відповіді:

ПараметрОпис
statusСтатус замовлення. Можливі значення: REJECTED, PAYED
errorCodeКод помилки
errorОпис помилки
shopBillIdІдентифікатор транзакції (платіжного документу) у системі Portmone.com
billAmountПередана у запиті сума транзакції
billNumberНомер замовлення (рахунку) у системі Партнера
attribute1Службове поле. Залишити порожнімї
attribute2Передається інформація для перказу коштів
attribute3Службове поле, заповнюється на розсуд компанії
attribute4Службове поле, заповнюється на розсуд компанії
authCodeКод авторизації банку (проставляється якщо замовлення оплачене)
payeeExportFlagСтатус проходження операції переказу коштів у банка-еквайра (Y – успішно, E – помилка, N або порожнє значення – не надіслано)
payeeExportResultMsgОпис помилки у разі збігу даних з санкційними списками. Можливі значення:
([02] Оплата по А2С заблокована у зв'язку з наявність збігу даних з санкційними списками. ДООПРАЦЮВАННЯ,
[01] Оплата по А2С заблокована у зв'язку з наявність збігу даних з санкційними списками
receiptLinkПосилання для отримання квитанції
billCurrencyВалюта проведення платежу
transactionIdІдентифікатор транзакції в системі банка-еквайра

Важливо! Якщо у відповіді status = PAYED, але payeeExportFlag має значення, відмінне від Y, необхідно надіслати до системи Portmone.com запит для перевірки статусу транзакції (див. розділ 8.2 "Запит у форматі JSON"). Якщо у відповіді status = PAYED та payee_export_flag = Y – транзакіця успішна.

14. Фіскалізація

Опис:

Дозволяє здіснювати реєстрації розрахункових операцій та передачу інформації про фінансові транзакції до державних податкових органів.

Терміни та визначення

ТермінВизначення
ФіскалізаціяПроцес реєстрації розрахункових операцій та передачу інформації про фінансові транзакції до державних податкових органів.
Податкова ставкаЦе ставка податку яка застосовується до операцій продажу товарів або послуг, визначається державними органами і може відрізнятися в залежності від типу товару або послуги, регіону, в якому проводяться операції, а також інших факторів.
ЗмінаПеріод передачі даних до податкової з моменту першої фіскалізації оплати після останнього Z-звіту та до формування наступного.
Фіскальний чекДокумент, який формується в результаті здійснення реєстрації розрахункової операції. Містить інформацію про фінансову транзакцію між платником і мерчантом, включаючи дату і час операції, назву товару або послуги, їх кількість та ціну, загальну суму оплати, а також податкові реквізити.
Код УКТзЕДСистема кодів, яка використовується для класифікації товарів при зовнішньоекономічних операціях, тобто при здійсненні міжнародної торгівлі товарами. Ця система регламентується Державною митною службою України та відображається в "Класифікаторі товарів зовнішньоекономічної діяльності".

14.1 Отримання податкових ставок ПРРО

Опис: Цей метод дозволяє отримати податкові ставки ПРРО для подальшого використання їх при фіскалізації. Запит необхідно виконати на адресу: https://www.portmone.com.ua/r3/api/gateway

Структура запиту:

Опис параметрів запиту:

ПараметрОписОбов’язковий
loginЛогін Інтернет-магазину для доступу до управління акаунтомТак
passwordПароль Інтернет-магазинуТак
idКонстантаТак

Приклад запиту:

{
"method":"getListTaxes",
"params":{
"data":{
"login":"wdishop",
"password":"wdi451"
}
},
"id":"1"
}

Структура відповіді:

Опис параметрів відповіді:

ПараметрОпис
uuidУнікальний ідентифікатор у форматі UUID
codeЦифровий код податкової ставки
labelНазва податкової ставки
symbolЛітерний код податкової ставки
rateРозмір податкової ставки у відсотках
extra_rateРозмір додаткового збору у відсотках
includedТип податку вкладений/накладений (true/false). При використанні вкладеного податку сума податку міститься (вкладена) у загальну суму товару. Накладений податок - сума товару не містить податку, податок рахується окремо.
created_atМітка часу створення податкової ставки у форматі ISO 8601 за шаблоном YYYY-MM-DDThh:mm:ss.ssssss±hh:mm
updated_atМітка часу останньої зміни параметрів податкової ставки у форматі ISO 8601 за шаблоном YYYY-MM-DDThh:mm:ss.ssssss±hh:mm
no_vatІндикатор податку, податок виключений/податок включений (true/false)
advanced_codeПоле для внутрішньої інформації (не використовується)
decimal_rateРозмір податкової ставки десятковий
decimal_extra_rateРозмір додаткового збору десятковий
idКонстанта

Приклад відповіді:

{
"result":[
{
"uuid":"16edb3d1-8669-4006-b16d-c483a92c33eb",
"code":"1",
"label":"Без ПДВ",
"symbol":"Є",
"rate":"0",
"extra_rate":null,
"included":"true",
"created_at":"18-JUL-24 05.57.37.637059000 PM +03:00",
"updated_at":null,
"no_vat":"true",
"advanced_code":null,
"decimal_rate":"0",
"decimal_extra_rate":null
}
],
"id":"1"
}

14.2 Ручна фіскалізація оплати/фіскалізація повернення оплати

Опис: Цей метод дозволяє вручну здійснити фіскалізацію оплати або фіскалізацію повернення оплати. Запит необхідно виконати на адресу: https://www.portmone.com.ua/r3/api/gateway

Структура запиту:

Опис параметрів запиту:

ПараметрОписОбов’язковий
loginЛогін Інтернет-магазину для доступу до управління акаунтомТак
passwordПароль Інтернет-магазинуТак
shopBillIdІдентифікатор транзакції (платіжного документу) у системі Portmone.comТак
payeeIdІдентифікатор Інтернет-магазину. Надається кожному Партнерові індивідуально при підключенні до системи Portmone.comТак
sendFiscalReceiptПараметер відправки фіскального чека. Може приймати значення: :
- Y – відправляти,
- N – не відправляти
Так
idКонстантаТак

Приклад запиту:

{
"method":"createFiscalReceipt",
"params":{
"data":{
"login":"wdishop",
"password":"wdi451",
"shopBillId":"1776344335",
"payeeId":"1185",
"sendFiscalReceipt":"Y"
}
},
"id":"1"
}

Структура відповіді:

Опис параметрів відповіді:

ПараметрОпис
shopBillIdІдентифікатор транзакції (платіжного документу) у системі Portmone.com
fiscalizedСтатус фіскалізації. Може приймати значення: :
- Y – фіскалізовано,
- N – не фіскалізовано
fiscalCodeНомер фіскального чека
billAmountСума транзакції
fiscalUrlПосилання на зображення фіскального чека
idКонстанта

Приклад відповіді:

{
"result":{
"shopBillId":"1776341932",
"fiscalized":"Y",
"fiscalCode":"TEST-QlJczi",
"billAmount":"3.2",
"fiscalUrl":"https://check.checkbox.ua/TEST-QlJczi"
},
"id":"1"
}

14.3 Відправка фіскального чеку на email користувача

Опис: Цей метод дозволяє здійснити відправку фіскального чеку вказавши в параметрі email користувача. Запит необхідно виконати на адресу: https://www.portmone.com.ua/r3/api/gateway

Структура запиту:

Опис параметрів запиту:

ПараметрОписОбов’язковий
loginЛогін Інтернет-магазину для доступу до управління акаунтомТак
passwordПароль Інтернет-магазинуТак
shopBillIdІдентифікатор транзакції (платіжного документу) у системі Portmone.comТак
payeeIdІдентифікатор Інтернет-магазину. Надається кожному Партнерові індивідуально при підключенні до системи Portmone.comТак
emailsАдреса електронної пошти платникаТак
idКонстантаТак

Приклад запиту:

{
"method":"sendFiscalReceipt",
"params":{
"data":{
"login":"wdishop",
"password":"wdi451",
"payeeId":"1185",
"shopBillId":"1775990208",
"emails":"[email protected]"
}
},
"id":"1"
}

Структура відповіді:

Опис параметрів відповіді:

ПараметрОпис
statusСтатус відправки. Може приймати значення: :
- **SUCCES ** – відправлене,
- **FAILURE ** – не відправлене
idКонстанта

Приклад відповіді:

{
"result":{
"status":"sucess"
},
"id":"1"
}

14.4 Запит статусу фіскалізації оплати

Опис: Цей метод дозволяє здійснити запит статусу фіскалізації оплати. Запит необхідно виконати на адресу: https://www.portmone.com.ua/gateway/

Структура запиту:

Опис параметрів запиту:

ПараметрОписОбов’язковий
loginЛогін Інтернет-магазину для доступу до управління акаунтомТак
passwordПароль Інтернет-магазинуТак
shopBillIdІдентифікатор транзакції (платіжного документу) у системі Portmone.comТак

Приклад запиту:

{
"method":"getFiscalStatus",
"params":{
"data":{
"login":"wdishop",
"password":"wdi451",
"shopBillId":"1776341308"
}
}
}

Структура відповіді:

Опис параметрів відповіді:

ПараметрОпис
shopBillIdІдентифікатор транзакції (платіжного документу) у системі Portmone.com
billAmountСума транзакції
fiscalizedСтатус фіскалізації. Може приймати значення: :
- Y – фіскалізовано,
- N – не фіскалізовано
receiptNumberНомер фіскального чека
fiscalUrlПосилання на зображення фіскального чека

Приклад відповіді:

{
"shopBillId":"1776341308",
"billAnount":"3.2",
"fiscalized":"Y",
"receiptNumber":"TEST-NOupeS",
"fiscalUrl":"https://check.checkbox.ua/TEST-NOupeS"
}

Приклади

До розділу 3 «Оплата замовлення»

3.1 Запит оплати замовлення методом POST

<form action="https://www.portmone.com.ua/gateway/" method="post">
<input type="hidden" name="payee_id" value="1185" />
<input type="hidden" name="shop_order_number" value="76575j65465464161hhhh" />
<input type="hidden" name="bill_amount" value="1" />
<input type="hidden" name="description" value="Опис замовлення" />
<input
type="hidden"
name="success_url"
value="http://example.com/success.html"
/>
<input
type="hidden"
name="failure_url"
value="http://example.com/failure.html"
/>
<input type="hidden" name="lang" value="uk" />
<input type="hidden" name="encoding" value="UTF-8" />
<input type="hidden" name="exp_time" value="400" />
</form>

3.1 Приклад відповіді шлюзу у разі успішного здійснення платежу для запиту методом POST

SHOPBILLID: 420651576 SHOPORDERNUMBER: 123456789qwe APPROVALCODE: TESTPM
BILL_AMOUNT: 1 TOKEN: RESULT: 0 CARD_MASK: 444433******1111 ATTRIBUTE1: null
ATTRIBUTE2: null ATTRIBUTE3: null ATTRIBUTE4: null RECEIPT_URL:
https://www.portmone.com.ua/r3/services/receipts/get-receipts/shop-bill-id/
353472d8de85c380d94e49e592050631486e357ebdcedf374ccd07c89682f31d181076bbd1f2d920b4d00b3e
11983dfb8777ccee0a19a9a00cd7cb5c1262c83c LANG: en DESCRIPTION: 999999 IPSTOKEN:
null ERRORIPSCODE: null ERRORIPSMESSAGE: null

3.2 Запит оплати замовлення у форматі JSON

<form
action="https://www.portmone.com.ua/gateway/"
method="post"
target="_blank"
>
<input type="hidden" name="bodyRequest" value="<? = $data ?>" />
<input type="hidden" name="typeRequest" value="json" />
<input type="submit" value="Оплатити через Portmone.com" style={{ width:
'350px' }} class="button_green" />
</form>

де $data – структура json наступного вигляду:

{
"paymentTypes": {
"card": "Y",
"portmone": "Y",
"token": "N",
"clicktopay": "Y",
"createtokenonly": "N"
},
"autopayment": {
"show": "Y",
"edit": "N",
"defaultCheckboxState": "N",
"changeCheckboxState": "Y",
"settings": {
"period": "1",
"payDate": "27",
"startDate": "",
"endDate": "01.01.2021",
"amount": "1.22"
},
"credentials": "393433af5c5c46bb776878f8208fae4ad91f4ca450a28e4b558386e4c30325e3f5673522b2929adfe39655d5a530fc193094cb089a9bac58137c4533edcfa08a4c299d27a8fc060b2d671d1b63a32e66f8fc1db433185d0788fe145b93faaa75e60713d99673e4bd"
},
"priorityPaymentTypes": {
"card": "1",
"portmone": "2",
"token": "0",
"clicktopay": "4",
"createtokenonly": "5"
},
"payee": {
"payeeId": "1185",
"login": "",
"dt": "",
"signature": "",
"shopSiteId": ""
},
"order": {
"description": "test",
"shopOrderNumber": "123456",
"billAmount": "2500",
"attribute1": "1",
"attribute2": "2",
"attribute3": "3",
"attribute4": "4",
"attribute5": "",
"successUrl": "",
"failureUrl": "",
"preauthFlag": "Y",
"preauthConfirm": "20190321132000",
"billCurrency": "EUR",
"expTime": "1000",
"encoding": ""
},
"token": {
"tokenFlag": "N",
"returnToken": "N",
"token": "18333832303637393435128BD118A706492899CBF82382ADC631520BBD466A0F2C611A0231AEE0BBCBC6B97752972A8037563F6E4FD11F11ED74709ADD3DD1F9D0CDD30899063D95F713F77",
"cardMask": "516874******5179",
"otherPaymentMethods": "N"
},
"payer": {
"lang": "uk",
"emailAddress": "[email protected]",
"showEmail": "N"
},
"shipping": {
"services": {
"ukrposhta": {
"deliveryTypes": ["W2D", "W2W"],
"senderClientId": "91cfddfe-5c94-44d0-9410-c78e2a877512",
"senderAddressId": "2651676",
"senderPostCode": "08040",
"type": "STANDARD",
"parcelWeight": "600",
"parcelLength": "50",
"parcelWidth": "50",
"parcelHeight": "50",
"parcelDeclaredPrice": "25",
"parcelDescription": "",
"fragile": "",
"checkOnDelivery": "",
"bees": "",
"payer": "client",
"sms": "Y",
"withDeliveryNotification": ""
}
},
"enable": "Y",
"required": "N"
},
"style": {
"type": "light",
"logo": "",
"backgroundColorHeader": "",
"backgroundColorButtons": "",
"colorTextAndIcons": "",
"borderColorList": "",
"logoWidth": "",
"logoHeight": "",
"bcMain": ""
}
}

3.2 Приклад відповіді шлюзу у разі успішного здійснення платежу для запиту у форматі JSON

'SHOPBILLID'          => '411587640',
'SHOPORDERNUMBER' => 'SHP-000000002792',
'APPROVALCODE' => '366999',
'BILL_AMOUNT' => '1',
'TOKEN' => '1834303338393938313612886A7AFA1991D92FB81C2026D01EA263F9DE016
44F39F009A3EDDEF992C6A5E22ACD01AE91D1CB491B645B530EDCE8C289778611A37D0D045D650DE3495E84',
'RESULT' => '0',
'CARD_MASK' => '516874******5179',
'ATTRIBUTE1' => '49026347',
'ATTRIBUTE2' => '2',
'ATTRIBUTE3' => '3',
'ATTRIBUTE4' => '4',
'RECEIPT_URL' => 'https://www.portmone.com.ua/r3/services/receipts/get-receipts/
shop-bill-id/353554cd64a021ee646db40dc0c476283b57b9cfc1ce3570238a1148a63605af3e676f58cc
92084b67c28ec5fc4fd6c73a394d712162df54c5d7799d60a11bf2eb',
'LANG' => 'uk',
'DESCRIPTION' => 'test',
'IPSTOKEN' => 'null',
'ERRORIPSCODE' => 'null',
'ERRORIPSMESSAGE' => 'null'

3.6.Інформація про курс валют

Запит

{
"method": "getRateCurrencies",
"params": {
"data": {
"payeeId": "72276",
"date": "21-11-2022"
}
},
"id": "1"
}

Відповідь

{
"result": {
"currencies": [
{
"key": "AUD",
"value": "24.5503"
},
{
"key": "EUR",
"value": "37.8906"
},
{
"key": "GBP",
"value": "43.5239"
},
{
"key": "KZT",
"value": "0.079196"
},
{
"key": "PLN",
"value": "8.0569"
},
{
"key": "USD",
"value": "36.5686"
}
],
"notice": "Portmone не здійснює купівлі, продажу, обміну, конвертації та визначення курсу безготівкової іноземної валюти. Розрахунок вартості товарів та послуг на поточну дату здійснюється на підставі даних, отриманих з сервісу розрахунку курсу валют, обраного Отримувачем. Portmone не несе відповідальності за працездатність цього сервісу"
},
"id": "1"
}

До розділу 4 «Оплата замовлення з використанням платіжного токену»

4.1 Запит на створення Токену

{
"paymentTypes": {
"createtokenonly": "Y"
},
"priorityPaymentTypes": {
"createtokenonly": "1"
},
"payee": {
"payeeId": "1185",
"login": "",
"dt": "",
"signature": "",
"shopSiteId": ""
},
"order": {
"description": "testPayment",
"shopOrderNumber": "SHP-000000002792",
"billAmount": "1",
"attribute1": "",
"attribute2": "",
"attribute3": "",
"attribute4": "",
"successUrl": "",
"failureUrl": "",
"preauthFlag": "N",
"billCurrency": "UAH",
"encoding": ""
},
"token": {
"tokenFlag": "N",
"returnToken": "Y",
"token": "",
"cardMask": "",
"otherPaymentMethods": "N"
},
"payer": {
"lang": "uk",
"emailAddress": "[email protected]"
},
"style": {
"type": "",
"logo": "",
"backgroundColorHeader": "",
"backgroundColorButtons": "",
"colorTextAndIcons": "",
"borderColorList": ""
}
}

JSON-структуру помістити у поле bodyRequest, та додати параметр typeRequest зі значенням "json".

<form
action="https://www.portmone.com.ua/gateway/"
method="post"
target="_blank"
>
<input type="hidden" name="bodyRequest" value="СТРУКТУРА JSON" />
<input type="hidden" name="typeRequest" value="json" />
<input type="submit" value="Portmone.com" />
</form>

4.1 Успішна відповідь на створення Токену

'SHOPBILLID'          => '411587640',
'SHOPORDERNUMBER' => 'SHP-000000002792',
'APPROVALCODE' => '366999',
'BILL_AMOUNT' => '1',
'TOKEN' => '1834303338393938313612886A7AFA1991D92FB81C2026D01EA263F9DE01644
F39F009A3EDDEF992C6A5E220ACD01AE91D1CB491B645B530EDCE882C289778611A37D0D045D650DE3495E84',
'RESULT' => '0',
'CARD_MASK' => '516874******5179',
'ATTRIBUTE1' => '49026347',
'ATTRIBUTE2' => '2',
'ATTRIBUTE3' => '3',
'ATTRIBUTE4' => '4',
'RECEIPT_URL' => 'https://www.portmone.com.ua/r3/services/receipts/get-receipts/
shop-bill-id/353554cd64a021ee646db40dc0c476283b57b9cfc1ce3570238a1148a63605af3e676f58cc9
2084b67c28ec5fc4fd6c73a394d712162df54c5d7799d60a11bf2eb',
'LANG' => 'uk',
'DESCRIPTION' => 'test'

4.2.1 Проведення оплати за Токеном. POST-запит

<form method="POST" action="https://www.portmone.com.ua/r3/token/secure/token/">
<input type="text" value="1185" name="payee_id" />
<input type="text" value="test_123" name="description" />
<input type="text" value="1" name="bill_amount" />
<input type="text" value="test_1" name="shop_order_number" />
<input
type="text"
value="https://www.portmone.com.ua/r3/ecommerce/test/"
name="application_url"
/>
<input type="text" value="en" name="lang" />
<input
type="text"
value="183233333139333633381280337D20FA7B4F0D5DC08EF36ADB828EFC510
A1EF2E1965DFEF0F1E5421D0CE264CB46A01EB95638BADAFD7E7E738928B873B30DB753E10AE4A0932BEE4491
E66"
name="token"
/>
<input type="text" value="" name="attribute1" />
<input type="text" value="" name="attribute2" />
<input type="text" value="" name="attribute3" />
<input type="text" value="" name="attribute4" />
</form>

4.2.1 Проведення оплати за Токеном. Приклад успішної відповіді

BILL_AMOUNT=45& SHOPORDERNUMBER=test_2& APPROVALCODE=TESTPM&
RECEIPT_URL=https%3A%2F%2Fwww.portmone.com.ua%2Fr3%2Fservices%2Freceipts%2Fget-receipts
%2Fshop-bill-id%2F35348409d793c705eb6250a1576451abad87d010699109d1a6578e81a4f9b40e70d67
085deb9e94e54a62093a09ff92062953366caa6e80f64025449318491ec&
TOKEN=183233333139333633381280337D20FA7B4F0D5DC08EF36ADB828EFC510A1EF2E1965DFEF0F1E5421D0C
E264CB46A01EB95638BADAFD7E7E738928B873B30DB753E10AE4A0932BEE4491E66&
CARD_PAYMENT_SYSTEM=VISA& CARD_LAST_DIGITS=1111& RESULT=0

4.2.2 Проведення оплати за Токеном. Приклад запиту у JSON форматі

<form
action="https://www.portmone.com.ua/gateway/"
method="post"
target="_blank"
>
<input type="hidden" name="bodyRequest" value="<?= $data ?>" />
<input type="hidden" name="typeRequest" value="json" />
<input type="submit" value="Оплатити через Portmone.com" style={{ width:
'350px' }} class="button_green" />
</form>

де $data - структура json наступного вигляду:

{
"paymentTypes":
{
"card":"N",
"portmone":"N",
"token":"N",
"clicktopay":"N"
},
"priorityPaymentTypes":
{
"card":"4",
"portmone":"2",
"qr":"1",
"token":"8",
"clicktopay":"4",
},
"payee":
{
"payeeId":"1185",
"login":"",
"dt":"",
"signature":"",
"shopSiteId":""
},
"order":
{
"description":"191237564",
"shopOrderNumber":"SHP-00000111",
"billAmount":"1",
"attribute1":"1",
"attribute2":"2",
"attribute3":"3",
"attribute4":"4",
"successUrl":"",
"failureUrl":"",
"preauthFlag":"N",
"billCurrency":"UAH",
"encoding":""
},
"token":
{
"tokenFlag":"Y",
"returnToken":"Y",
"token":"1834303338393938313612886A7AFA1991D92FB81C2026D01EA263F9DE01644F39F009A3EDDEF992C6A5E220ACD01AE91D1CB491B645B530EDCE882C289778611A37D0D045D650DE3495E84",
"cardMask":"516874******5179",
"otherPaymentMethods":"N"
},
"payer":
{
"lang":"uk",
"emailAddress":""
},
"style":
{
"type":"brand",
"logo":",
"logoWidth":"171px",
"logoHeight":"41px",
"backgroundColorHeader":"#009DE0",
"backgroundColorButtons":"#009DE0",
"colorTextAndIcons":"#1e282c",
"borderColorList":"#1e282c"
}
}

4.2.2 Проведення оплати за Токеном. Приклад успішної відповіді на запит у форматі JSON

'module'          => 'ecommerce',
'controller' => 'test',
'action' => 'success',
'SHOPBILLID' => '421606955',
'SHOPORDERNUMBER' => 'SHP-00000000279210',
'APPROVALCODE' => '416477',
'BILL_AMOUNT' => '1',
'TOKEN' => '18333832303637393435128BD118A706492899CBF82382ADC631520BBD466A0F2C6
11A0231AEE0BBCBC6B97752972A8037563F6E4FD11F11ED74709ADD3DD1F9D0CDD30899063D95F713F77',
'RESULT' => '0',
'CARD_MASK' => '516874******5179',
'ATTRIBUTE1' => '1',
'ATTRIBUTE2' => '2',
'ATTRIBUTE3' => '3',
'ATTRIBUTE4' => '4',
'RECEIPT_URL' => 'https://portmone2.com/r3/services/receipts/get-receipts/
shop-bill-id/35343ea3aabe8b49a35f95b78dba465ec24d36e9794f27ce97d9b1d9080b930ed
e870ed357a32212de9b5dda00c158a37ce9877be5c7a279cf2ed2114849c779',
'LANG' => 'uk',
'DESCRIPTION' => '191237564'

4.3 Запит рекурентного платежу

Приклад запиту:

$jsoncontent = '{
"method": "pay",
"params": {
"login": "SHP_**",
"password": "******",
"payeeId": "1185",
"shopOrderNumber": "123456",
"token": "1834373930303635***FCC",
"description": "Опис замовлення",
"billAmount": "1.24",
"billCurrency": "EUR",
"preauthFlag": "Y"
},
"id": "1"
}';
$ch = curl_init();
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_URL, "https://www.portmone.com.ua/r3/recurrent/");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $jsoncontent);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$result = curl_exec($ch);
$curl_info = curl_getinfo($ch);
print_r($result);
curl_close($ch);

Приклад відповіді по успішному платежу:

{
"result": {
"result": "PAYED",
"shopOrderNumber": "P1728563684",
"description": "",
"receipt": "",
"shopBillId": "1728563684"
},
"id": "1"
}

4.7 Запит рекурентного платежу

Приклад запиту:

{
"method": "paywith3ds",
"params": {
"data": {
"login": "SHP_333",
"password": "22222222",
"payeeId": "30481",
"shopOrderNumber": "test_0000001",
"token": "203131393132332393039128CFE98552764426D1D5A285E4CF64130AB19CDB6336481E5878DA66F03BD7C807ABAE08464CFA7EFC6F56106E480F002669E7CDC901554499787573FFC6AC57",
"description": "test",
"billAmount": "1",
"preauthFlag": "N",
"billCurrency": "UAH",
"successUrl": "https://portmone2.com/r3/ecommerce/test/master-test-form/"
"attribute1":"",
"attribute2":"",
"attribute3":"",
"attribute4":""
}
},
"id": "1"
}

4.7.1 Успішна відповідь, коли потрібно пройти 3Ds

Приклад відповіді:

{
"result": {
"shopBillId": "1191240800",
"status": "CREATED",
"shopOrderNumber": "test_0000001",
"description": "test",
"pdfUrl": "",
"authCode": "",
"isNeed3DS": "Y",
"actionMPI": "https://portmone2.com/r3/tothreeds?data=2053A3B7BCF9347FF04F6B4D3E338F96FDC604F3F3C522D47EB43A50FAB904AC90AFCA2A5BB0E04171426F56D81DBFE7042E2A24FF3FC24A8F38A9B76116DF17319FE4FE028FD17660B322AE733D5A7"
},
"id": "1"
}

4.7.2 Відповідь після проходження 3Ds

Приклад відповіді:

shopBillId: 1191240666
status: PAYED
billAmount: 1
billNumber: test_0000001
payeeName: 333
authCode: 453750
commission: 0
pdfUrl: ""
payeeId: 30481
payDate: 15.06.2022 03:32:27
description: test
cardMask: 454788******1119
errorMessage:
errorCode: 0

4.7.3 Успішна відповідь, коли не потрібно проходити 3Ds

Приклад відповіді:

{
"result": {
"shopBillId": "1213000727",
"status": "PAYED",
"shopOrderNumber": "test_0000001",
"description": "test_001",
"pdfUrl": "https://www.portmone.com.ua/r3/services/receipts/get-receipts/shop-bill-id/35375cadedf354dd63444c7a0dba795fb044b138f323b42c51309f05929d20198733ce5ca 85866a0512487643306b1b3143e0c07f93961e8c69fb06e5275d2e6426fea",
"authCode": "158709",
"isNeed3DS": "N",
"actionMPI": ""
},
"id": "1"
}

4.7.4 Неуспішна відповідь

Приклад відповіді:

{
"error": {
"code": 10,
"message": "Операція відхилена. Повторна транзакція",
"data": {}
},
"id": "1"
}

4.8 Приклад запиту

<form
action="https://www.portmone.com.ua/gateway/"
method="post"
target="_blank"
>
<input type="hidden" name="bodyRequest" value="<?= $data ?>" />
<input type="hidden" name="typeRequest" value="json" />
<input type="submit" value="Оплатити через Portmone.com" style={{ width:
'350px' }} class="button_green" />
</form>

де $data - структура json наступного вигляду:

{
"paymentTypes": {
"token": "Y"
},
"priorityPaymentTypes": {
"token": "1"
},
"payee": {
"payeeId": "11344",
"credentials": "3932b2bb0fb55509027abd365e0deab4e2ab149f419fa167a2441a3d289da1f48a2f16092c2300fa76d415a6e76fb8283e6c0e77305ce4622e10e5383f1030ceed470e9239ce4fc7ccccc442ea739123cb721f78a6dd0703beecfa0085e0eebfad6c36791268"
},
"order": {
"description": "test",
"shopOrderNumber": "",
"billAmount": "1",
"attribute1": "1",
"attribute2": "2",
"attribute3": "3",
"attribute4": "4",
"successUrl": "",
"failureUrl": "",
"preauthFlag": "N",
"billCurrency": "UAH",
"encoding": ""
},
"token": {
"tokenFlag": "Y",
"returnToken": "N",
"token": "20313234333633313538391280E7B5BCFFAE793EA6226F02E9D1263AD5652E804EACC8A4F3C4852CFB2FB6BA6C7053E034427E3FEFFA985ACC331C6DA961D384C5E4914505DABDFF01840",
"cardMask": "414949******2244",
"otherPaymentMethods": "N"
},
"payer": {
"lang": "uk",
"emailAddress": "[email protected]",
"showEmail": "N"
}
}

До розділу 5 «Переказ з картки на картку»

5.1 Запит створення токену

<form
action="https://www.portmone.com.ua/gateway/"
method="post"
target="_blank"
>
<input type="hidden" name="bodyRequest" value="<? = $data ?>" />
<input type="hidden" name="typeRequest" value="json" />
<input type="submit" value="Оплатити через Portmone.com" style={{ width:
'350px' }} class="button_green" />
</form>

де $data – структура json наступного вигляду:

{
"paymentTypes":
{
"card":"N",
"portmone":"N",
"token":"N",
"clicktopay":"N",
"qr":"N",
"createtokenonly":"Y"
},
"priorityPaymentTypes":
{
"card":"0",
"portmone":"0",
"qr":"0",
"token":"0",
"clicktopay":"0",
"createtokenonly":"1"
},
"payee":
{
"payeeId":"1185",
"login":"",
"dt":"",
"signature":"",
"shopSiteId":""
},
"order":
{
"description":"тест",
"shopOrderNumber":"111145",
"billAmount":"1",
"attribute1":"1",
"attribute2":"2",
"attribute3":"3",
"attribute4":"4",
"successUrl":"",
"failureUrl":"",
"preauthFlag":"N",
"billCurrency":"UAH",
"encoding":""
},
"token":
{
"tokenFlag":"N",
"returnToken":"Y",
"token":"",
"cardMask":"",
"otherPaymentMethods":"N",
"sellerToken":""
},
"payer":
{
"lang":"uk"
},
style":
{
"type":"portmone",
"logo":"",
"backgroundColorHeader":"",
"backgroundColorButtons":"",
"colorTextAndIcons":"",
"borderColorList":""
}
}

5.1 Відповідь на запит створення токену

'SHOPBILLID'      => '411587640',
'SHOPORDERNUMBER' => 'SHP-000000002792',
'APPROVALCODE' => '366999',
'BILL_AMOUNT' => '1',
'TOKEN' => '1834303338393938313612886A7AFA1991D92FB81C2026D01EA263F9DE01644F3
9F009A3EDDEF992C6A5E220ACD01AE91D1CB491B645B530EDCE882C289778611A37D0D045D650DE3495E84',
'RESULT' => '0',
'CARD_MASK' => '516874******5179',
'ATTRIBUTE1' => '49026347',
'ATTRIBUTE2' => '2',
'ATTRIBUTE3' => '3',
'ATTRIBUTE4' => '4',
'RECEIPT_URL' => 'https://portmone2.com/r3/services/receipts/get-receipts/
shop-bill-id/353554cd64a021ee646db40dc0c476283b57b9cfc1ce3570238a1148a63605af3e67
6f58cc92084b67c28ec5fc4fd6c73a394d712162df54c5d7799d60a11bf2eb',
'LANG' => 'uk',
'DESCRIPTION' => '516874******5179'

5.2 Запит на переказ коштів між токенами карток

<form
action="https://www.portmone.com.ua/gateway/"
method="post"
target="_blank"
>
<input type="hidden" name="bodyRequest" value="<? = $data ?>" />
<input type="hidden" name="typeRequest" value="json" />
<input type="submit" value="Оплатити через Portmone.com" style={{ width:
'350px' }} class="button_green" />
</form>

де $data - структура json наступного вигляду:

{
"paymentTypes":
{
"card":"Y",
"portmone":"Y",
"token":"Y",
"clicktopay":"Y",
"qr":"Y"
},
"priorityPaymentTypes":
{
"card":"1",
"portmone":"2",
"qr":"5",
"token":"2",
"clicktopay":"0"
},
"payee":
{
"payeeId":"1185",
"login":"",
"dt":"",
"signature":"",
"shopSiteId":""
},
"order":
{
"description":"444433******1111",
"shopOrderNumber":"SHP-0101000110002792",
"billAmount":"1",
"attribute1":"1",
"attribute2":"2",
"attribute3":"3",
"attribute4":"4",
"successUrl":"",
"failureUrl":"",
"preauthFlag":"N",
"billCurrency":"UAH",
"encoding":""
},
"token":
{
"tokenFlag":"Y",
"returnToken":"N",
"token":"183434303730373432331283F04364806355F5E7479D903A9518BC9DC4A23336E07B696BE09B713D6ADD71603966FCF9A4E40C88265E1180017127653EB541CF76176EF5FECC6B269B949DE",
"cardMask":"111122******4444",
"otherPaymentMethods":"N",
"sellerToken":"18343430373037373330128746FED8954F0E0A83315F409D8BE23767C0573C9AFE796C2B403031F8B7379307B201DB7D3E7B5F32B2E33A8B7FC284999D47396CB8D1AE485D89A6452CC8B1D"
},
"payer":
{
"lang":"uk",
"emailAddress":[email protected]
},
"style":
{
"type":"portmone",
"logo":"https://i1.rozetka.ua/logos/0/99.png",
"backgroundColorHeader":"#fff",
"backgroundColorButtons":"#4bbe3f",
"colorTextAndIcons":"#4bbe3f",
"borderColorList":"#3e77aa"
}
}

5.3 Запит на переказ коштів з токену на картку

{
"paymentTypes": {
"token": "Y"
},
"priorityPaymentTypes": {
"token": "1"
},
"payee": {
"payeeId": "1185",
"checkParams": "Y"
},
"order": {
"description": "4444333322221111",
"shopOrderNumber": "65",
"billAmount": "1",
"successUrl": "http://10.1.0.80:8082/api/v1/operations/p2p/success",
"failureUrl": "http://10.1.0.80:8082/api/v1/operations/p2p/error",
"encoding": "UTF-8",
"attribute2": "",
"attribute3": "",
"attribute4": ""
},
"token": {
"tokenFlag": "Y",
"returnToken": "Y",
"token": "18343836373232313531096EE3BB03559659C0F64E6BB61C642902AE0570EA189661F2CF59102681BC3D741E03540B292BB9A4D3B04D91496F0C8D9",
"cardMask": "410232******5594",
"otherPaymentMethods": "N"
},
"payer": {
"lang": "uk",
"emailAddress": "",
"showEmail": "N"
},
"style": {
"type": "",
"bcMain": "",
"backgroundColorButtons": "",
"colorTextAndIcons": ""
}
}

5.3 Відповідь на запит переказу коштів з токену на картку

SHOPBILLID: 486744075 SHOPORDERNUMBER: P486744075 APPROVALCODE: 365470
BILL_AMOUNT: 5 TOKEN:
183438363734343037351287D5A3C90A1880888F785B34726EA1A106E6F40C2C0C30930F904FE3AE66B
C5173AB6386E12C118F91F41A500F7756A1A39D0CA3DB0F0BA38138556083F0383A9 RESULT: 0
CARD_MASK: 410232******5594 ATTRIBUTE1: 54635856 ATTRIBUTE2: 153 ATTRIBUTE3:
null ATTRIBUTE4: null RECEIPT_URL:
https%3A%2F%2Fwww.portmone.com.ua%2Fr3%2Fservices%2Freceipts%2Fget-
receipts%2Fshop-bill-id%2F3535adc0ac7c6c332ddc05d9fd24aab907d5220833e1e1e20037e
f335c52c428d7568906247e514ef35335ebdf6afdcbe9f456c36a30d17d7908819267c16aa5a6
LANG: uk DESCRIPTION: 410232******5594

5.4.1 Запит на переказ коштів з токену картки на рахунок

{
"paymentTypes": {
"token": "Y"
},
"priorityPaymentTypes": {
"token": "1"
},
"payee": {
"payeeId": "18930",
"checkParams": "N"
},
"order": {
"shopOrderNumber": "ttgyy1701090211",
"billAmount": "1.23",
"successUrl": "https://portmone2.com/r3/ecommerce/test/",
"failureUrl": "",
"preauthFlag": "N",
"encoding": "UTF-8",
"attribute2": "xtra"
},
"token": {
"tokenFlag": "Y",
"returnToken": "N",
"token": "1834383438393836********DECB2DD7679AE245BD8E4B69C95C67401CA89",
"cardMask": "516874******5179",
"otherPaymentMethods": "N"
},
"payer": {
"lang": "uk",
"emailAddress": "",
"showEmail": "N"
},
"style": {
"type": "light",
"bcMain": "#fff",
"backgroundColorButtons": "#0f51a6",
"colorTextAndIcons": "#0f51a6"
}
}

5.4.1 Відповідь на запит переказу коштів з картки на рахунок

SHOPBILLID: 486744075 SHOPORDERNUMBER: P486744075 APPROVALCODE: 365470
BILL_AMOUNT: 5 TOKEN: 18343836373434303735********6083F0383A9 RESULT: 0
CARD_MASK: 410232******5594 ATTRIBUTE1: 54635856 ATTRIBUTE2: 153 ATTRIBUTE3:
null ATTRIBUTE4: null RECEIPT_URL:
https%3A%2F%2Fwww.portmone.com.ua%2Fr3%2Fservices%2Freceipts%2Fget-
receipts%2Fshop-bill-id%2F3535adc0ac7c6c332ddc05d9fd24aab907d5220833e1e1e20037ef335c52
c428d7568906247e514ef35335ebdf6afdcbe9f456c36a30d17d7908819267c16aa5a6 LANG: uk
DESCRIPTION: null

5.4.2 Запит на переказ коштів з рахунку на токен картки

{
"method": "confirmp2p",
"params": {
"authData": {
"login": "SHP_333333",
"password": "333333"
},
"data": {
"shopBillId": "484991476",
"token": "183438343839383831391286A60BED7182634F41FC3DFC64D1713959E1B0DA3C05C7F18B6F474535FC554F02B78AD6C1F051616907E2F5D6E624B6746A163FFC64EF050B4907201AFA3D1CD"
}
},
"id": "1"
}

5.4.2 Відповідь на запит переказу коштів з рахунку на картку

SHOPBILLID: 486744075 SHOPORDERNUMBER: P486744075 APPROVALCODE: 365470
BILL_AMOUNT: 5 TOKEN: 18343836373434303735********6083F0383A9 RESULT: 0
CARD_MASK: 410232******5594 ATTRIBUTE1: 54635856 ATTRIBUTE2: 153 ATTRIBUTE3:
null ATTRIBUTE4: null RECEIPT_URL:
https%3A%2F%2Fwww.portmone.com.ua%2Fr3%2Fservices%2Freceipts%2Fget-receipts%2Fshop-bill-id%2F3535adc0ac7c6c332ddc05d9fd24aab907d5220833e1e1e20037ef335c52c428d7568906247e514ef35335ebdf6afdcbe9f456c36a30d17d7908819267c16aa5a6
LANG: uk DESCRIPTION: 410232******5594

5.5. Переказ з картки відправника на токен отримувача

5.5.1 Запит на отримання списку доступних карток

{
"method": "getTokensForMoneyTransfer",
"params": {
"data": {
"login": "SHP_333",
"password": "11111111"
}
},
"id": "1"
}

5.5.1 Успішна відповідь на отримання списку доступних карток

{
"result": [
{
"shopBillId": "584514753",
"cardMask": "414943******9393"
},
{
"shopBillId": "960734010",
"cardMask": "414950******2832"
},
{
"shopBillId": "965907950",
"cardMask": "537541******6548"
},
{
"shopBillId": "965912678",
"cardMask": "537541******6548"
},
{
"shopBillId": "572376062",
"cardMask": "414943******9393"
}
],
"id": "1"
}

5.5.2 Запит для отримання посилання на переказ коштів

{
"method": "getLinkMoneyTransfer",
"params": {
"data": {
"login": "SHP_333",
"password": "11111111",
"shopBillId": "965912678",
"billAmount": "5",
"purpose": "bussiness books",
"fullName": "Y",
"phone": "Y",
"commentSender": "Y"
}
},
"id": "1"
}

5.5.2 Успішна відпоідь для отримання посилання на переказ коштів

{
"result": "https://www.portmone.com.ua/r3/to/p2p?h=H4sIAAAAAAAACnXOMW7DMAwF0KsEmjNQIi1S2WxRHnuHGtVgOLGBSJ6K3j1c0qldCH68D4Lfrh9b3d3NecGEEQebHoNtjAIpKkX2MsweVUQzIYhCKIRJR0OiggScOAtkESnTFEeKeZ7YJxk0lBTLwByVAVQJRpYUxK5qQQ+S3dUt6/0+Po5z7/aG5c/en+ty9hosL2dr615buyzHsTXjte21fv2W0Eofpegf4v8lesvPCyPrfSIBAQAA",
"id": "1"
}

5.5.3 Запит на отримання значення credentials

{
"method": "getcredentials",
"params": {
"data": {
"login": "SHP_333",
"password": "11111111"
}
},
"id": "1"
}

5.5.3 Відповідь на отримання значення credentials

{
"result": {
"credentials": "000186f6a4e33bf33625e9afdabc99afc7f701003624301403b7ea33fb703b4cb60cbf34d3cd0b4450a321a18c89bf8feacc4c45dbb4841a50e99dc77ff9684c9607f0e0523db45f6657ec73f1f42d272d6fc7006034687fa776e73f6139e2965cf3d2c3f4f20bbe64a29bb21d1e31241d4fac93efcfd2b42e87009488ae124086c58952611b1184df7cc6b998f29c5d94c2d5c171e36af75471719b8d102c5f88b05c6ea91e0b7caa142ec1511529dd46f9972826f0aab3f18e386f7bb8ad847b4fa39929abc3b8cada3851ffb7123db151deb54d264c6022dd16fd9098a06fb7bcd1e53148d93ae3cfc0cc0439039a834f026e8f8ddd0f1acd815151814c20c908a5ec205929a66704d3ad15d66169f75c3fd00608dde755253a03af12de6b72746d4a"
},
"id": "1"
}

5.5.3 Запит на отримання збереження картки

{
"paymentTypes": {
"createtokenonly": "Y"
},
"priorityPaymentTypes": {
"createtokenonly": "1"
},
"payee": {
"payeeId": "P2PLINKCREATE",
"credentials": "000186f6a4e33bf33625e9afdabc99afc7f701003624301403b7ea33fb703b4cb60cbf34d3cd0b4450a321a18c89bf8feacc4c45dbb4841a50e99dc77ff9684c9607f0e0523db45f6657ec73f1f42d272d6fc7006034687fa776e73f6139e2965cf3d2c3f4f20bbe64a29bb21d1e31241d4fac93efcfd2b42e87009488ae124086c58952611b1184df7cc6b998f29c5d94c2d5c171e36af75471719b8d102c5f88b05c6ea91e0b7caa142ec1511529dd46f9972826f0aab3f18e386f7bb8ad847b4fa39929abc3b8cada3851ffb7123db151deb54d264c6022dd16fd9098a06fb7bcd1e53148d93ae3cfc0cc0439039a834f026e8f8ddd0f1acd815151814c20c908a5ec205929a66704d3ad15d66169f75c3fd00608dde755253a03af12de6b72746d4a"
},
"order": {
"billAmount": "1",
"successUrl": "https://portmone2.com/r3/ecommerce/test/master-test-form"
},
"token": {
"returnToken": "Y",
"createp2plinkshop": "Y"
},
"payer": {
"lang": "uk"
}
}

До розділу 6 «Платежі з преавторизацією»

6.2.1 Процедура поставторизації. POST запит

<form action="https://www.portmone.com.ua/gateway/" method="post">
<input type="hidden" name="method" value="preauth" />
<input type="hidden" name="action" value="set_paid" />
<input type="hidden" name="login" value="shp_login" />
<input type="hidden" name="password" value="******" />
<input type="hidden" name="shop_bill_id" value="87834981" />
<input type="hidden" name="postauth_amount" value="99.00" />
<input type="hidden" name="encoding" value="utf-8" />
<input type="hidden" name="lang" value="uk" />
</form>

6.2.1 Успішна відопвідь для процедури поставторизації

<?xml version='1.0' encoding='windows-1251'?>
<portmoneresult lang='uk'>
<request>
<method>preauth</method>
<action>set_paid</action>
<login>shp_login</login>
<password>******</password>
<shop_bill_id>87834981</shop_bill_id>
<postauth_amount>99.00</postauth_amount>
<encoding>utf-8</encoding>
<lang>uk</lang>
</request>
<order>
<shop_bill_id>87834981</shop_bill_id>
<shop_order_number><![CDATA[1234]]></shop_order_number>
<description><![CDATA[Оплата замовлення №1234]]></description>
<bill_date>15.11.2013</bill_date>
<pay_date>15.11.2013 22:21:51</pay_date>
<bill_amount>99.00</bill_amount>
<auth_code>123456</auth_code>
<status>PAYED</status>
<error_code>0</error_code>
<error_message><![CDATA[]]></error_message>
</order>
</portmoneresult>

6.2.1 Неуспішна відповідь для процедури поставторизації

<order>
<error_code>5</error_code>
<error_message><![CDATA[Помилка підтвердження оплати рахунку
[SHOP_BILL_ID = 87834981]ORA-20001:Помилка визначення реквізитів платіжного терміналу.
[pay_terminal_id=]]]></error_message>
</order>

6.2.2 Процедура поставторизації. Запит у форматі JSON

{
"method": "confirmPreauth",
"params": {
"data": {
"login": "SHP_333",
"password": "22222222",
"payeeId": "3048",
"shopOrderNumber": "test_1SAB1",
"shopbillId": 395584061,
"postauthAmount": "1",
"distribution": "Товар 2 70749:70749;3;"
}
},
"id": "1"
}

6.2.2 Формат відповіді

{
"shop_bill_id": "395584061",
"shop_order_number": "test_1SAB1",
"description": "Опис замовлення",
"bill_date": "31.07.2018",
"pay_date": "31.07.2018 15:30:30",
"pay_order_date": null,
"bill_amount": "1",
"auth_code": "882311",
"status": "PAYED",
"attribute1": null,
"attribute2": null,
"error_code": "0",
"error_message": ""
}

6.3.1 Запит скасування платежу з преавторизацією. POST запит

<form action="https://www.portmone.com.ua/gateway/" method="post">
<input type="hidden" name="method" value="preauth" />
<input type="hidden" name="action" value="reject" />
<input type="hidden" name="login" value="shp_login" />
<input type="hidden" name="password" value="******" />
<input type="hidden" name="shop_bill_id" value="87834981" />
<input type="hidden" name="encoding" value="utf-8" />
<input type="hidden" name="lang" value="uk" />
</form>

6.3.1 Приклад відповіді на POST запит скасування платежу з преавторизацією

<?xml version="1.0" encoding="utf-8"?>
<portmoneresult lang="uk">
<request>
<method>preauth</method>
<action>reject</action>
<login>SHP_FLOWERSQUICKER</login>
<password>********</password>
<shop_bill_id>421592544</shop_bill_id>
<encoding>utf-8</encoding>
<lang>uk</lang>
</request>
<order>
<shop_bill_id>421592544</shop_bill_id>
<shop_order_number>test_1nvnvnvbnvb15</shop_order_number>
<description><![CDATA[Опис замовлення]]></description>
<bill_date>17.10.2018</bill_date>
<pay_date>17.10.2018</pay_date>
<pay_order_date></pay_order_date>
<bill_amount>1</bill_amount>
<auth_code>523067</auth_code>
<status>REJECTED</status>
<attribute1></attribute1>
<attribute2></attribute2>
<error_code>0</error_code>
<error_message><![CDATA[]]></error_message>
</order>
</portmoneresult>

6.3.2 Запит скасування платежу з преавторизацією. Запит у форматі JSON

{
"method": "rejectPreauth",
"params": {
"data": {
"login": "SHP_333",
"password": "22222222",
"payeeId": "3048",
"shopOrderNumber": "SHP-00000015",
"shopbillId": 395587649
}
},
"id": "1"
}

6.3.2 Успішна відповідь на запит скасування платежу з преавторизацією

{
"shop_bill_id": "395587649",
"bill_number": "SHP-00000015",
"description": "Опис замовлення",
"bill_amount": "1",
"status": "REJECTED",
"bank_id": "1042",
"terminal_id": "4269955",
"merchant_id": "20905416",
"rrn": "0000000000",
"auth_code": "882311",
"attribute1": null,
"attribute2": null,
"attribute3": null,
"attribute4": null,
"attribute6": "444433******1111",
"commission": "0",
"error_code": "0",
"error_message": null,
"token": null
}

До розділу 7 «Розщеплення платежу»

Приклад запиту на оплату з розщепленням платежу

<form
action="https://www.portmone.com.ua/gateway/"
method="post"
target="_blank"
>
<input
type="hidden"
name="bodyRequest"
value='{
"paymentTypes":{
"card":"Y",
"portmone":"N",
"token":"N",