Integracje / ERP / QuickBooks Online
Poradnik integracji QuickBooks Online ze SkyPlanner APS do planowania produkcji
Ten poradnik integracji QuickBooks Online pokazuje doradcom ProAdvisors, konsultantom i zespołom IT, jak połączyć QuickBooks Online ze SkyPlanner APS. SkyPlanner wymienia dane z QuickBooks Online w obu kierunkach za pośrednictwem Accounting API firmy Intuit:
- Do SkyPlanner trafiają dane klientów, pozycje kartoteki wraz ze stanami magazynowymi, zaakceptowane oferty, otwarte zamówienia zakupu i dane pracowników.
- Planowany termin zakończenia jest zapisywany z powrotem jako data wysyłki w każdej ofercie.
- Ukończone zlecenia wracają jako faktury powiązane z ofertami, zarejestrowane godziny — jako wpisy czasu pracy, a zmiany stanów magazynowych — jako korekty zapasów.
- Webhooki QuickBooks informują o zmianach w danych źródłowych, a webhooki SkyPlanner na bieżąco przekazują zmiany harmonogramu.
QuickBooks Online to oprogramowanie księgowe, dlatego nie przechowuje danych maszyn, marszrut technologicznych ani zleceń produkcyjnych. Stanowiska robocze, etapy procesu, zmiany robocze i czasy przezbrojeń są definiowane w SkyPlanner. Podczas wdrożenia zespół SkyPlanner konfiguruje integrację z firmą w QuickBooks i zapewnia jej wsparcie po uruchomieniu. Ten poradnik jest przeznaczony dla partnerów i programistów, którzy chcą uczestniczyć w tych pracach lub samodzielnie tworzyć rozwiązania oparte na udokumentowanym REST API SkyPlanner (dokumentacja API).
Accounting API w QuickBooks Online
QuickBooks Online to jeden produkt chmurowy o architekturze wielodostępnej — każda firma korzysta z tego samego Accounting API. Jest to REST API w wersji v3. Każde wywołanie wskazuje jedną firmę za pomocą jej identyfikatora realm ID: https://quickbooks.api.intuit.com/v3/company/{realmId}/{entity}. Do testów służy osobny host środowiska sandbox. Żądania i odpowiedzi mają format JSON, a parametr minorversion określa wersję schematu. (źródło)
Encje potrzebne do harmonogramowania:
- Dane podstawowe:
Customer,Item(Inventory, NonInventory, Service),Employee,Vendor. - Zapotrzebowanie:
Estimate(TxnStatus Accepted, pozycje,ShipDate), a w zakładach wystawiających dokumenty sprzedaży przed realizacją —InvoicelubSalesReceipt. - Zaopatrzenie:
PurchaseOrder(POStatus Open, pozycje z towarami i ilościami),Bill. - Zapis zwrotny:
Estimate,Invoice,TimeActivity,InventoryAdjustment.
Dane są odczytywane przez endpoint zapytań, na przykład select * from Estimate where MetaData.LastUpdatedTime > '2026-10-01'. Aktualizacje mogą być częściowe, więc SkyPlanner wysyła tylko zmieniane pola. Accounting API nie udostępnia encji zamówienia sprzedaży, marszruty technologicznej, gniazda produkcyjnego ani zlecenia produkcyjnego.
Uwierzytelnianie i limity
Accounting API korzysta z OAuth 2.0, przepływu authorization code i zakresu com.intuit.quickbooks.accounting. Administrator QuickBooks loguje się raz i zatwierdza dostęp. Aplikacja otrzymuje następnie krótkotrwały token dostępu, przesyłany jako Authorization: Bearer, oraz token odświeżania, który jest wymieniany przy każdym odświeżeniu. (źródło)
Intuit ogranicza liczbę wywołań dla każdej firmy na minutę i na sekundę. Po przekroczeniu limitu przez aplikację Intuit zwraca HTTP 429. W ramach App Partner Program Intuit zlicza też niektóre wywołania API w ujęciu miesięcznym, zależnie od poziomu partnera. Oba mechanizmy opisano na stronie Intuit poświęconej limitom i ograniczaniu wywołań. Dzięki webhookom, przechwytywaniu zmian danych i aktualizacjom częściowym integracja obsługująca harmonogramowanie nie zbliża się do tych limitów.
Po stronie SkyPlanner REST API uwierzytelnia żądania za pomocą tokenu API w nagłówku Authorization-Token (SkyPlanner Settings > API). Dokumentacja jest dostępna w Swagger/OpenAPI. Samouczek integracji prowadzi przez pierwsze wywołania.
Webhooki i przechwytywanie zmian danych
Webhooki QuickBooks powiadamiają aplikację o zmianach danych w połączonej firmie. „Webhooks automatically notify you whenever data changes in your end-user’s QuickBooks Online company files.” (Webhooki automatycznie powiadamiają o każdej zmianie danych firmy użytkownika końcowego w QuickBooks Online). (źródło) Encje istotne dla harmonogramowania:
Customer,Item,EmployeeEstimate,Invoice,SalesReceiptPurchaseOrder,BillTimeActivity
Dostępne operacje obejmują Create, Update, Delete, Merge i Void. Powiadomienie zawiera nazwę encji, ID, operację i czas ostatniej aktualizacji, a nie cały rekord. Odbiorca pobiera rekord po otrzymaniu powiadomienia.
Mechanizm przechwytywania zmian danych (GET /cdc?entities=...&changedSince=...) zwraca wszystkie zmiany od wskazanego znacznika czasu, ale tylko z ograniczonego okresu wstecz. SkyPlanner wykorzystuje go do nocnego uzgadniania danych, dzięki czemu dane zlecenia nigdy nie pozostają nieaktualne wskutek pominięcia webhooka. Mechanizm ten nie obejmuje TimeActivity, dlatego te dane są uzgadniane za pomocą zapytania. (źródło)
Mapowanie danych
| Obiekt w QuickBooks Online | Obiekt SkyPlanner | Kierunek | Częstotliwość |
|---|---|---|---|
Customer | Klient (external_identifier, delivery_priority) | QuickBooks → SkyPlanner | Import początkowy, następnie po otrzymaniu webhooka |
Item (Inventory, NonInventory, Service) z QtyOnHand | Produkty i materiały, stany magazynowe | QuickBooks → SkyPlanner | Import początkowy, następnie po otrzymaniu webhooka |
Estimate (Accepted), pozycje, ShipDate | Zlecenie (external_order_number, delivery_date), operacje dla każdej pozycji | QuickBooks → SkyPlanner | W czasie rzeczywistym przez webhook |
Invoice lub SalesReceipt (zakłady wystawiające dokumenty sprzedaży przed realizacją) | Zlecenie i operacje | QuickBooks → SkyPlanner | W czasie rzeczywistym przez webhook |
PurchaseOrder (Open), pozycje | Oczekiwane dostawy materiałów (zamówienia zakupu produktów) | QuickBooks → SkyPlanner | W czasie rzeczywistym przez webhook |
Employee | Personel | QuickBooks → SkyPlanner | Import początkowy, następnie po otrzymaniu webhooka |
Estimate.ShipDate (aktualizacja częściowa) | Planowany termin zakończenia | SkyPlanner → QuickBooks | Po zmianie harmonogramu |
Invoice z LinkedTxn wskazującym na Estimate | Ukończone zlecenie | SkyPlanner → QuickBooks | Po ukończeniu zlecenia |
TimeActivity (EmployeeRef, CustomerRef, ItemRef, godziny) | Mobile Confirmations, wpisy czasu pracy | SkyPlanner → QuickBooks | Na bieżąco przy rejestrowaniu pracy |
InventoryAdjustment | Przyjęcia wyrobów gotowych, zużycie materiałów | SkyPlanner → QuickBooks | Po ukończeniu zlecenia |
| Brak w QuickBooks | Stanowiska robocze, etapy procesu, zmiany robocze, nieobecności, macierz czasów przezbrojeń, narzędzia, liczby operatorów, alternatywne stanowiska robocze | Dane utrzymywane w SkyPlanner | Konfiguracja podczas wdrożenia |
Schematy integracji
1. Początkowy import danych podstawowych. Pobierz kolejno strony wyników z klientami, pozycjami kartoteki, pracownikami i otwartymi zamówieniami zakupu przez endpoint zapytań. Utwórz klientów w SkyPlanner, zapisując ID z QuickBooks w polu external_identifier, a produkty i materiały — z ID pozycji jako kluczem. Następnie zdefiniuj dane, których QuickBooks nie przechowuje: stanowiska robocze, etapy procesu dla poszczególnych produktów, zmiany robocze, urlopy i czasy przezbrojeń. Etapy procesu najszybciej wprowadzisz przez import z pliku CSV lub arkusza Excel.
2. Synchronizacja zleceń. Zasubskrybuj webhooki Estimate, Invoice, Item i PurchaseOrder. Gdy oferta otrzyma status Accepted, SkyPlanner odczytuje ją i tworzy zlecenie, zapisując numer oferty w polu external_order_number, a datę wysyłki w delivery_date. Dla każdej pozycji powstają operacje odpowiadające etapom procesu danego produktu. Pozycje otwartych zamówień zakupu stają się oczekiwanymi dostawami materiałów, więc operacje czekają na dostawę. Nocne przechwytywanie zmian danych wykrywa każde pominięte zdarzenie.
3. Zapis zwrotny harmonogramu i danych o ukończeniu zleceń. Cztery wywołania przekazują wyniki do QuickBooks:
- Częściowa aktualizacja
Estimatezapisuje poleShipDate, dzięki czemu termin obiecany klientowi w QuickBooks jest zgodny z planem. - Po ukończeniu zlecenia POST
/invoicetworzy fakturę z pozycjami oferty i powiązaniemLinkedTxndo tej oferty. Intuit dopuszcza powiązanie tylko jednej faktury z daną ofertą, dlatego sposób obsługi dostaw częściowych jest uzgadniany podczas określania zakresu. - POST
/timeactivityzapisuje zarejestrowane godziny każdego operatora, przypisując je do pracownika, klienta i pozycji usługowej. Godziny podlegające rozliczeniu można następnie dodać do faktury w QuickBooks. - POST
/inventoryadjustmentzwiększa stan wyrobów gotowych i zmniejsza stan zużytych materiałów. Intuit udostępnia tę encję w QuickBooks Online Plus i Advanced w USA. (źródło)
4. Potwierdzenia z hali produkcyjnej. Operatorzy rejestrują pracę za pomocą SkyPlanner Mobile Confirmations, Production Timer lub Quick Log Mode. Postęp prac natychmiast aktualizuje harmonogram, a Autopilot ponownie planuje pozostałe operacje. Godziny trafiają do QuickBooks jako wpisy czasu pracy. Jeśli zakład nadal korzysta z QuickBooks Time do naliczania wynagrodzeń, podczas określania zakresu wybierz jeden kanał przekazywania czasu realizacji operacji.
5. Odpowiedzialność za dane i reguły rozstrzygania konfliktów. Zapisz je przed uruchomieniem integracji:
| Dane | System nadrzędny |
|---|---|
| Klienci, pozycje kartoteki, ceny, oferty, zamówienia zakupu, faktury, księgowość | QuickBooks Online |
| Stanowiska robocze, etapy procesu, zmiany robocze, nieobecności, macierz czasów przezbrojeń, narzędzia, alternatywne zasoby | SkyPlanner |
| Kolejność operacji, terminy rozpoczęcia i zakończenia, stanowisko robocze przypisane do każdej operacji | SkyPlanner |
| Data wysyłki w ofercie | SkyPlanner, z zapisem do QuickBooks |
| Faktura za zrealizowane zlecenia, godziny pracy przy operacjach, korekta stanu wyrobów gotowych | SkyPlanner tworzy dane, a po zaksięgowaniu systemem nadrzędnym jest QuickBooks |
Typowe etapy projektu
Wdrożenie zwykle kończy się w ciągu kilku tygodni od rozpoczęcia onboardingu. Wcześniej możesz skorzystać z 30-dniowego bezpłatnego okresu próbnego na własnych danych: klientach, produktach i otwartych ofertach wyeksportowanych z QuickBooks.
Sam projekt obejmuje:
- Połączenie. Administrator QuickBooks zatwierdza dostęp dla SkyPlanner na ekranie OAuth 2.0 firmy Intuit.
- Obiekt określający zapotrzebowanie. Ustal, czy produkcję mają uruchamiać zaakceptowane oferty, faktury czy dowody sprzedaży.
- Mapowanie. Ustal tabelę mapowania, klucze pozycji, pozycje usługowe do rozliczania robocizny oraz zasady określające, który system jest nadrzędny dla poszczególnych danych.
- Początkowy import. Klienci, pozycje, pracownicy i otwarte zamówienia zakupu.
- Model produkcji. Stanowiska robocze, etapy procesu dla każdego produktu, zmiany, macierz czasów przezbrojeń, narzędzia i liczby operatorów w SkyPlanner.
- Synchronizacja zdarzeń. Webhooki dla ofert, pozycji i zamówień zakupu oraz nocne przechwytywanie zmian danych.
- Zapis zwrotny. Najpierw data wysyłki, a następnie faktury, wpisy czasu pracy i korekty stanów magazynowych.
- Testy równoległe i uruchomienie produkcyjne. Porównaj terminy ze SkyPlanner z obecnym planem. Zleć księgowemu sprawdzenie pierwszych faktur i korekt, a następnie włącz zapis zwrotny.
Co uwzględnić przy integracji z QuickBooks Online
- Zamówienia sprzedaży pozostają w interfejsie QuickBooks. W planach Plus i Advanced zamówienia sprzedaży są dostępne w aplikacji, natomiast integracja odczytuje zaakceptowane oferty lub faktury, jeśli zakład wystawia je przed rozpoczęciem produkcji. Ustal jeden sposób uruchamiania produkcji, aby każde zamówienie trafiało do systemu tą samą drogą.
- QuickBooks nie zawiera marszrut technologicznych. Etapy procesu dla poszczególnych produktów przechowuj w SkyPlanner i powiąż je kluczem z pozycją w QuickBooks.
- Z ofertą można powiązać jedną fakturę. Dostawy częściowe wymagają ustalenia zasady, na przykład jednej oferty na każdą dostawę.
- Korekty stanów magazynowych zależą od planu i regionu. W USA obsługują je plany Plus i Advanced. W pozostałych regionach ustal z księgowym, jak wyroby gotowe mają trafiać do QuickBooks.
- Zlecenia produkcyjne w Intuit Enterprise Suite. Jeśli z nich korzystasz, ustal, który system jest nadrzędny dla realizacji produkcji i rezerwacji komponentów.
- Zestawy są dostępne przez API tylko do odczytu. Pozycji grupowych nie można tworzyć przez API, dlatego zestawy utrzymuj w QuickBooks.
- Rotacja tokenów odświeżania. Po każdym odświeżeniu zapisz najnowszy token odświeżania. W przeciwnym razie połączenie zostanie zerwane.
Integracja z QuickBooks Online: kto ją konfiguruje i zapewnia wsparcie
Prace obejmują pozycje, oferty, zamówienia zakupu oraz sposób przekazywania zrealizowanych zleceń do fakturowania. Integracja uzupełnia to, czego nie przechowuje QuickBooks: stanowiska robocze, etapy procesu, zmiany, macierz czasów przezbrojeń, narzędzia, liczby operatorów i zasoby alternatywne.
- Zespół SkyPlanner konfiguruje integrację podczas onboardingu i zapewnia wsparcie po uruchomieniu produkcyjnym. Każdy zakład inaczej konfiguruje pozycje, oferty i zapasy w QuickBooks. Na tym etapie wykorzystujemy wiedzę o tych ustawieniach.
- Integrację może zbudować Twój QuickBooks ProAdvisor lub partner integracyjny. SkyPlanner udostępnia REST API, dokumentację Swagger/OpenAPI i webhooki.
- Twoi programiści mogą zbudować własną integrację za pomocą tokenu API. Do rozpoczęcia wystarczy token API, a zespół SkyPlanner pomaga w razie potrzeby. Dokumentacja produktu, w tym informacje o zamówieniach zakupu oraz API produktów i materiałów, znajduje się w dokumentacji SkyPlanner.
Cena SkyPlanner zaczyna się od 199 € miesięcznie i obejmuje 5 stanowisk roboczych, z rozliczeniem miesięcznym. Integrację wyceniamy z góry, wraz z planem, zgodnie z Twoim procesem i potrzebami. Dzięki temu znasz pełny koszt przed rozpoczęciem. Sprawdź cennik i funkcje, a o możliwościach samego QuickBooks przeczytaj w artykule Czy QuickBooks obsługuje harmonogramowanie produkcji? Ogólne informacje znajdziesz na stronie QuickBooks Online, a pozostałe systemy na stronie wszystkich integracji.
Opinie firm produkcyjnych o SkyPlanner
2 hoszczędności co tydzień
„Dzięki SkyPlanner przeszliśmy od planowania produkcji w arkuszach Excel do optymalizacji produkcji w czasie rzeczywistym.”
Kalle Kalliomäki, specjalista ds. łańcucha dostaw
UTU · Rozdzielnice i aparatura rozdzielcza
Planowanie produkcji pozwala zaoszczędzić 2 godziny pracy tygodniowo, a nowa kolejka zadań trafia na linię w ciągu kilku sekund.
+90%wydajności produkcji
„Wydajność produkcji wzrosła o 90%.”
Abdul Rucyinga, szef działu IT
Laboratory & Allied · Produkcja farmaceutyczna
Wydajność produkcji wzrosła o 90%, a przygotowanie zoptymalizowanego planu na trzy miesiące dla wszystkich stanowisk roboczych zajmuje mniej niż 30 minut.
100%terminowości dostaw od 2021 roku
„SkyPlanner zapewnia nam wgląd w zdolności produkcyjne i sprawia, że planowanie staje się przewidywalne.”
Dan Berglund, COO/CFO
Opes Corporation · Produkcja chemiczna i spożywcza
Terminowość dostaw wynosi 100% przez cały okres korzystania ze SkyPlanner, od 2021 roku.
1 000+zleceń produkcyjnych harmonogramowanych automatycznie
„Mamy teraz zupełnie inną kontrolę nad produkcją, a nasza wiedza o zdolnościach produkcyjnych jest na całkiem innym poziomie.”
Hannu Ryynänen, prezes
Mamec · Mieszalniki przemysłowe, pompy i zaawansowana technologicznie produkcja kontraktowa
Tysiące zleceń produkcyjnych są harmonogramowane automatycznie, a cała organizacja ma wgląd w produkcję w czasie rzeczywistym.
Najczęściej zadawane pytania
Czy QuickBooks Online udostępnia API do danych produkcyjnych?
QuickBooks Online udostępnia Accounting API — REST API z OAuth 2.0. Obejmuje ono klientów, pozycje, oferty, faktury, zamówienia zakupu, wpisy czasu pracy i korekty stanów magazynowych. Dane produkcyjne, takie jak stanowiska robocze i etapy procesu, są przechowywane w SkyPlanner.
Czy SkyPlanner może zapisywać dane zwrotnie w QuickBooks Online?
Tak. SkyPlanner zapisuje planowaną datę wysyłki w każdej ofercie, po zakończeniu zlecenia tworzy fakturę powiązaną z ofertą i przekazuje zarejestrowane godziny jako wpisy czasu pracy. W amerykańskich planach Plus i Advanced rejestruje też wyroby gotowe i zużyte materiały jako korekty stanów magazynowych.
Czy QuickBooks Online przesyła zmiany w czasie rzeczywistym?
Tak. Webhooki QuickBooks obejmują klientów, pozycje, oferty, faktury, zamówienia zakupu i wpisy czasu pracy. SkyPlanner odczytuje każdy zmieniony rekord, a co noc uzgadnia dane za pomocą mechanizmu przechwytywania zmian.
Skąd pochodzą marszruty technologiczne i maszyny, skoro nie ma ich w QuickBooks?
Ze SkyPlanner. Stanowiska robocze, etapy procesu dla poszczególnych produktów, zmiany i czasy przezbrojeń konfigurujesz raz — ręcznie lub przez import pliku CSV albo Excel. Każdy etap procesu jest powiązany z pozycją w QuickBooks, dzięki czemu harmonogram dla nowych ofert powstaje automatycznie.
Czy możemy przetestować SkyPlanner przed zbudowaniem integracji?
Tak. Bezpłatny 30-dniowy okres próbny obejmuje do 20 stanowisk roboczych i umożliwia import danych z QuickBooks w formacie CSV lub Excel. Karta kredytowa nie jest wymagana. Rozpocznij okres próbny lub porozmawiaj z działem sprzedaży, aby określić zakres integracji.