|
|
 |
 |
 |
|
|
API для интеграции с внешними системами
|
| |
Запросами GET можно получить:
Весь список товаров с кодом, штрих-кодом, группой, ценами, остатком.
Список прайс-листов (категорий цен).
Список групп (категорий) товаров.
Отдельный товар (с остатком, ценой) по его коду или штрих-коду.
Отдельного контрагента (с суммой долга) по его коду, телефону или email.
Отдельный документ по его ID или номеру заказа.
Запросами POST можно добавить:
Новый товар или контрагента.
Новый документ указанного типа (счет-заказ, накладная-продажа или оплата ).
|
| |
Надо загрузить
серверную часть
(извлечь в папку основной программы, создать ярлык).
Для просмотра текста запросов и ответов - программу тестирования. |
| |
Соединение: http://ip:порт (для этого потребуется получить статический IP и открыть порт в роутере).
Авторизация: с каждым запросом передаются заголовки login и password.
Они соответствуют пользователю программы, но более рационально в Сервис/Пользователи/Права создать отдельное, чтобы отличать данные, добавленные через API.
Желательно его имя/пароль задать английскими буквами.
Ответный формат:
если нет ошибки – в формате XML.
Ошибки:
обычный текст – "no parameters" или "no match".
|
| |
В программе тестирования будут видны примеры запросов.
Отдельно можно описать порядок добавления документа в БД:
POST http://ip:порт /DOCUMENT (если без указания ID, документ будет создан, ID присвоен и передан в ответ).
По умолчанию, без указания типа документа, создается счет-заказ.
Накладная прибыльная - 1, Накладная расходная - 2, Счет-заказ
- 3, Оплата нам банк - 4, Оплата поставщику банк - 5, Оплата нам наличные - 6, Оплата поставщику наличные - 7, Услуги получены - 8, Услуги предоставлены - 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< br>
(телефон может быть без +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 |
|