ШагAPI nameДанныеКомментарий
1Старт нового ордеринг тенанта для клиента ZegoalInitTenant

API request parameters:

  • new tenant name
  • template name
Используем имя аккаунта в биллинговой системе Zegoal и название шаблона "order"
2Создание записей в каталогеAddCatalogPosition
  • Request

    • name (mandatory)
    • code
    • category
    • type (mandatory)
    • external_code
    • description
    • default_parameters
      •  unit ("шт" by default)
      • default_quantity (=1 by default)
      • price (=0 by default)
    • is_actual (true by default)

    Response:

    all catalog position attributes (include price collection)

Позволяет создавать новые записи в каталоге товаров и продуктов.

Работает со словарями:

  • OrderingCatalogCategory (пока пустой)
  • OrderingCatalogType (товар, услуга)
  • Units (штуки по умолчанию)
3.Получение каталогаGetOrderingCatalog

Request:

  • catalog_position_id
  • catalog_position_code
  • catalog_position_ext_code
  • category
  • type
  • is_actual (true by default)

Запрос без указания параметров вернет весь каталог. Указание параметров собственно фильтрует каталог и возвращает отобранные записи.


4.Создание нового заказаCreateOrder
  • Customer_name, string, conditional
  • Account_id, conditional
  • External_customer_id, conditional
  • create_account (true\false), optional, default false
  • Start_Date, date, mandatory, "now" by default
  • End_Date, date, optional
  • Order_Type, from dictionary "OrderType", optional
  • Account_Address_id (account address id), optional
  • Tel_num, mandatory
  • E-mail, mandatory
  • Address_text, string, optional
  • Order_Description, string, optional
  • Order_Status, (code from dictionary "OrderStatus"), "Draft" by default
  • OrderPositions (array) optional
    • Position_type, (code from dictionary OrderPositionType), optional
    • Product_name, string, mandatory
    • Product_code, string, optional
    • Quantity, int, mandatory, by default=1
    • Unit, string, optional
    • Overwrite_price, int, mandatory
    • Description, string, optional
    • Implementation_comments

One of conditional parameters: Account_id or External_customer_id or Customer_name** - is mandatory to be provided. 

Позволяет создавать как "шапку заказа" так и заказ с позициями. Привязывает заказ к существующему аккаунту или создает новый.


Более детальная логика работы API будет в полной документации.

5.Работа с позициями в заказеOrderPositionManagement

Request parameters

  • account_name, optional
  • account_code, optional
  • order_num, optional
  • order_id, mandatory
  • position_management (array), mandatory
    • Position_id, (mandatory for "action"= update, delete)
    • Action, mandatory
    • attributes
      • \\- new\update order_position_attributes -\\

Позволяет добавлять, редактировать и удалять позиции заказа. В ответ система возвращает весь набор позиций заказа и новые пересчитанные суммы заказа.


Actions:

  • Add
  • Update
  • Delete
6.Обновление "шапки" заказа (в том числе статусов)UpdateOrder

Request:

  • order_id (mandatory)
  • update_order_attributes
    • Start_Date, date, optional, "now" by default
    • End_Date, date, optional
    • Order_Type, from dictionary "OrderType", optional
    • Account_Address_id (account address id), optional
    • Tel_num, optional
    • E-mail, optional
    • Address_text, string, optional
    • Order_Description, string, optional
    • Order_Status, (code from dictionary "OrderStatus"), "Draft" by default

Response:

All order attributes (include positions).

Редактирование ключевых атрибутов заказа
7.Получение списка заказов по всему тенантуGetOrderList

Request parameters:

  • date_from, mandatory
  • date_tom, mandatory
  • status, optional
  • account_id, optional

Response 

Orders array. All attributes without positions.

Для выборки списка заказов без уточнение аккаунта (кастомера).
8.Получение полных заказов по кастомеруGetAccountOrders

Request parameters:

  • account_id (mandatory)
  • order_id (optional)
  • date_from, (optional)
  • date_to, (optional)
  • status, (optional), array.

Response

All order and order_position attributes. 

Возвращает целиком заказ с позициями.
9.Генерация инвойса для заказаGenerateOrderInvoiceПринимает на вход массив order_idВыполняет формирование инвойса и PDF документа инвойса. Прикрепляет сформированные документы в заказ.
10.Получение инвойсов по кастомеруGetInvoiceDataаналогично Zegoal биллингу
11.Добавление-просмотр платежейAppPayment, GetAccountPaumentsаналогично Zegoal биллингу