Terhubung dengan sistem ERP & MES seperti

Integrasi / ERP / Xero

Panduan Integrasi Xero untuk Penjadwalan Produksi dengan SkyPlanner APS

Panduan integrasi Xero ini menjelaskan cara menghubungkan Xero ke SkyPlanner APS bagi penasihat Xero, konsultan, dan tim TI. SkyPlanner terintegrasi dua arah dengan Xero melalui Xero Accounting API dan Projects API:

  • Data kontak, barang yang stoknya dilacak beserta jumlah stok tersedia, penawaran yang telah diterima, serta pesanan pembelian beserta tanggal kedatangannya dikirim ke SkyPlanner.
  • Tanggal selesai yang direncanakan dikirim kembali sebagai catatan dalam riwayat setiap penawaran.
  • Pesanan yang telah selesai dikirim kembali sebagai draf faktur penjualan dengan rincian item dan referensi dari penawaran, lalu status penawaran berubah menjadi Invoiced.
  • Jam kerja proyek yang tercatat dikirim kembali sebagai entri waktu di Xero Projects.
  • Webhook Xero melaporkan perubahan kontak dan faktur, sedangkan webhook SkyPlanner mengirim perubahan jadwal saat perubahan terjadi.
Linimasa Gantt SkyPlanner APS yang menampilkan job terjadwal di berbagai stasiun kerja dan daftar pesanan di bawahnya.

Xero adalah perangkat lunak akuntansi, sehingga tidak menyimpan daftar kebutuhan bahan, routing, mesin, atau perintah produksi. Stasiun kerja, tahapan proses, sif, dan waktu penyiapan dikelola di SkyPlanner. Tim SkyPlanner mengonfigurasi integrasi dengan organisasi Xero Anda selama proses penyiapan awal dan memberikan dukungan setelah sistem mulai digunakan. Panduan ini ditujukan bagi penasihat dan pengembang yang ingin ikut terlibat, atau mengembangkan integrasi sendiri menggunakan REST API SkyPlanner yang telah didokumentasikan (referensi API).

Xero Accounting API

Xero merupakan satu produk cloud multitenan, dan semua organisasi menggunakan API yang sama. Accounting API adalah REST API di https://api.xero.com/api.xro/2.0/ yang menggunakan JSON atau XML. Setiap panggilan mencantumkan organisasi dalam header Xero-tenant-id. (sumber)

Endpoint yang dibutuhkan untuk penjadwalan:

  • Master data: /Contacts (pelanggan dan pemasok), /Items (Code, IsTrackedAsInventory, QuantityOnHand).
  • Permintaan: /Quotes (Status ACCEPTED, LineItems), serta /Invoices dengan Type ACCREC untuk bengkel produksi yang menerbitkan faktur terlebih dahulu.
  • Pasokan: /PurchaseOrders (DeliveryDate, ExpectedArrivalDate, LineItems dengan ItemCode).
  • Penulisan balik: /Quotes/{QuoteID}/History, /Invoices, /Quotes, serta Projects API di https://api.xero.com/projects.xro/2.0/projects/{projectId}/time.

Setiap endpoint daftar menerima header If-Modified-Since, sehingga setiap sinkronisasi hanya membaca data yang berubah. Pembuatan dan pembaruan data dilakukan secara batch. Tidak ada endpoint untuk daftar kebutuhan bahan, routing, atau perintah produksi.

Autentikasi, scope, dan batas penggunaan

Xero menggunakan OAuth 2.0. Admin Xero cukup masuk sekali, menyetujui aplikasi, lalu memilih organisasi. Aplikasi meminta offline_access agar koneksi tetap terjaga menggunakan refresh token. (sumber)

Xero sedang mengganti scope yang luas dengan scope yang lebih terperinci, dan aplikasi baru mendapatkan scope terperinci. Integrasi penjadwalan membutuhkan:

  • accounting.invoices untuk penawaran, faktur, pesanan pembelian, dan barang
  • accounting.contacts untuk pelanggan dan pemasok
  • accounting.settings.read untuk pengaturan barang
  • projects untuk entri waktu
  • offline_access

Xero membatasi panggilan per organisasi (secara bersamaan, per menit, dan per hari) serta per aplikasi. Jika aplikasi melampaui batas, Xero mengembalikan HTTP 429 dengan header Retry-After. Kuota harian dan jumlah organisasi yang dapat terhubung bergantung pada tingkat kemitraan aplikasi. Keduanya tercantum di halaman batas API Xero. Dengan webhook, pembacaan melalui If-Modified-Since, dan penulisan secara batch, penggunaan integrasi penjadwalan tetap jauh di bawah batas tersebut.

Di sisi SkyPlanner, autentikasi REST API menggunakan token API dalam header Authorization-Token (SkyPlanner Settings > API), dan dokumentasinya tersedia dalam Swagger/OpenAPI. Tutorial integrasi memandu Anda melakukan panggilan pertama.

Webhook

“Webhooks allow you to subscribe to certain events that happen in Xero.” (Webhook memungkinkan Anda berlangganan notifikasi peristiwa tertentu di Xero.) (sumber) Peristiwa yang relevan untuk penjadwalan adalah Contact dan Invoice, masing-masing dengan CREATE dan UPDATE.

Cara kerjanya:

  • Satu webhook per aplikasi mencakup semua organisasi yang terhubung.
  • Setiap pengiriman memuat array events dengan ID sumber daya dan jenis peristiwanya. Penerima kemudian membaca sumber daya tersebut.
  • Setiap pengiriman ditandatangani melalui header x-xero-signature yang dibuat dari kunci webhook aplikasi. Xero mengirim pemeriksaan “Intent to receive” sebelum mulai mengirim notifikasi.
  • Xero mencoba ulang pengiriman yang gagal dan menonaktifkan webhook yang terus gagal. Karena itu, penerima merespons dengan cepat lalu memprosesnya setelah itu.

Penawaran, barang, dan pesanan pembelian tidak memiliki peristiwa webhook. SkyPlanner membacanya melalui polling berkala dengan interval singkat menggunakan If-Modified-Since. Jika tidak ada perubahan, polling ini membutuhkan satu panggilan per entitas.

Pemetaan data

Objek Xero (endpoint)Objek SkyPlannerArahFrekuensi
Contact, IsCustomer (/Contacts)Customer (external_identifier, delivery_priority)Xero → SkyPlannerPemuatan awal, lalu saat webhook diterima
Item yang stoknya dilacak maupun tidak, dengan QuantityOnHand (/Items)Produk dan bahan, stokXero → SkyPlannerPemuatan awal, lalu melalui If-Modified-Since
Quote dengan Status ACCEPTED dan LineItems (/Quotes)Order (external_order_number, delivery_date), job per baris itemXero → SkyPlannerPolling melalui If-Modified-Since
Invoice, Type ACCREC (bengkel produksi yang menagih terlebih dahulu) (/Invoices)Order dan jobXero → SkyPlannerSecara real-time melalui webhook
PurchaseOrder dengan ExpectedArrivalDate atau DeliveryDate (/PurchaseOrders)Bahan yang akan datang (estimated_delivery_date)Xero → SkyPlannerPolling melalui If-Modified-Since
Catatan riwayat penawaran (PUT /Quotes/{QuoteID}/History)Tanggal selesai yang direncanakanSkyPlanner → XeroSaat jadwal berubah
Invoice, Type ACCREC, Status DRAFT, Reference = nomor penawaran (POST /Invoices)Pesanan yang telah selesaiSkyPlanner → XeroSaat pesanan selesai
Quote dengan Status INVOICED (POST /Quotes)Pesanan yang telah selesaiSkyPlanner → XeroSaat faktur dibuat
Entri waktu Projects (POST /projects/{projectId}/time)Mobile Confirmations, catatan waktuSkyPlanner → XeroSaat pekerjaan dicatat
Tidak tersedia di XeroStasiun kerja, tahapan proses, sif, ketidakhadiran, matriks waktu penyiapan, perkakas, jumlah operator, stasiun kerja alternatifDikelola di SkyPlannerDikonfigurasi selama penyiapan awal

Pola integrasi

1. Pemuatan awal master data. Baca kontak dan barang halaman demi halaman, lalu pesanan pembelian yang masih terbuka dan penawaran yang telah diterima. Buat pelanggan di SkyPlanner dengan ContactID Xero sebagai external_identifier, serta produk dan bahan dengan kode barang sebagai kunci. Selanjutnya, siapkan data yang tidak disimpan Xero: stasiun kerja, tahapan proses per produk, sif, cuti, dan waktu penyiapan. Impor CSV atau Excel adalah cara tercepat untuk memasukkan tahapan proses.

2. Sinkronisasi pesanan. Lakukan polling penawaran menggunakan If-Modified-Since. Saat status penawaran menjadi ACCEPTED, SkyPlanner membuat pesanan dengan nomor penawaran sebagai external_order_number. Nilai delivery_date diambil dari field yang digunakan bengkel produksi Anda untuk tanggal yang dijanjikan. Field ini dipetakan selama penyiapan awal. Setiap baris item diubah menjadi job sesuai tahapan proses produk. Setiap baris pesanan pembelian dicatat sebagai penerimaan bahan pada tanggal perkiraan kedatangannya, sehingga job menunggu bahan tersebut tiba. Setiap malam, semua penawaran dan pesanan pembelian yang masih terbuka dibaca ulang untuk menemukan data yang terlewat.

3. Penulisan balik jadwal dan data penyelesaian. Tiga panggilan mengirim hasilnya ke Xero:

  • PUT /Quotes/{QuoteID}/History menambahkan catatan berisi tanggal selesai yang direncanakan. Penawaran yang telah diterima hanya mengizinkan perubahan kontak dan catatan, sehingga tanggal tersebut disimpan dalam catatan riwayat. (sumber)
  • Saat pesanan selesai, POST /Invoices membuat faktur penjualan dengan Type ACCREC, Status DRAFT, kontak dan rincian item dari penawaran, serta nomor penawaran sebagai Reference. Staf pembukuan Anda menyetujui dan mengirimkannya di Xero.
  • POST /Quotes dengan QuoteID dan Status INVOICED menutup penawaran. Perubahan status dari Accepted ke Invoiced diperbolehkan dalam Accounting API.

4. Konfirmasi di lantai produksi dan waktu proyek. Operator mencatat pekerjaan menggunakan SkyPlanner Mobile Confirmations, Production Timer, atau Quick Log Mode. Kemajuan pekerjaan langsung memperbarui jadwal, lalu Autopilot menjadwalkan ulang sisanya. Untuk pekerjaan proyek, SkyPlanner mengirim jam kerja sebagai entri waktu pada tugas proyek, lengkap dengan pengguna Xero, tanggal, dan durasi. (sumber)

5. Aturan kepemilikan data dan penanganan konflik. Dokumentasikan aturan ini sebelum sistem mulai digunakan:

DataPemilik
Kontak, barang, harga, penawaran, pesanan pembelian, faktur, akuntansiXero
Stasiun kerja, tahapan proses, sif, ketidakhadiran, matriks waktu penyiapan, perkakas, sumber daya produksi alternatifSkyPlanner
Urutan job, waktu mulai dan selesai, stasiun kerja untuk setiap jobSkyPlanner
Catatan tanggal selesai yang direncanakan pada penawaranSkyPlanner, ditulis ke Xero
Draf faktur untuk pesanan yang selesai, waktu kerja proyekDibuat oleh SkyPlanner, menjadi data milik Xero setelah disetujui

Tahapan proyek pada umumnya

Implementasi biasanya selesai dalam beberapa minggu setelah proses orientasi dimulai. Sebelumnya, Anda dapat menjalankan uji coba gratis selama 30 hari dengan data Anda sendiri dari ekspor CSV Xero yang berisi kontak, produk, dan penawaran yang masih terbuka.

Proyek ini mencakup:

  1. Koneksi. Admin Xero menyetujui akses SkyPlanner dan memilih organisasi.
  2. Objek permintaan. Sepakati apakah produksi dimulai dari penawaran yang diterima atau faktur penjualan.
  3. Pemetaan. Tetapkan tabel pemetaan, kode item, akun untuk faktur, pengaturan pajak default, serta aturan kepemilikan data.
  4. Pemuatan awal. Kontak, item, pesanan pembelian yang masih terbuka, dan penawaran yang diterima.
  5. Model produksi. Stasiun kerja, tahapan proses per produk, sif, matriks waktu penyiapan, perkakas, dan jumlah operator di SkyPlanner.
  6. Sinkronisasi. Webhook untuk kontak dan faktur, polling dengan If-Modified-Since untuk penawaran, item, dan pesanan pembelian, serta rekonsiliasi setiap malam.
  7. Penulisan balik. Mulai dari catatan penawaran, lalu draf faktur dan status penawaran, kemudian waktu kerja proyek jika digunakan.
  8. Pengujian paralel dan mulai operasional. Bandingkan tanggal di SkyPlanner dengan rencana Anda saat ini, minta staf pembukuan memeriksa draf faktur pertama, lalu aktifkan penulisan balik.

Hal yang perlu direncanakan dalam integrasi Xero

  • Xero tidak memiliki objek produksi. Simpan tahapan proses per produk di SkyPlanner dengan kode item Xero sebagai kuncinya. Jangan mengubah kode item tersebut.
  • Penawaran tidak memiliki webhook. Lakukan polling dengan If-Modified-Since pada interval pendek, tanpa melampaui batas per menit dan per hari.
  • Penawaran yang diterima dikunci. Setelah diterima, hanya detail kontak dan catatan yang dapat diubah. Karena itu, tanggal yang dijanjikan dibaca satu kali saat penawaran diterima, sedangkan tanggal yang direncanakan ditulis sebagai catatan riwayat.
  • Stok mengikuti faktur penjualan dan tagihan pembelian. Xero memperbarui jumlah stok yang tersedia melalui faktur penjualan, tagihan pembelian, dan nota kredit untuk item yang stoknya dilacak. Sepakati dengan staf pembukuan cara mencatat barang jadi dan bahan yang digunakan.
  • Pencatatan waktu proyek memerlukan pengguna Xero. Setiap entri waktu terkait dengan pengguna Xero. Tentukan operator mana yang mencatat waktu ke Xero Projects, dan simpan catatan operator lainnya di SkyPlanner.
  • Cakupan izin terperinci. Minta cakupan izin yang terperinci sejak awal karena cakupan izin yang luas sedang dihentikan.
  • Tingkat aplikasi. Tingkat kemitraan menentukan jumlah organisasi yang dapat dihubungkan oleh aplikasi dan jumlah panggilan API yang diizinkan per hari. Rencanakan tingkat tersebut sesuai jumlah pabrik.

Integrasi Xero: siapa yang mengonfigurasi dan mendukungnya

Pekerjaan ini mencakup item, penawaran, pesanan pembelian, dan alur penagihan untuk pekerjaan yang telah selesai. Integrasi ini juga menambahkan data yang tidak disimpan Xero: stasiun kerja, tahapan proses, sif, matriks waktu penyiapan, perkakas, jumlah operator, dan sumber daya produksi alternatif.

  1. Tim SkyPlanner mengonfigurasinya selama proses orientasi dan memberikan dukungan setelah mulai operasional. Setiap bengkel produksi memiliki cara sendiri untuk mengatur item, penawaran, dan stok di Xero. Pengetahuan tentang pengaturan tersebut diterapkan pada tahap ini.
  2. Konsultan Xero atau mitra integrasi Anda dapat membangunnya. SkyPlanner menyediakan REST API, dokumentasi Swagger/OpenAPI, dan webhook.
  3. Pengembang internal Anda dapat mengembangkan integrasi ini dengan token API. Token API sudah cukup untuk memulai, dan tim SkyPlanner siap membantu saat diperlukan. Dokumentasi produk, termasuk pesanan pembelian serta API produk dan bahan, tersedia di dokumentasi SkyPlanner.

Harga SkyPlanner mulai dari 199 € per bulan, termasuk 5 stasiun kerja, dengan penagihan bulanan. Penawaran biaya integrasi diberikan di awal sesuai proses dan kebutuhan Anda, bersamaan dengan paket Anda, sehingga seluruh biaya sudah diketahui sebelum Anda mulai. Lihat harga, fitur, dan kemampuan bawaan Xero dalam Apakah Xero memiliki penjadwalan produksi? Gambaran umumnya tersedia di halaman Xero, sedangkan sistem lainnya dapat dilihat di semua integrasi.

Ulasan SkyPlanner dari perusahaan manufaktur

Kalle Kalliomäki, Spesialis Rantai Pasok di UTU, di area produksi panel listrik di Ulvila

2 jamdihemat setiap minggu

“SkyPlanner telah mengubah perencanaan produksi kami dari lembar kerja Excel menjadi optimasi produksi secara real-time.”

Kalle Kalliomäki, Spesialis Rantai Pasok
UTU · Panel distribusi dan perangkat hubung listrik

Perencanaan produksi menghemat 2 jam kerja setiap minggu, dan antrean kerja baru sampai ke lini produksi dalam hitungan detik.

Baca ulasan UTU

Operator dengan pakaian ruang bersih di lini pengisian botol di pabrik farmasi Laboratory & Allied di Nairobi

+90%efisiensi produksi

“Efisiensi produksi meningkat 90%.”

Abdul Rucyinga, Kepala TI
Laboratory & Allied · Manufaktur farmasi

Efisiensi produksi meningkat 90%, dan penyusunan rencana optimal untuk tiga bulan di seluruh stasiun kerja membutuhkan waktu kurang dari 30 menit.

Baca ulasan Laboratory & Allied

Lebih sedikitpenghentian produksi akibat kekurangan bahan

“Nilai SkyPlanner bagi kami terletak pada fungsinya sebagai alat yang bekerja dengan baik dalam kegiatan sehari-hari, terutama untuk menetapkan tanggal pengiriman.”

Tommi Männistö, Manajer Perencanaan Produksi
Eskomatic · Jasa pemesinan kontrak

Penjadwalan beban kerja otomatis menghasilkan tanggal pengiriman yang lebih akurat, dan penghentian produksi akibat kekurangan bahan telah berkurang tajam.

Baca ulasan Eskomatic

Hannu Ryynänen, Direktur Utama Mamec, di area produksi perusahaan di Lohja

1.000-anperintah kerja dijadwalkan otomatis

“Kini kami mengendalikan produksi dengan cara yang berbeda, dan pemahaman kami tentang kapasitas sudah berada pada tingkat yang sama sekali berbeda.”

Hannu Ryynänen, Direktur Utama
Mamec · Mesin pencampur industri, pompa, dan manufaktur kontrak berteknologi tinggi

Ribuan perintah kerja dijadwalkan secara otomatis, dan seluruh organisasi dapat memantau produksi secara real-time.

Baca ulasan Mamec

Pertanyaan umum

Apakah Xero memiliki API untuk data produksi?

Xero memiliki Accounting API dan Projects API, keduanya berbasis REST dengan OAuth 2.0. Keduanya mencakup kontak, item, penawaran, faktur, pesanan pembelian, dan entri waktu. Data produksi seperti stasiun kerja dan tahapan proses disimpan di SkyPlanner.

Bisakah SkyPlanner menulis data kembali ke Xero?

Ya. SkyPlanner menambahkan tanggal selesai yang direncanakan ke riwayat setiap penawaran, membuat draf faktur penjualan berisi baris item dari penawaran saat pesanan selesai, mengubah status penawaran menjadi Invoiced, dan mengirim entri waktu kerja proyek.

Apakah Xero mengirim perubahan secara real-time?

Webhook Xero mencakup kontak dan faktur. SkyPlanner membaca penawaran, item, dan pesanan pembelian yang berubah sejak sinkronisasi terakhir menggunakan If-Modified-Since, lalu melakukan rekonsiliasi setiap malam. Dengan demikian, penawaran baru yang diterima dapat segera masuk ke jadwal.

Dari mana daftar kebutuhan bahan, routing, dan data mesin diperoleh jika Xero tidak memilikinya?

Dari SkyPlanner. Anda cukup mengatur stasiun kerja, tahapan proses per produk, sif, dan waktu penyiapan satu kali, secara manual atau melalui impor CSV maupun Excel. Setiap produk ditautkan ke kode item Xero sehingga penawaran baru yang diterima akan dijadwalkan secara otomatis.

Bisakah kami mencoba SkyPlanner sebelum membangun integrasi?

Ya. Uji coba gratis selama 30 hari mendukung hingga 20 stasiun kerja dengan impor CSV dari Xero, tanpa memerlukan kartu kredit. Mulai uji coba, atau hubungi tim penjualan untuk menentukan cakupan integrasi.