|
|
 |
 |
 |
|
|
API для інтеграції із зовнішніми системами
|
| |
Запитами GET можна отримати:
Весь список товарів з кодом, штрих-кодом, групою, цінами, залишком.
Перелік прайс-листів (категорій цін).
Список груп (категорiй) товарiв.
Окремий товар (с залишком, цiною) за його кодом або штрих-кодом.
Окремого контрагента (с сумою борга) за його кодом, телефоном або email.
Окремий документ за його ID чи номером замовлення.
Запитами POST можна додати:
Новий товар чи контрагента.
Новий документ вказанного типу (рахунок-замовлення, накладна-продаж чи оплата).
|
| |
Треба завантажити
серверну частину
(вилучити у папку основної програми, створити ярлик).
Для перегляду текста запитiв та відповідей - программу тестування. |
| |
З'єднання: http://ip:порт (для цього знадобиться отримати статичний IP та відкрити порт у роутері).
Авторизація: з кожним запитом передаються заголовки login та password.
Вони відповідають користувачеві програми, але раціональніше в Сервіс/Користувачі/Права створити окремого, щоб відрізняти дані, додані через API.
Бажано його ім'я/пароль задати англійськими літерами.
Формат вiдповiдi:
якщо немає помилки – у форматі XML.
Помилки:
звичайний текст - "no parameters" чи "no match".
|
| |
У програмі тестування буде видно приклади запитів.
Окремо можна описати порядок додавання документа до БД:
POST http://ip:порт /DOCUMENT (якщо без вказівки ID, документ буде створено, ID присвоєний та переданий у вiдповiдi).
За замовченням, без вказівки типу документу, створюється рахунок-замовлення.
Накладна прибуткова - 1, Накладна видаткова - 2, Рахунок-замовлення
- 3, Оплата нам банк - 4, Оплата постачальнику банк - 5, Оплата нам готiвка - 6, Оплата постачальнику готiвка - 7, Послуги отриманi - 8, Послуги наданi - 9.
Під час створення можна відразу вказати дату, ID контрагента, номер замовлення:
POST http://ip:порт /DOCUMENT?order=100&personid=123&date=01.01.2024
Наступним кроком, вже з ID нового документу, передавати його зміст - додавати товар, кількість, ціну:
POST http://ip:порт /DOCUMENT?ID=1200&productid=234&quantity=5&price=100.50
|
| |
Для звичайної потреби, онлайн торгівлі, порядок дій буде такий:
Перевірити, чи є таке замовлення:
GET http://ip:порт /DOCUMENT?order=100
Якщо ні, і його потрібно створити, то перевірити, чи є такий покупець:
GET http://ip:порт /PERSON?email=xxx@xx.xx&phone=+380xxxxxx
Якщо покупця не знайдено, додати його:
POST http://ip:порт /PERSON?name=Название&email=xxx@xx.xx&phone=+380xxxxxx
(телефон может быть без +38)
Використовувати отриманий ID покупця у новому замовленні:
POST http://ip:порт/DOCUMENT?order=100&personid=123&date=01.01.2024
Перебирати товари в замовленні, перевіряти за кодом, чи є такий:
GET http://ip:порт /PRODUCT?code=234
Якщо не знайдено, додати його:
POST http://ip:порт /PRODUCT?name=Название&code=234
Отримавши ID товару, додати його до документа:
POST http://ip:порт /DOCUMENT?ID=1200&productid=1450&quantity=5&price=100.50 |
|