Інтеграції / ERP / QuickBooks Online
Посібник з інтеграції QuickBooks Online для календарного планування виробництва у SkyPlanner APS
Цей посібник пояснює фахівцям ProAdvisors, консультантам та ІТ-командам, як підключити QuickBooks Online до SkyPlanner APS. SkyPlanner обмінюється даними з QuickBooks Online в обох напрямках через Accounting API від Intuit:
- До SkyPlanner надходять клієнти, номенклатура із залишками на складі, прийняті комерційні пропозиції, відкриті замовлення на закупівлю та працівники.
- Планова дата завершення записується назад як дата відвантаження в кожній комерційній пропозиції.
- Виконані замовлення повертаються як рахунки, пов’язані з відповідними комерційними пропозиціями, відпрацьовані години — як записи обліку часу, а зміни складських залишків — як коригування запасів.
- Вебхуки QuickBooks повідомляють про зміни вхідних даних, а вебхуки SkyPlanner передають зміни розкладу одразу після їх внесення.
QuickBooks Online — це бухгалтерське програмне забезпечення, тому в ньому немає верстатів, технологічних маршрутів чи виробничих замовлень. Робочі центри, етапи процесу, зміни та час налагодження зберігаються у SkyPlanner. Команда SkyPlanner налаштовує інтеграцію з вашою компанією в QuickBooks під час впровадження та підтримує її після запуску. Цей посібник призначений для партнерів і розробників, які хочуть долучитися до інтеграції або самостійно створювати рішення на основі задокументованого REST API SkyPlanner (довідник API).
Accounting API QuickBooks Online
QuickBooks Online — це один хмарний продукт зі спільною інфраструктурою для багатьох компаній, і всі компанії використовують той самий Accounting API. Це REST API версії v3. Кожен виклик звертається до однієї компанії за її realm ID: https://quickbooks.api.intuit.com/v3/company/{realmId}/{entity}. Для тестування передбачено окремий хост пісочниці. Запити та відповіді мають формат JSON, а параметр minorversion визначає версію схеми. (Джерело)
Сутності, потрібні для календарного планування:
- Основні дані:
Customer,Item(Inventory, NonInventory, Service),Employee,Vendor. - Попит:
Estimate(TxnStatus Accepted, рядки,ShipDate), а для підприємств, що спочатку виставляють рахунок, —InvoiceабоSalesReceipt. - Постачання:
PurchaseOrder(POStatus Open, рядки з номенклатурою та кількістю),Bill. - Зворотний запис:
Estimate,Invoice,TimeActivity,InventoryAdjustment.
Для читання даних використовується кінцева точка query, наприклад select * from Estimate where MetaData.LastUpdatedTime > '2026-10-01'. Підтримуються часткові оновлення, тому SkyPlanner надсилає лише змінені поля. В Accounting API немає сутностей для замовлень на продаж, технологічних маршрутів, робочих центрів чи виробничих замовлень.
Автентифікація та обмеження
Accounting API використовує OAuth 2.0 зі сценарієм отримання коду авторизації та областю доступу com.intuit.quickbooks.accounting. Адміністратор QuickBooks один раз входить у систему й надає дозвіл на доступ. Після цього застосунок зберігає короткостроковий токен доступу, який передається як Authorization: Bearer, і токен оновлення, що замінюється при кожному оновленні. (Джерело)
Intuit обмежує кількість викликів для кожної компанії за хвилину та за секунду й повертає HTTP 429, якщо застосунок перевищує ліміт. Програма Intuit App Partner Program також встановлює місячні квоти для деяких викликів API залежно від рівня партнера. Обидва види обмежень описано на сторінці лімітів Intuit. Завдяки вебхукам, відстеженню змін даних і частковим оновленням кількість викликів інтеграції для календарного планування залишається значно нижчою за ці ліміти.
На боці SkyPlanner автентифікація REST API виконується за допомогою токена API в заголовку Authorization-Token (SkyPlanner Settings > API). API задокументовано у Swagger/OpenAPI. У посібнику з інтеграції покроково описано перші виклики.
Вебхуки та відстеження змін даних
Вебхуки QuickBooks сповіщають застосунок про зміни даних у підключеній компанії. “Webhooks automatically notify you whenever data changes in your end-user’s QuickBooks Online company files.” (Вебхуки автоматично сповіщають вас про будь-які зміни даних у файлах компанії кінцевого користувача в QuickBooks Online.) (Джерело) Сутності, важливі для календарного планування:
Customer,Item,EmployeeEstimate,Invoice,SalesReceiptPurchaseOrder,BillTimeActivity
Підтримуються дії Create, Update, Delete, Merge та Void. Сповіщення містить назву сутності, ID, дію та час останнього оновлення, а не весь запис. Отримувач зчитує сам запис після отримання сповіщення.
Механізм відстеження змін даних (GET /cdc?entities=...&changedSince=...) повертає всі зміни після вказаної часової позначки, але лише за обмежений період у недавньому минулому. SkyPlanner використовує його для нічної звірки, тому навіть у разі пропущеного вебхука дані замовлення завжди актуалізуються. TimeActivity не охоплюється цим механізмом, тому ці записи звіряються за допомогою запиту. (Джерело)
Зіставлення даних
| Об’єкт QuickBooks Online | Об’єкт SkyPlanner | Напрямок | Періодичність |
|---|---|---|---|
Customer | Клієнт (external_identifier, delivery_priority) | QuickBooks → SkyPlanner | Початкове завантаження, далі — за вебхуком |
Item (Inventory, NonInventory, Service) з QtyOnHand | Продукція та матеріали, складські залишки | QuickBooks → SkyPlanner | Початкове завантаження, далі — за вебхуком |
Estimate (Accepted), рядки, ShipDate | Замовлення (external_order_number, delivery_date), виробничі завдання для кожного рядка | QuickBooks → SkyPlanner | У реальному часі через вебхук |
Invoice або SalesReceipt (для підприємств, що спочатку виставляють рахунок) | Замовлення та виробничі завдання | QuickBooks → SkyPlanner | У реальному часі через вебхук |
PurchaseOrder (Open), рядки | Очікувані надходження матеріалів (замовлення на закупівлю продукції) | QuickBooks → SkyPlanner | У реальному часі через вебхук |
Employee | Персонал | QuickBooks → SkyPlanner | Початкове завантаження, далі — за вебхуком |
Estimate.ShipDate (часткове оновлення) | Планова дата завершення | SkyPlanner → QuickBooks | У разі зміни розкладу |
Invoice з LinkedTxn, що пов’язує його з Estimate | Виконане замовлення | SkyPlanner → QuickBooks | Після виконання замовлення |
TimeActivity (EmployeeRef, CustomerRef, ItemRef, години) | Mobile Confirmations, записи обліку часу | SkyPlanner → QuickBooks | У міру реєстрації виконаної роботи |
InventoryAdjustment | Надходження готової продукції, витрата матеріалів | SkyPlanner → QuickBooks | Після виконання замовлення |
| Відсутні в QuickBooks | Робочі центри, етапи процесу, зміни, відсутності працівників, матриця часу переналагодження, інструменти, кількість операторів, альтернативні робочі центри | Ведуться у SkyPlanner | Налаштовуються під час впровадження |
Схеми інтеграції
1. Початкове завантаження основних даних. Посторінково отримайте клієнтів, номенклатуру, працівників і відкриті замовлення на закупівлю через кінцеву точку query. Створіть клієнтів у SkyPlanner, використовуючи ID з QuickBooks як external_identifier, а продукцію та матеріали — з ID номенклатури як ключем. Далі додайте те, чого немає в QuickBooks: робочі центри, етапи процесу для кожного продукту, зміни, відпустки та час налагодження. Найшвидший спосіб завантажити етапи процесу — імпорт із CSV або Excel.
2. Синхронізація замовлень. Підпишіться на вебхуки Estimate, Invoice, Item та PurchaseOrder. Коли комерційна пропозиція отримує статус Accepted, SkyPlanner зчитує її та створює замовлення: номер пропозиції записується в external_order_number, а дата відвантаження — у delivery_date. Для кожного рядка створюються виробничі завдання відповідно до етапів процесу виготовлення продукту. Рядки відкритих замовлень на закупівлю перетворюються на очікувані надходження матеріалів, тому виробничі завдання чекають на поставку. Нічне відстеження змін даних виявляє всі пропущені події.
3. Зворотний запис даних про розклад і виконання. Чотири виклики передають результати до QuickBooks:
- Часткове оновлення
EstimateзаписуєShipDate, щоб обіцяна дата в QuickBooks відповідала плану. - Після виконання замовлення POST
/invoiceстворює рахунок із рядками комерційної пропозиції таLinkedTxn, що пов’язує його з нею. Intuit дозволяє пов’язати з кожною пропозицією лише один рахунок, тому порядок часткових поставок узгоджують під час визначення обсягу проєкту. - POST
/timeactivityзаписує відпрацьовані години кожного оператора з прив’язкою до працівника, клієнта та позиції послуги. Після цього години, що підлягають оплаті клієнтом, можна додати до рахунку в QuickBooks. - POST
/inventoryadjustmentзбільшує залишки готової продукції та зменшує залишки використаних матеріалів. Intuit надає цю сутність у QuickBooks Online Plus та Advanced у США. (Джерело)
4. Підтвердження виконання в цеху. Оператори реєструють виконану роботу через SkyPlanner Mobile Confirmations, Production Timer або Quick Log Mode. Дані про виконання відразу оновлюють розклад, а Autopilot переплановує решту робіт. Години надходять до QuickBooks як записи обліку часу. Якщо підприємство й надалі використовує QuickBooks Time для нарахування зарплати, під час визначення обсягу проєкту виберіть один канал обліку часу виробничих завдань.
5. Правила відповідальності за дані та вирішення конфліктів. Зафіксуйте їх до запуску:
| Дані | Відповідальна система |
|---|---|
| Клієнти, номенклатура, ціни, комерційні пропозиції, замовлення на закупівлю, рахунки, бухгалтерський облік | QuickBooks Online |
| Робочі центри, етапи процесу, зміни, відсутності працівників, матриця часу переналагодження, інструменти, альтернативні ресурси | SkyPlanner |
| Послідовність виробничих завдань, час початку й завершення, робочий центр для кожного завдання | SkyPlanner |
| Дата відвантаження в комерційній пропозиції | SkyPlanner, із записом у QuickBooks |
| Рахунок за виконані замовлення, години роботи над виробничими завданнями, коригування запасів готової продукції | Створює SkyPlanner, після проведення за дані відповідає QuickBooks |
Типові етапи проєкту
Впровадження зазвичай завершується протягом кількох тижнів після початку підключення. Перед цим ви можете протягом 30 днів безкоштовно випробувати систему на власних даних — експортуйте з QuickBooks клієнтів, товари та відкриті комерційні пропозиції.
Сам проєкт охоплює такі етапи:
- Підключення. Адміністратор QuickBooks надає доступ SkyPlanner на екрані авторизації Intuit OAuth 2.0.
- Об’єкт попиту. Узгодьте, що запускатиме виробництво: прийняті комерційні пропозиції, рахунки чи квитанції про продаж.
- Зіставлення даних. Зафіксуйте таблицю відповідності, ключі номенклатури, позиції послуг для обліку праці та правила відповідальності за дані.
- Початкове завантаження. Клієнти, номенклатура, працівники та відкриті замовлення на закупівлю.
- Виробнича модель. Робочі центри, технологічні операції для кожного виробу, зміни, матриця часу переналагодження, інструменти та кількість операторів у SkyPlanner.
- Синхронізація за подіями. Вебхуки для комерційних пропозицій, номенклатури та замовлень на закупівлю, а також щонічне відстеження змін даних.
- Зворотний запис. Спочатку дата відвантаження, потім рахунки, записи робочого часу та коригування запасів.
- Паралельне тестування та запуск. Порівняйте дати у SkyPlanner із поточним планом, доручіть бухгалтеру перевірити перші рахунки й коригування, а потім увімкніть зворотний запис.
Що врахувати під час інтеграції з QuickBooks Online
- Замовлення на продаж залишаються в інтерфейсі QuickBooks. У Plus і Advanced вони доступні в застосунку, а інтеграція зчитує прийняті комерційні пропозиції або рахунки, якщо підприємство спочатку виставляє рахунок. Узгодьте одну подію запуску, щоб усі замовлення надходили однаково.
- У QuickBooks немає технологічних маршрутів. Зберігайте технологічні операції для кожного виробу в SkyPlanner, прив’язавши їх до відповідної позиції номенклатури QuickBooks.
- До однієї комерційної пропозиції прив’язується один рахунок. Для часткових поставок потрібне окреме правило — наприклад, одна комерційна пропозиція на кожну поставку.
- Коригування запасів залежить від тарифу та регіону. У США його підтримують Plus і Advanced. В інших регіонах узгодьте з бухгалтером, як відображати готову продукцію в QuickBooks.
- Виробничі замовлення Intuit Enterprise Suite. Якщо ви їх використовуєте, визначте, яка система відповідатиме за складання та резервування компонентів.
- Через API комплекти доступні лише для читання. Створювати позиції типу Group через API неможливо, тому ведіть комплекти в QuickBooks.
- Ротація токена оновлення. Після кожного оновлення зберігайте найновіший токен оновлення, інакше з’єднання перерветься.
Хто налаштовує та підтримує інтеграцію з QuickBooks Online
Робота охоплює вашу номенклатуру, комерційні пропозиції, замовлення на закупівлю та передачу виконаних робіт на виставлення рахунків. До системи додають дані, яких немає в QuickBooks: робочі центри, технологічні операції, зміни, матрицю часу переналагодження, інструменти, кількість операторів та альтернативні ресурси.
- Команда SkyPlanner налаштовує інтеграцію під час підключення та підтримує її після запуску. Кожне підприємство по-своєму налаштовує номенклатуру, комерційні пропозиції та запаси в QuickBooks. Ці особливості враховують під час налаштування інтеграції.
- Інтеграцію може розробити ваш QuickBooks ProAdvisor або партнер з інтеграції. SkyPlanner надає REST API, документацію Swagger/OpenAPI та вебхуки.
- Ваші розробники можуть створити власне рішення за допомогою токена API. Для початку достатньо токена API, а команда SkyPlanner допоможе за потреби. Документація продукту, зокрема щодо замовлень на закупівлю та API для виробів і матеріалів, доступна в документації SkyPlanner.
Вартість SkyPlanner — від 199 € на місяць із щомісячною оплатою; включено 5 робочих центрів. Вартість інтеграції та тарифного плану розраховують заздалегідь з урахуванням ваших процесів і потреб, тож ви знаєте повну суму ще до початку роботи. Перегляньте ціни, функції та дізнайтеся про власні можливості QuickBooks у статті «Чи є в QuickBooks календарне планування виробництва?». Загальний огляд наведено на сторінці QuickBooks Online, а інші системи — у розділі всіх інтеграцій.
Відгуки виробників про SkyPlanner
2 годекономії щотижня
«Завдяки SkyPlanner ми перейшли від планування виробництва в таблицях Excel до його оптимізації в реальному часі».
Kalle Kalliomäki, фахівець із ланцюга постачання
UTU · Електрощити та розподільні пристрої
Планування виробництва заощаджує 2 години робочого часу щотижня, а нова черга завдань надходить на лінію за лічені секунди.
+90%до ефективності виробництва
«Ефективність виробництва зросла на 90%».
Abdul Rucyinga, керівник ІТ-відділу
Laboratory & Allied · Фармацевтичне виробництво
Ефективність виробництва зросла на 90%, а створення оптимізованого плану на три місяці для всіх робочих центрів займає менш ніж 30 хвилин.
100%надійності поставок із 2021 року
«SkyPlanner дає нам чітке уявлення про виробничі потужності та робить планування передбачуваним».
Dan Berglund, COO/CFO
Opes Corporation · Хімічне та харчове виробництво
Надійність поставок становить 100% протягом усього часу використання SkyPlanner — із 2021 року.
1,000+виробничих замовлень плануються автоматично
«Ми зовсім по-іншому контролюємо виробництво, а наше розуміння потужностей вийшло на цілком інший рівень».
Hannu Ryynänen, генеральний директор
Mamec · Промислові змішувачі, насоси та високотехнологічне контрактне виробництво
Тисячі виробничих замовлень плануються автоматично, а вся компанія бачить стан виробництва в реальному часі.
Поширені запитання
Чи є в QuickBooks Online API для виробничих даних?
У QuickBooks Online є Accounting API — REST API з OAuth 2.0. Він охоплює клієнтів, номенклатуру, комерційні пропозиції, рахунки, замовлення на закупівлю, записи робочого часу та коригування запасів. Виробничі дані, як-от робочі центри й технологічні операції, зберігаються у SkyPlanner.
Чи може SkyPlanner повертати дані до QuickBooks Online?
Так. SkyPlanner записує заплановану дату відвантаження в кожну комерційну пропозицію, після виконання замовлення створює пов’язаний із нею рахунок і передає відпрацьовані години як записи робочого часу. У тарифах Plus і Advanced для США він також відображає готову продукцію та використані матеріали через коригування запасів.
Чи надсилає QuickBooks Online зміни в реальному часі?
Так. Вебхуки QuickBooks охоплюють клієнтів, номенклатуру, комерційні пропозиції, рахунки, замовлення на закупівлю та записи робочого часу. SkyPlanner зчитує кожен змінений запис і щоночі звіряє дані за допомогою механізму change data capture.
Звідки беруться технологічні маршрути та верстати, якщо їх немає в QuickBooks?
Із SkyPlanner. Ви один раз налаштовуєте робочі центри, технологічні операції для кожного виробу, зміни та час налагодження — вручну або імпортом із CSV чи Excel. Кожна технологічна операція пов’язана з позицією номенклатури QuickBooks, тому нові комерційні пропозиції автоматично потрапляють у виробничий графік.
Чи можна випробувати SkyPlanner до розробки інтеграції?
Так. Під час безкоштовного 30-денного пробного періоду можна працювати з кількістю робочих центрів до 20 та імпортувати дані з QuickBooks у форматі CSV або Excel. Банківська картка не потрібна. Спробуйте безкоштовно або зверніться до відділу продажів, щоб визначити обсяг інтеграції.