Створення замовлення
API надає можливість створювати замовлення та передавати необхідну інформацію для обробки платежів та доставки. Ви можете створювати замовлення на оплату використовуючи Вашу логіку для отримання товару, оплату, уточнень та обмежень. В прикладах АПІ ви можете ознайомитись з пошириними кейсами використання.
Можливості:
- Передавання до API змісту кошика замовлення
- Передавання по API обраної кількість місяців для оплати методом покупка частинами
- Налаштування необхідних методів доставки: поштомати НП, відділення НП, вантажне відділення НП, самовивіз, кур’єр
- Налаштування необхідних методів оплати: оплата методом покупка частинами, оплата при отрманні, холдування. Оплата карткою онлайн буде активоване за замовченням
- Можливість передавати адресу, попередньо обрану на вашому сайті
- Можливість передавати промокод, попередньо введений на вашому сайті або перевірка введеного промокоду безпосередньо на сайті чекауту з перевіркою на вашому боці, яке можна налаштувати за допомогою документації
- Можливість налаштувань вікових обмежень
Як працює API створення чекауту:
- Мерчант додав чекаут до свого сайту
- Покупець вибрав оплату через моно чекаут
- Мерчант виконує запит на API створення замовлення з переліком товарів або послуг, які клієнт додав до корзини
- Покупець може авторизуватись або ні та оплатити замовлення
- Мерчант отримує колбек з деталями транзакції якщо клієнт підтвердив замовлення
Дана інструкція надає докладне керівництво для розробників веб-сайтів щодо інтеграції виклику API для створення замовлення на боці мерчанта та передачі інформації в чекаут.
HEADER PARAMETERS:
X-Token
required
string
токен з https://web.monobank.ua (натисніть «Інтернет» -> «Управління еквайрингом» -> Створіть токен і дотримуйтесь інструкцій) або тестовий токен з https://api.monobank.ua/
Content-Type
required
application/json
Значення ‘application/json’ повідомляє, що дані передаються у форматі JSON
X-Cms
string
Найменування CMS, якщо сайт створений за допомогою конструктора
REQUEST BODY SCHEMA: application/json
order_ref
required
string
Ваш ідентифікатор замовлення/кошика. Передаєте його нам — ми повертаємо його у всіх подальших діях із вашим замовленням, щоб ви легко зв’язали події та відстежили
amount
required
number
Загальна сума замовлення до оплати у грн. Сума вже включає податки і відображає підсумок після знижок/націнок та доставки, якщо вони застосовуються.
ccy
number
Фіксований цифровий код валюти — 980 (UAH); інші значення не приймаються
count
required
number
Загальна кількість товарних одиниць у замовленні. Має дорівнювати кількості cnt по всіх позиціях у блоці products. Якщо у cnt є 3 одиниці різного товару, наприклад 2 одиниці холодильника та 3 одиниці різних шкарпеток. Тоді в count буде кількість 5
products
required
array of object
Список позицій у замовленні. Використовується для відображення в чекауті та у колбеку/інвойсі
products [dlv_method_list
required
array of string
Доступні способи доставки, які будуть відображатися для вибору клієнту на сторінці Чекауту. Усі ці методи повинні бути включені в Налаштуваннях мерчату в Веб кабінеті.
Доступні значення:
• pickup — Під час онборду або у налаштуваннях перевірте чи точно ви увімкнули та завели точку самовивозу. Якщо цього не зробити, на чекауті методу не буде.
• np_brnm — Для активації поставте галочку в налаштуваннях в веб кабінеті. Звичайне відділення нової пошти.
• np_box — Для активації поставте галочку в налаштуваннях в веб кабінеті.
• courier — Кур’єрська не обов’язково буде доставка НП. Для методу кур’єр можлива доставка як вам буде зручно. З чекаута ви можете отримати точну адресу для доставки, а далі можна організувати необхідну доставку
• np_cargo — Для активації поставте галочку в налаштуваннях в веб кабінеті. Для великогабаритних товарів.
payment_method_list
required
array of string
Доступні методи оплати ваших замовлень. Масив рядків — для відображення типів способів оплати в чекауті.
Доступні значення:
• card — Оплата карткою передається за замовченням завжди. Якщо в масиві буде відсутній метод оплати карткою, буде помилка.
• part_purchase — Для можливості активації методу оплати ПЧ, необхідно попередньо активувати ПЧ для вашого магазину. Для підключення перейдіть за посиланням.
• payment_on_delivery — Оплата під час отримання товара.
dlv_pay_merchant
required
boolean
Використовується для бейджів/пояснень у чекауті та у довідкових даних замовлення.
• false (за замовчуванням) — доставку оплачує клієнт.
• true — доставку оплачує магазин (для клієнта — безкоштовна).
payments_number
number
Кількість платежів для методу part_purchase (Покупка частинами).
• Обовʼязковий, якщо в payment_method_list є part_purchase.
• Мінімум — 3. Якщо менше або не передано — part_purchase не відображається.
• Відображається в UI як «X платежі/платежів».
• Мерчант сам визначає кількість місяців ПЧ для кошику
callback_url
string
Адреса для Callback (POST) – на цю адресу буде надіслано дані про оформлене замовлення. Більш детальну інформацію можна отримати в розділі Callback.
Налаштовується в веб кабінеті та може бути передано одночасно в АПІ запиті.
Callback надсилається 1 раз, у разі помилки, використовуйте сервіс отримання даних по замовленню.
Наприклад, у веб кабінеті налаштована адреса колбека https://example.com/callback1, і в той же час в АПІ ви передаєте колбек https://example.com/callback2, то у такому випадку ви отримаєте 2 колбека
return_url
string
Адреса для повернення (GET) - на цю адресу буде переадресовано клієнта після завершення замовлення (у разі успіху або помилки).
Налаштовується в веб кабінеті та може бути передана в АПІ запиті.
fl_recall
boolean
Ознака чи потрібно передзвонювати клієнту, необхідна для відображення на фронті галочки за допомогою якої, клієнт може обрати опцію щоб з ним зв’язались.
acceptable_age
int
Мінімальний вік для оформлення покупки покупцем.
Перевірка віку покупця перед оформленням покупки
hold
boolean
Ознака того, що конкретне замовлення, при сплаті карткою, буде виконано з холдуванням.
Управління операціями в статутсі холд - через веб кабінет.
destination
string
Призначення, яке буде відображатися у виписці мерчанту після оплати карткою
promocode_info_merchant
object
Інформація від мерчанта про ‘дефолтний’ промокод. Дефолтний = промокод було введено на сайті мерчанта та передано в чекаут. На чекауті промокод не буде редагуватись.
promocode_info_merchant {
/personal/checkout/order
200