QUINCE API. Замовлення
Список методів
| Метод | Опис |
|---|---|
/api/v2/order/list | Отримання списку замовлень |
/api/v2/order/add | Створення замовлень |
/api/v2/order/update | Оновлення замовлень |
Отримання списку замовлень
Назва методу: /api/v2/order/list
Повертає список замовлень. Для навігації використовується номер сторінки page. Розмір сторінки фіксований і дорівнює 100 елементам.
Параметри запиту
| Поле | Тип | Опис |
|---|---|---|
filter | object | Фільтр замовлень. Поля фільтра працюють з логікою AND. |
filter.Id | integer | Ідентифікатор замовлення. |
filter.DateFrom | string | Дата, починаючи з якої повертати замовлення. Формат: yyyy-mm-dd або yyyy-mm-dd HH:mm:ss. |
filter.DateTo | string | Дата, до якої повертати замовлення. Формат: yyyy-mm-dd або yyyy-mm-dd HH:mm:ss. |
filter.DateModifiedFrom | string | Початок періоду змін у замовленні. Дає змогу вибирати змінені замовлення без DateFrom/DateTo. |
filter.DateModifiedTo | string | Кінець періоду змін у замовленні. |
filter.Company | integer | Ідентифікатор організації. |
filter.Status | array | Ідентифікатори статусів замовлення. |
filter.Archive | boolean | Ознака повернення архівних або скасованих замовлень. |
filter.MobileApp | boolean | Якщо true, API використовує збільшений ліміт вибірки. |
page | integer | Номер сторінки. Якщо не передати, використовується перша сторінка. |
Якщо DateFrom і DateTo не передані та немає фільтра Id або DateModifiedFrom, API повертає документи за поточний день. Якщо передати тільки одну з дат DateFrom/DateTo без DateModifiedFrom, API поверне помилку DateFrom and DateTo are required. Поле Status має бути масивом.
Основні поля відповіді
| Поле | Опис |
|---|---|
Id | Ідентифікатор замовлення. |
Date | Дата замовлення. |
DateCreated | Дата створення. |
DateModified | Дата останнього редагування. |
UserCreated | Користувач, який створив документ. |
UserModified | Користувач, який останнім редагував документ. |
Number | Внутрішній номер. |
NumberOrderSite | Зовнішній номер замовлення. |
Sum | Сума замовлення. |
StoresInRows | Ознака використання складів у рядках документа. |
VatInclude | Ознака, що суми включають ПДВ. |
SumVat | Сума ПДВ. |
SumWithoutVat | Сума без ПДВ. |
Comment | Коментар. |
ExtraComment | Розширений коментар. |
DeliveryAddress | Адреса доставки. |
DateScheduleShipment | Запланована дата доставки. |
Fixed | Ознака публікації документа. |
Partner | Партнер. |
Store | Склад. |
Status | Статус замовлення. |
Company | Організація. |
Contract | Контракт. |
PriceType | Тип ціни. |
DiscountType | Тип знижки. |
Responsible | Відповідальний за замовлення. |
BankAccount | Банківський рахунок. |
Rows | Товарні позиції замовлення. |
Поля рядків Rows
| Поле | Опис |
|---|---|
Id | Ідентифікатор рядка. |
RowNo | Номер рядка. |
Product | Ідентифікатор товару або послуги. |
Price | Ціна. |
Qty | Кількість. |
Sum | Сума рядка. |
SumVat | Сума ПДВ. |
PriceWithoutDiscount | Ціна без знижки. |
PercentDiscount | Відсоток знижки. |
Kind | Вид позиції: P - товар, S - послуга. |
Store | Склад рядка, якщо склади ведуться в рядках. |
Приклад запиту
{
"filter": {
"DateFrom": "2026-03-01",
"DateTo": "2026-03-11",
"Status": [111, 192]
},
"page": 1
}
Створення та оновлення замовлень
Назва методу створення: /api/v2/order/add
Назва методу оновлення: /api/v2/order/update
Методи додають або оновлюють замовлення пакетами до 100 елементів.
API підтримує два режими:
| Режим | Опис |
|---|---|
strict: true | У полях-посиланнях передаються ідентифікатори сутностей QUINCEFIN. |
strict: false | У полях-посиланнях передаються об’єкти з даними для пошуку. Якщо сутність не знайдена, вона може бути створена автоматично. |
Store і Company можуть братися з налаштувань адміністратора за замовчуванням, якщо не передані явно.
Для дат у створенні та оновленні використовуйте формат yyyy-mm-dd або yyyy-mm-dd HH:mm:ss. Якщо передати тільки дату без часу, API додає поточний час сервера.
Параметри для strict: true
| Поле | Опис |
|---|---|
array | Масив замовлень. Обов’язковий. |
array[].Id | Ідентифікатор замовлення. Використовується для /api/v2/order/update. |
array[].NumberOrderSite | Номер замовлення у зовнішній системі. |
array[].Date | Дата замовлення у форматі yyyy-mm-dd. |
array[].Sum | Загальна сума. |
array[].Comment | Коментар. |
array[].DeliveryAddress | Адреса доставки. |
array[].DateScheduleShipment | Запланована дата доставки у форматі yyyy-mm-dd. |
array[].Partner | Ідентифікатор партнера. |
array[].Contract | Ідентифікатор контракту. |
array[].Status | Ідентифікатор статусу. |
array[].Store | Ідентифікатор складу. Для створення в strict: true обов’язковий. |
array[].PriceType | Ідентифікатор типу ціни. |
array[].DiscountType | Ідентифікатор типу знижки. |
array[].PaymentOption | Ідентифікатор варіанта оплати. |
array[].ShippingOption | Ідентифікатор варіанта відвантаження. |
array[].InformationSource | Ідентифікатор джерела інформації. |
array[].Responsible | Ідентифікатор відповідального користувача. |
array[].Company | Ідентифікатор організації. |
array[].BankAccount | Ідентифікатор банківського рахунку. |
array[].CashAccount | Ідентифікатор каси. Не можна передавати одночасно з BankAccount. |
array[].Rows | Рядки замовлення. |
Для /api/v2/order/add у strict: true обов’язкові Date, Responsible, Partner, Store, Status, Contract і непорожній масив Rows. Для /api/v2/order/update обов’язковий Id замовлення, а Rows можна не передавати. Якщо під час оновлення у Rows передати Id рядка, рядок буде оновлений. Якщо Id не передати, рядок буде доданий до замовлення.
Параметри рядків для strict: true
| Поле | Опис |
|---|---|
Rows[].Id | Ідентифікатор рядка. |
Rows[].RowNo | Номер рядка. |
Rows[].Product | Ідентифікатор товару або послуги. |
Rows[].Price | Ціна. |
Rows[].Qty | Кількість. |
Rows[].Sum | Сума. |
Rows[].PriceWithoutDiscount | Ціна без знижки. |
Rows[].PercentDiscount | Відсоток знижки. |
Якщо передати PriceWithoutDiscount, треба також передати PercentDiscount, і навпаки. Якщо ці поля не передані, PriceWithoutDiscount дорівнює Price, а PercentDiscount дорівнює 0.
Параметри для strict: false
| Поле | Опис |
|---|---|
search-partner-by | Поле пошуку партнера: Name, Email або Phone. Якщо не передати, використовується Name. |
array | Масив замовлень. Обов’язковий. |
array[].NumberOrderSite | Зовнішній номер замовлення. Обов’язковий і має бути унікальним. Використовується для пошуку замовлення при оновленні. |
array[].Date | Дата замовлення у форматі yyyy-mm-dd. |
array[].Sum | Загальна сума. |
array[].Comment | Коментар. |
array[].DeliveryAddress | Адреса доставки. |
array[].DateScheduleShipment | Запланована дата доставки у форматі yyyy-mm-dd. |
array[].Partner | Об’єкт партнера. Пошук за Name, Email або Phone. |
array[].Contract | Об’єкт контракту. Пошук за назвою. |
array[].Status | Об’єкт статусу. Пошук за назвою. |
array[].Store | Об’єкт складу з полем Name. Для створення в strict: false обов’язковий. |
array[].PriceType | Об’єкт типу ціни. Пошук за назвою. |
array[].DiscountType | Об’єкт типу знижки. Пошук за назвою. |
array[].Company | Об’єкт з Id організації. |
array[].BankAccount | Об’єкт з Id банківського рахунку. |
array[].CashAccount | Об’єкт з Id каси. Не можна передавати одночасно з BankAccount. |
array[].Rows | Рядки замовлення. |
Для /api/v2/order/add у strict: false обов’язкові NumberOrderSite, Date, Partner.Name, Store.Name, Status.Name, Contract.Name, Contract.Currency і непорожній масив Rows. Для /api/v2/order/update обов’язковий NumberOrderSite, а інші поля можна передавати частково. Якщо під час оновлення передати Partner, треба також передати Contract, і навпаки.
Пошук товару виконується спочатку за Article, якщо він переданий, потім за Name. InformationSource, PaymentOption і ShippingOption у strict: false передаються як об’єкти з полем Name; значення мають існувати у відповідних довідниках.
Основні вкладені поля для strict: false
| Об’єкт | Поля |
|---|---|
Partner | Name, Phone, Email |
Contract | Name, Currency |
Status | Name |
PriceType | Name, Currency |
DiscountType | Name, Percent |
Store | Name |
InformationSource | Name |
PaymentOption | Name |
ShippingOption | Name |
Company | Id |
BankAccount | Id |
CashAccount | Id |
Rows[].Product | Name, Article, Unit, Kind (P або S) |
Rows[] | Product, Price, Qty, Sum, PriceWithoutDiscount, PercentDiscount, RowNo |
Формат відповіді
| Поле | Опис |
|---|---|
success | true або false. |
data | Масив ідентифікаторів створених або оновлених замовлень. Для strict: false також повертається NumberOrderSite. |
error | Код і текст помилки, якщо success = false. |
Приклад створення у strict: true
{
"strict": true,
"array": [
{
"Date": "2026-03-11",
"Sum": 1000,
"Partner": 53869,
"Status": 1397,
"Contract": 54065,
"PriceType": 610,
"Company": 112,
"Rows": [
{
"Product": 89272,
"Price": 500,
"Qty": 2,
"Sum": 1000,
"RowNo": 1
}
]
}
]
}
Приклад створення у strict: false
{
"strict": false,
"search-partner-by": "Email",
"array": [
{
"NumberOrderSite": "api_order_5",
"Date": "2026-03-11",
"Sum": 1000,
"Partner": {
"Name": "Partner 1",
"Email": "[email protected]"
},
"Contract": {
"Name": "Основний контракт",
"Currency": "UAH"
},
"Status": {
"Name": "Новий"
},
"PriceType": {
"Name": "Ціна продажу",
"Currency": "UAH"
},
"Rows": [
{
"Product": {
"Name": "Товар 1",
"Article": "SKU-1",
"Unit": "шт",
"Kind": "P"
},
"Price": 500,
"Qty": 2,
"Sum": 1000,
"PriceWithoutDiscount": 500,
"PercentDiscount": 0,
"RowNo": 1
}
]
}
]
}