Skip to main content

Опис механізму роботи структурованого посилання для проведення оплати та налаштування періодичного автоплатежу

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

ТермінВизначення
Мерчант, ПартнерОрганізація, що уклала договір з Portmone.com про надання послуг з приймання платежів
Покупець, КлієнтВідвідувач інтернет-магазину Мерчанта з метою ознайомлення з асортиментом товарів (послуг) та здійснення покупки
Картка, Платіжна карткаПлатіжні картки міжнародних платіжних систем Visa, Mastercard та Національної платіжної системи ПРОСТІР
АвторизаціяПроцес надання прав доступу або інших повноважень Покупцеві, програмі або процесу
Особистий кабінетСпеціалізований сайт із набором сторінок та інтерактивних форм, за допомогою якого авторизований користувач може отримувати необхідну інформацію та здійснювати інші операції у системі Portmone.com
РНОКПП (ІПН) клієнтаРеєстраційний номер облікової картки платника податків (РНОКПП) (раніше індивідуальний податковий номер (ІПН)) - це цифровий код, необхідний кожному платнику податків для обліку в фіскальних органах
НБУНаціональний банк України
Вихідні або святкові дніНеробочі дні в Україні, протягом яких банк не здійснює банківські операції (встановлюються Кодексом законів про працю України та розпорядженням Кабінету міністрів України)
Бек-офісСпеціалізоване програмне забезпечення, що використовується співробітниками Portmone.com
IBANМіжнародний номер банківського рахунку (англ. International Bank Account Number)

1. Загальний опис

Партнер, що бажає надати клієнтам можливість автоматичної періодичної (або разової) оплати за допомогою Portmone.com, повинен надати клієнтові посилання вигляду: https://www.portmone.com.ua/r3/uk/autoinsurance?i=<параметри_оплати>, яке містить у собі реквізити клієнта, що необхідні для його ідентифікації Партнером, параметри налаштування автоматичного списання та унікальний ідентифікатор Партнера у системі Portmone.com (більш детальна інформація наведена у розділі 2 "Формування параметрів оплати").

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

Нижче наведений вигляд сторінки оплати на прикладі Партнера - страхової компанії.

Приклад сторінки оплати для Партнера - страхової компанії

Мал. 1. Приклад сторінки оплати

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

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

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

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

2. Формування параметрів оплати

Параметри оплати передаються у вигляді закодованого рядку в параметрі i GET-запиту на URL-адресу: https://www.portmone.com.ua/r3/uk/autoinsurance.

Для формування рядку використовуються наступні параметри:

ПараметрОписОбов’язковийЗначення
vВерсія протоколуТакЗавжди приймає значення "2"
payeeIdУнікальний ідентифікатор Партнера у системі Portmone.comТакНадається кожному Партнерові індивідуально при підключенні до системи Portmone.com
amountСума оплати. При наявності дробової частини використовується розділювач крапка ("."). Якщо передані параметри для автооплати – вказана сума буде використовуватись при автоматичних списанняхТакНаприклад: 100.50
langМова інтерфейсу платіжної системиНіuk – українська мова, en – англійська (значення без задання – uk)
editМожливість для клієнта редагувати параметри автоматичної оплати. Якщо інше не було задане, редагувати неможливоНі"Y" – можна редагувати, "N" – не можна редагувати
description*Коментар до замовлення/ опис призначення оплатиНіДо 250 символів
attribute1*Службове полеНіЗаповнюється на розсуд компанії
attribute2*Службове полеНіЗаповнюється на розсуд компанії
attribute3*Службове полеНіЗаповнюється на розсуд компанії
attribute4*Службове полеНіЗаповнюється на розсуд компанії
billCurrencyВалюта проведення платежуНіМожливі значення: UAH, USD, EUR, GBP, KZT (значення без задання – UAH)
billNumberНомер замовлення (рахунку), що сплачується, у системі Партнера. Номер рахунку повинен бути унікальним у межах одного замовлення. Якщо замовлення з цим номером рахунку вже було сплачене, система Portmone.com відхилить транзакціюНіДо 120 символів
emailAddressАдреса електронної пошти клієнтаТакНаприклад: [email protected]
timeToLiveКрайній термін для виконання оплати клієнтом. Відлік починається з дати початку дії договору. Якщо параметр не переданий – термін оплати для клієнта не обмежуєтьсяНіВід 1 до 30 (в днях). Наприклад, якщо contractDate=20.01.2020, а timeToLive=1, то здійснити оплату можна буде до 20.01.2020 23:59:59
contractDateДата початку дії договоруНіDD.MM.YYYY
limitДата закінчення дії договоруНіDD.MM.YYYY
successUrlАдреса Інтернет-магазину (внутрішній URL мобільного додатку), на яку буде спрямовано Клієнта після успішного завершення платежуНіНаприклад: https://portmone2.com/r3/ecommerce/test/master-test-form"
infoParamsБлок параметрів для додаткової інформації про клієнта, яка буде відображена при налаштуванні автоотплатНіДив. структуру infoParams
settingsБлок параметрів для налаштування автоматичної оплатиНіДив. структуру settings

Структура infoParams

ПараметрОписОбов’язковийЗначення
phoneНомер телефону клієнтаНі380ХХХХХХХХХ
birthDateДата народження клієнтаНіDD.MM.YYYY

Структура settings

ПараметрОписОбов’язковийЗначення
periodПеріодичність автоматичних списаньТак1 – щомісячно
2 – щоквартально
3 – щопівроку
4 – щороку
payDateДень проведення автоматичного списанняТакПриймає значення від 1 до 28
startDateДата початку автоматичних списань. Якщо параметр не задано – автоматично проставиться поточна датаНіDD.MM.YYYY
endDateДата закінчення автосписань. Якщо параметр не задано – автоматично проставиться поточна дата + 3 рокиНіDD.MM.YYYY

Примітка: * – у реєстрі та при експорті фігурують значення параметрів description та attribute1-4. Назва цих параметрів погоджується з менеджером компанії Portmone.com.

Зверніть увагу: перша оплата для валютних договорів буде проведена за курсом НБУ на поточний день (якщо курс на поточний день ще не встановлений, або оплата здійснюється у вихідні, то за останнім встановленим курсом). Автооплати будуть здійснюватися з 7.00 до 8.00 за курсом НБУ за попередній день, або за останнім встановленим курсом НБУ, якщо оплата здійснюється у вихідний або святковий день.

Приклад валідного json-об'єкту:

{
"v":"2",
"payeeId":"1185",
"lang":"uk",
"amount":"100.31",
"settings":
{ "period":"1",
"payDate":"5",
"startDate":"20.01.2020",
"endDate":"20.01.2023" },
"edit":"N",
"description":"40-0111-078-2-5770640",
"attribute1":"2019-08-01",
"attribute2":"Іванов Олександр Олександрович",
"attribute3":"Сплата страхових послуг згідно договору",
"attribute4":"2710",
"billNumber":"123-123-99",
"emailAddress":"[email protected]",
"timeToLive":"10",
"contractDate":"01.08.2019",
"limit":"10.09.2019",
"successUrl":"https://portmone2.com/r3/ecommerce/test/master-test-form"
}

Рядок із сформованим об'єктом необхідно стиснути за допомогою gzip, а потім закодувати за допомогою base64, результат буде значенням параметру i GET-запиту. Тобто, щоб отримати значення даного параметру, потрібно виконати перетворення:

i = base64(gzip(json_encode(data)))

де data – вихідні дані платника та параметри оплати.

Приклад коду на PHP, який виконує це перетворення:

$source = '{
"v":"2",
"payeeId":"1185",
"lang":"uk",
"amount":"100.31",
"settings":{
"period":"1",
"payDate":"5",
"startDate":"20.01.2020",
"endDate":"20.01.2023"
},
"edit":"N",
"description":"40-0111-078-2-5770640",
"attribute1":"2019-08-01",
"attribute2":"Іванов Олександр Олександрович",
"attribute3":"Сплата страхових послуг згідно договору",
"attribute4":"2710",
"billNumber":"123-123-99",
"emailAddress":"[email protected]",
"timeToLive":"10",
"contractDate":"01.08.2019",
"limit":"10.09.2019",
"successUrl":"https://portmone2.com/r3/ecommerce/test/master-test-form"
}';

$i = base64_encode(gzencode($source));
$url = ‘https://www.portmone.com.ua/r3/uk/autoinsurance?i=’ . $i;
//$url тепер містить адресу структурованого посилання для видачі клієнту

3. Брендування платіжної сторінки

Зовнішній вигляд сторінки оплати можна налаштувати в Особистому кабінеті Portmone для мерчантів або звернувшись до менеджера та надавши параметри для брендування.

Типи брендування:

  • portmone – значення без задання (стандартний стиль Portmone.com, див. мал. 4);
  • brand – повна стилізація сторінки для Партнера (див. мал. 5);
  • co-brand – логотип Партнера на сторінці наведений разом з логотипом Portmone.com (див. мал. 6);
  • light – версія для відображення у вигляді фрейму (див. мал. 7)

Параметри брендування:

ПараметрОписТип брендування, для якого може бути застосований параметр
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
bcMainВизначає колір фону сторінок. Формат вводу – HEX (наприклад, #ff0000)brand, light

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

Приклад брендування для "portmone"

Мал. 4. Стандартний стиль Portmone.com (тип брендування – portmone)

Приклад брендування для "brand"

Мал. 5. Повна стилізація сторінки для партнера (тип брендування – brand)

Приклад брендування для "co-brand"

Мал. 6. Логотип партнера на сторінці наведений разом з логотипом Portmone.com (тип брендування – co-brand)

Приклад брендування для "light"

Мал. 7. Версія для відображення у вигляді фрейму на сайті партнера (тип брендування – light)

4. Повідомлення Партнера про оплату

Можливе моментальне повідомлення Партнера відразу після оплати надсиланням листа на email-адресу (або декілька адрес), обговорену з Партнером.

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

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

Наприклад:

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

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

Формат повідомлення:

<?xml version="1.0" encoding="UTF-8"?>
<BILLS>
<BILL>
<PAYEE>
<NAME>Назва компанії</NAME>
<CODE> Код компанії</CODE>
</PAYEE>
<BANK>
<NAME> Назва банку відправника </NAME>
<CODE> МФО банку відправника</CODE>
<ACCOUNT> Рахунок банку відправника або IBAN</ACCOUNT>
</BANK>
<BILL_ID>ID рахунку </BILL_ID>
<BILL_NUMBER> Номер рахунку</BILL_NUMBER>
<BILL_DATE> Дата рахунку</BILL_DATE>
<BILL_PERIOD> Період рахунку</BILL_PERIOD>
<PAY_DATE>Дата оплати</PAY_DATE>
<PAYED_AMOUNT> Сума оплати </PAYED_AMOUNT>
<PAYED_COMMISSION> Сума комісії, що буде утримана банком </PAYED_COMMISSION>
<PAYED_DEBT>В тому числі оплата боргу</PAYED_DEBT>
<AUTH_CODE> Код авторизації картки</AUTH_CODE>
<PAYER>
<CONTRACT_NUMBER>Опис рахунку </CONTRACT_NUMBER>
<ATTRIBUTE1>Додатковий параметр 1</ATTRIBUTE1>
<ATTRIBUTE2>Додатковий параметр 2</ATTRIBUTE2>
<ATTRIBUTE3>Додатковий параметр 3</ATTRIBUTE3>
<ATTRIBUTE4>Додатковий параметр 4</ATTRIBUTE4>
</PAYER>
</BILL>
</BILLS>

Опис полів повідомлення надано у Додатку 1. Приклад повідомлення наведений у Додатку 2.

Повідомлення про банківський платіж – 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 з грошовими коштами, що перераховуються на розрахунковий рахунок компанії банком. Повідомлення містить інформацію про один банківський платіж.

Формат повідомлення:

<?xml version="1.0" encoding="UTF-8"?>
<PAY_ORDERS>
<PAY_ORDER>
<PAY_ORDER_ID> ID платіжного доручення</PAY_ORDER_ID>
<PAY_ORDER_DATE> Дата платіжного доручення</PAY_ORDER_DATE>
<PAY_ORDER_NUMBER>Номер платіжного доручення</PAY_ORDER_NUMBER>
<PAY_ORDER_AMOUNT>Сума платіжного доручення</PAY_ORDER_AMOUNT>
<PAYEE>
<NAME>Назва компанії отримувача</NAME>
<CODE>Код компанії</CODE>
</PAYEE>
<BANK>
<NAME>Назва банку</NAME>
<CODE>МФО банку</CODE>
<ACCOUNT>Р/р відправника або IBAN</ACCOUNT>
</BANK>
<BILLS>
<BILL>
<BILL_ID>ID рахунку </BILL_ID>
<BILL_NUMBER> Номер рахунку</BILL_NUMBER>
<BILL_DATE> Дата рахунку</BILL_DATE>
<BILL_PERIOD> Період рахунку</BILL_PERIOD>
<PAY_DATE>Дата оплати</PAY_DATE>
<PAYED_AMOUNT> Сума оплати </PAYED_AMOUNT>
<PAYED_COMMISSION> Сума комісії,що буде утримана банком
</PAYED_COMMISSION>
<PAYED_DEBT>У тому числі оплата боргу</PAYED_DEBT>
<AUTH_CODE> Код авторизації картки</AUTH_CODE>
<PAYER>
<CONTRACT_NUMBER>Опис замовлення </CONTRACT_NUMBER>
<ATTRIBUTE1>Додатковий параметр 1 </ATTRIBUTE1>
<ATTRIBUTE2>Додатковий параметр 2 </ATTRIBUTE2>
<ATTRIBUTE3>Додатковий параметр 3 </ATTRIBUTE3>
<ATTRIBUTE4>Додатковий параметр 4 </ATTRIBUTE4>
</PAYER>
</BILL>
</BILLS>
</PAY_ORDER>
</PAY_ORDERS>

Опис полів повідомлення надано у Додатку 3. Приклад повідомлення наведений у Додатку 4.

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

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

Формат повідомлення:

<?xml version="1.0" encoding="UTF-8"?>
<RESULT>
<ERROR_CODE>Код помилки</ERROR_CODE>
<REASON>Опис помилки</REASON>
</RESULT>

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

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

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

<?xml version="1.0" encoding="UTF-8"?>
<RESULT>
<ERROR_CODE>0</ERROR_CODE>
<REASON>OK</REASON>
</RESULT>

5. Реєстрація партнера у системі Portmone.com

Після того як Партнер висловив бажання приймати платежі через функціонал структурованого посилання, необхідно створити компанію у бек-офісі системи Portmone.com (спочатку тестову, з узгодженими з Партнером параметрами підписки). Крім того потрібно узгодити з Партнером:

  • набір додаткових параметрів, що будуть передаватися;
  • параметри брендування (кольори у форматі HEX та URL на логотип партнера), якщо партнер бажає забрендувати платіжну сторінку;
  • email- або URL-адреси для повідомлення Партнера про оплату (якщо потрібно).

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

6. Тестування

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

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

Картки для тестування:

Номер карткиРезультат
4444333322221111Успішна оплата
4111111111111111Неуспішна оплата

Продуктивний режим з автоматичним скасуванням оплати дає можливість виконувати реальні оплати з використанням реальних карток. Після здійснення оплати списані кошти повертаються на картку протягом 30 хвилин (відбувається автоматичне скасування платежу).

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

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

7. Управління оплаченими договорами (повернення, скасування)

7.1. Скасування платежу

У разі виникнення необхідності скасування платежу уповноважений співробітник Партнера звертається до менеджерів Portmone.com: https://www.portmone.com.ua/r3/uk/contacts.

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

  1. Виконати авторизацію в Особистому кабінеті за посиланням https://www.portmone.com.ua/b2b_dash/, ввівши логін та пароль.
  2. Знайти необхідне замовлення на сторінці “Замовлення”.
  3. Відкрити замовлення, натиснувши на нього.
  4. У формі “Повернути замовлення” перевірити необхідну суму у полі “Сума”, ввести коментар (за необхідності) та натиснути кнопку “Повернути”.

Увага! Через Особистий кабінет можна здійснити повернення тільки разової оплати. Для відміни автоматичних оплат зверніться до менеджера Portmone.com.

Додаток 1. Опис полів повідомлення 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
BILL_NUMBERCHAR(120)Номер рахунку
BILL_DATECHAR(10)Дата рахунку. Формат YYYY-MM-DD
BILL_PERIODCHAR(4)Період, за який виставляється рахунок. Формат – MMYY (місяць та рік)
PAY_DATECHAR(10)Дата оплати. Формат YYYY-MM-DD
PAYED_AMOUNTNUMBER(15,2)Сума оплати. Розділювач крапка
PAYED_COMMISSIONNUMBER(15,2)Сума комісії, що буде утримана банком. Через неможливість визначити, як банк проведе округлення, завжди дорівнює 0
PAYED_DEBTNUMBER(15,2)В тому числі оплата боргу. Розділювач крапка
AUTH_CODECHAR(6)Код авторизації платіжної картки
CONTRACT_NUMBERCHAR(20)Параметр, за яким компанія та система Portmone.com домовились ідентифікувати клієнта
ATTRIBUTE1CHAR(20)Додатковий параметр ідентифікації клієнта. Якщо для ідентифікації абонента він не потрібен, то у повідомленні він не передається
ATTRIBUTE2CHAR(20)Додатковий параметр ідентифікації клієнта. Якщо для ідентифікації абонента він не потрібен, то у повідомленні він не передається
ATTRIBUTE3CHAR(20)Додатковий параметр ідентифікації клієнта. Якщо для ідентифікації абонента він не потрібен, то у повідомленні він не передається
ATTRIBUTE4CHAR(20)Додатковий параметр ідентифікації клієнта. Якщо для ідентифікації абонента він не потрібен, то у повідомленні він не передається

Додаток 2. Приклад повідомлення BILLS

<?xml version="1.0" encoding="UTF-8"?>
<BILLS>
<BILL>
<PAYEE>
<NAME>ПАТ «Березка»</NAME>
<CODE>1001</CODE>
</PAYEE>
<BANK>
<NAME>АТ "Банк "Фінанси та Кредит"</NAME>
<CODE>300131</CODE>
<ACCOUNT>29244020902980</ACCOUNT>
</BANK>
<BILL_ID>14561</BILL_ID>
<BILL_NUMBER>3892/1</BILL_NUMBER>
<BILL_DATE>2010-02-01</BILL_DATE>
<BILL_PERIOD>0110</BILL_PERIOD>
<PAY_DATE>2010-02-15</PAY_DATE>
<PAYED_AMOUNT>120.35</PAYED_AMOUNT>
<PAYED_COMMISSION>0</PAYED_COMMISSION>
<PAYED_DEBT>0</PAYED_DEBT>
<AUTH_CODE>739280</AUTH_CODE>
<PAYER>
<CONTRACT_NUMBER>Опис замовлення </CONTRACT_NUMBER>
<ATTRIBUTE1>12082010</ATTRIBUTE1>
</PAYER>
</BILL>
</BILLS>

Додаток 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
BILL_NUMBERCHAR(120)Номер рахунку
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)Додатковий параметр ідентифікації клієнта. Якщо для ідентифікації абонента він не потрібен, то у повідомленні він не передається

Додаток 4. Приклад повідомлення PAY_ORDERS

<?xml version="1.0" encoding="UTF-8"?>
<PAY_ORDERS>
<PAY_ORDER>
<PAY_ORDER_ID>26792</PAY_ORDER_ID>
<PAY_ORDER_DATE>2010-02-16</PAY_ORDER_DATE>
<PAY_ORDER_NUMBER>120985735</PAY_ORDER_NUMBER>
<PAY_ORDER_AMOUNT>138.85</PAY_ORDER_AMOUNT>
<PAYEE>
<NAME>ПАТ «Березка»</NAME>
<CODE>1001</CODE>
</PAYEE>
<BANK>
<NAME>АТ "Банк "Фінанси та Кредит"</NAME>
<CODE>300131</CODE>
<ACCOUNT>29244020902980</ACCOUNT>
</BANK>
<BILLS>
<BILL>
<BILL_ID>14561</BILL_ID>
<BILL_NUMBER>3892/1</BILL_NUMBER>
<BILL_DATE>2010-02-01</BILL_DATE>
<BILL_PERIOD>0110</BILL_PERIOD>
<PAY_DATE>2010-02-15</PAY_DATE>
<PAYED_AMOUNT>120.35</PAYED_AMOUNT>
<PAYED_COMMISSION>5.0</PAYED_COMMISSION>
<PAYED_DEBT>0</PAYED_DEBT>
<AUTH_CODE>739280</AUTH_CODE>
<PAYER>
<CONTRACT_NUMBER>08967563</CONTRACT_NUMBER>
<ATTRIBUTE1>12082010</ATTRIBUTE1>
</PAYER>
</BILL>
<BILL>
<BILL_ID>14569</BILL_ID>
<BILL_NUMBER>3892/2</BILL_NUMBER>
<BILL_DATE>2010-02-01</BILL_DATE>
<BILL_PERIOD>0110</BILL_PERIOD>
<PAY_DATE>2010-02-15</PAY_DATE>
<PAYED_AMOUNT>20.50</PAYED_AMOUNT>
<PAYED_COMMISSION>1.0</PAYED_COMMISSION>
<PAYED_DEBT>0</PAYED_DEBT>
<AUTH_CODE>360157</AUTH_CODE>
<PAYER>
<CONTRACT_NUMBER>08967568</CONTRACT_NUMBER>
<ATTRIBUTE1>12082011</ATTRIBUTE1>
</PAYER>
</BILL>
</BILLS>
</PAY_ORDER>
</PAY_ORDERS>