convert_quote_to_invoice
ChatGPTMembuat draf invoice dari penawaran yang sudah terbit atau disetujui klien, sama seperti tombol konversi di dashboard. Hasilnya masih draf, dan status penawaran berubah menjadi Dikonversi.
create_catalog_item
ChatGPTMenambah produk atau jasa baru. Jika namanya sudah ada, permintaan ditolak dan ID produk yang sudah ada dikembalikan.
create_client
ChatGPTMenambah klien baru dengan aturan dan batas paket yang sama seperti di dashboard. Jika nama klien sudah ada, permintaan ditolak dan ID klien yang sudah ada dikembalikan. Minta konfirmasi pengguna dulu sebelum memanggil tool ini.
create_document_draft
ChatGPTMembuat draf invoice atau penawaran. Data pengirim, rekening, tanda tangan, tema, nomor, dan jatuh tempo mengikuti pengaturan workspace, sama seperti di dashboard. Hasilnya selalu draf: belum terbit dan tidak dikirim ke klien. Minta konfirmasi pengguna dulu, lalu bagikan links.edit supaya pengguna bisa mengecek drafnya.
create_expense
ChatGPTMencatat pengeluaran bisnis. Jika pengguna mengirim foto struk, baca isinya lalu minta konfirmasi dulu. Fotonya sendiri tidak ikut tersimpan.
create_project
ChatGPTMembuat proyek baru lengkap dengan tahapan bawaan, mengikuti batas proyek aktif di paket workspace.
create_record
ChatGPTCreate one record with the same rules and plan limits as the dashboard. Pick the entity and put its fields in data; the input schema lists the accepted fields of each entity. Documents are always saved as drafts. Linked IDs (client, project, catalog item, tax rate, category) must come from search_records or get_report. entity brief_link relates two briefs; an identical link is returned unchanged, and type supersedes shows a warning on the target brief. entity document_copy saves a new draft copied from an existing document; the source is not changed. entity invoice_from_quote saves a draft invoice and also changes the source quote status to converted. entity agent_run starts time tracking and moves the task to in_progress. If the session is on another task, that run is closed and its task status changes (default review); take_over closes the run of another session. Duplicates are prevented by task and session, not by idempotency_key: the same task in the same session returns the open run.
create_secure_link
ChatGPTMembuat link aman ke halaman Kedeka untuk hal yang harus diselesaikan pengguna di luar chat. action: client_details (lengkapi atau perbarui data klien), add_bank_account (tambah rekening bank workspace), send_document_email (pengguna memeriksa lalu mengirim dokumen terbit ke email klien). Halaman Kedeka yang menentukan isian yang ditampilkan. Pengguna harus login ke Kedeka, link berlaku 30 menit dan hanya bisa dipakai sekali. Isian pengguna tidak dikembalikan ke chat, hanya status link-nya.
create_task
ChatGPTMenambah tugas baru, bisa sekaligus di dalam proyek dan dengan penanggung jawab. Penanggung jawab mendapat notifikasi seperti dari dashboard. Konfirmasi judul, proyek, dan tenggat ke pengguna dulu sebelum memanggil tool ini.
delete_item
ChatGPTMenghapus klien, produk, proyek, tugas, pengeluaran, atau dokumen draf/dibatalkan (soft delete). Prosesnya dua langkah: panggilan pertama mengembalikan preview dan confirmation_token, lalu panggil lagi dengan token itu hanya jika pengguna setuju. Data masih bisa dipulihkan dengan restore_item. Satu panggilan hanya untuk satu data. Penghapusan massal tidak didukung: jika pengguna minta menghapus semua atau banyak data sekaligus, tolak dan jangan tawarkan untuk menghapusnya satu per satu.
duplicate_document
ChatGPTMembuat draf baru dari salinan invoice, penawaran, atau kuitansi, dengan tanggal hari ini dan nomor baru. Cocok untuk tagihan rutin yang isinya sama.
get_business_context
ChatGPTMembaca label, zona waktu, locale, mata uang bawaan, dan kemampuan yang dimiliki koneksi ini. Tidak menerima argumen.
get_client
ChatGPTMembaca profil ringkas satu klien: nama, tipe, status, lokasi, mata uang, dan jumlah dokumen/proyek. Kontak, NPWP/NITKU, catatan, dan token portal tidak dikembalikan. Klien di luar izin koneksi dijawab sama seperti data yang tidak ada.
get_document
ChatGPTMembaca satu invoice, penawaran (quote), atau kuitansi dengan baris dan totalnya. Jenis dokumen lain ditolak, dan dokumen di luar izin koneksi dijawab sama seperti data yang tidak ada.
get_financial_report
ChatGPTMembaca ringkasan keuangan satu periode: omzet, omzet bersih, PPN, PPh dipotong, pengeluaran, laba, pembayaran diterima, sisa tagihan, dan perkiraan PPh Final 0,5%, beserta rincian per bulan, kategori pengeluaran, dan klien teratas. Angka sama dengan halaman Laporan. Hanya untuk pemilik atau admin workspace.
get_project
ChatGPTMembaca metadata proyek serta ringkasan tugas, dokumen, dan waktu yang diizinkan. Durasi memakai entri selesai; timer berjalan dan persetujuan billing tidak disimpulkan.
get_receivables
ChatGPTMembaca piutang saat ini: total per umur piutang (belum jatuh tempo, 0-30, 31-60, 61-90, lebih dari 90 hari), total per klien, dan daftar invoice yang belum lunas diurutkan dari jatuh tempo paling lama. Hanya untuk pemilik atau admin workspace.
get_record
ChatGPTRead one record in full by its ID from search_records. A document also returns its revision, which update_record needs. Entity-specific options, such as a brief section or a project time range, go in options.
get_report
ChatGPTWorkspace-level reads. business_context: the business, owner, and defaults. workspace_reference: IDs of expense categories, tax rates, and units. financial: income, expenses, and a tax estimate for a period (not an official tax calculation). receivables: unpaid invoices. current_work: active agent sessions and suggested tasks, optionally matching a repository and branch.
get_secure_link_status
ChatGPTMembaca status link aman Kedeka: pending, completed, cancelled, atau expired, beserta ringkasan hasil tanpa nilai yang diisi pengguna. Hanya link yang dibuat oleh koneksi ini yang bisa dibaca.
get_workspace_reference
ChatGPTMengambil ID dan pilihan yang dibutuhkan tool lain: anggota tim (untuk penanggung jawab tugas), tarif pajak, kategori pengeluaran, rekening bank, status proyek dan tugas, serta metode pembayaran. Tanpa argumen.
list_deleted_items
ChatGPTMenampilkan data yang sudah dihapus untuk satu jenis, dari yang terbaru, supaya bisa dipulihkan dengan restore_item.
list_recurring_schedules
ChatGPTMenampilkan jadwal invoice berulang: frekuensi, tanggal terbit berikutnya, status aktif, kirim otomatis, apakah proses terakhir gagal, dan invoice template beserta kliennya.
list_tasks
ChatGPTMembaca tugas di workspace koneksi. Filter penanggung jawab, proyek, status, dan tanggal tenggat tidak memperluas akses.
list_time_entries
ChatGPTMenampilkan riwayat pencatatan waktu milik pengguna yang sedang terhubung, dari yang terbaru. Bisa difilter per proyek, billable, belum ditagih, dan tanggal. Total menit semua hasil ikut dikembalikan.
log_time
ChatGPTMencatat waktu kerja yang sudah selesai untuk pengguna yang sedang terhubung, berdasarkan durasi pada satu tanggal. Tarif mengikuti proyek atau workspace, sama seperti input manual di dashboard. Konfirmasi proyek, durasi, dan tanggal ke pengguna dulu sebelum memanggil tool ini.
publish_document
ChatGPTMenerbitkan draf invoice, penawaran, atau kuitansi: nomornya jadi final, dokumen mendapat link publik, dan dihitung ke kuota bulanan. Tool ini tidak mengirim email, jadi jangan menanyakan alamat email atau menjanjikan pengiriman. Setelah terbit, berikan public_url agar pengguna membagikannya sendiri atau mengirimnya dari dashboard Kedeka. Dokumen yang sudah terbit tidak bisa diedit lagi, jadi tunjukkan ringkasannya dan minta persetujuan pengguna dulu.
record_payment
ChatGPTMencatat pembayaran yang sudah diterima untuk invoice terbit yang belum lunas, sama seperti tombol Catat pembayaran di dashboard. Status dan sisa tagihan ikut diperbarui. Jika pembayaran ini melunasi invoice, kuitansi bisa dibuat otomatis dan klien bisa menerima email terima kasih sesuai pengaturan workspace (lihat effects di hasil). Selalu konfirmasi invoice, nominal, dan tanggal ke pengguna dulu.
restore_item
ChatGPTMemulihkan data yang sudah dihapus. Ambil ID-nya dari list_deleted_items atau dari hasil delete_item.
search_catalog_items
ChatGPTMencari produk/jasa di katalog workspace koneksi ini dan mengembalikan nama, satuan, harga serta mata uang saat ini. Kata kunci wajib diisi agar tidak ada ekspor katalog tanpa filter; pencarian tidak mengubah katalog.
search_clients
ChatGPTMencari klien di workspace koneksi ini dengan kata kunci nama yang wajib diisi, sehingga tidak ada ekspor daftar tanpa filter. Kandidat dengan nama sama dikembalikan sebagai beberapa baris dengan pembeda; tool tidak memilih atau membuat klien.
search_documents
ChatGPTMencari invoice, penawaran (quote), dan kuitansi di workspace koneksi ini. Jenis dokumen lain ditolak, dan kursor halaman berasal dari hasil sebelumnya.
search_expenses
ChatGPTMenampilkan pengeluaran workspace, terbaru lebih dahulu, dengan filter kata kunci vendor/deskripsi, klien, proyek, status dapat ditagihkan, dan tanggal. Total semua baris yang cocok per mata uang ikut dikembalikan. File struk tidak dikembalikan.
search_payments
ChatGPTMenampilkan pembayaran invoice yang tercatat, terbaru lebih dahulu, dengan filter klien, invoice, status, metode, dan tanggal bayar. Bukti transfer dan data gateway tidak dikembalikan.
search_projects
ChatGPTMencari kandidat proyek di workspace koneksi dengan filter nama, klien, status, dan tanggal mulai. Tidak memilih atau mengubah proyek.
search_records
ChatGPTSearch or list records in this workspace. Pick the entity and put its filters (query, status, dates, limit, cursor, and so on) in filters. Results carry the IDs needed for subsequent operations. If selection.required=true, ask the user which record they mean. In lists and tables, show names as plain text, not links.
update_catalog_item
ChatGPTMengubah produk atau jasa, misalnya harga atau satuan. Dokumen yang sudah dibuat tidak ikut berubah.
update_client
ChatGPTMengedit data klien. Hanya field yang dikirim yang berubah.
update_document_draft
ChatGPTMengedit draf invoice atau penawaran yang belum terbit. Hanya field yang dikirim yang berubah; jika items dikirim, semua baris diganti. Wajib menyertakan revision terakhir dari get_document supaya perubahan dari dashboard tidak tertimpa. Dokumen yang sudah terbit tidak bisa diedit.
update_project
ChatGPTMengedit proyek, misalnya status, klien, anggaran, tarif, atau tanggal. Hanya field yang dikirim yang berubah.
update_record
ChatGPTChange fields of one record by its ID from search_records. Send only the fields that change, in data. A document must be a draft, and data needs expected_revision from get_record. The input schema lists the accepted fields of each entity. entity agent_run finishes or pauses a tracked run: time stops and the task status changes (default review; task_status keep leaves it). Finishing a closed run again keeps its end time.
update_task
ChatGPTMengedit tugas, misalnya menandai selesai, mengganti status, penanggung jawab, prioritas, atau tenggat. Hanya field yang dikirim yang berubah.
void_document
ChatGPTMembatalkan dokumen yang sudah terbit dan belum ada pembayarannya. Prosesnya dua langkah: panggilan pertama mengembalikan preview dan confirmation_token. Tunjukkan preview ke pengguna, lalu panggil lagi dengan token itu hanya jika pengguna setuju. Tidak bisa di-undo.
void_or_delete
ChatGPTVoid one document or soft-delete one record. Two steps: call without confirmation_token to get a preview and token, show it to the user, and call again with the token only after they agree. One record per call; decline requests to delete many records. Deleted records can be restored.