- Beranda
- Panduan
- Invoice
Invoice
Tagih pelanggan dengan rincian barang atau jasa, pajak, dan tanggal jatuh tempo; mereka membayar di halaman bayar Baiyar.
Invoice adalah payment link dengan tagihan terperinci di sekelilingnya. Pelanggan menerima email dengan tombol bayar dan membayar di halaman bayar Baiyar yang sama seperti payment link lain.
Buat invoice
Section titled “Buat invoice”-
Pilih Invoice di menu lalu Invoice baru.

-
Pilih proyek dan isi nama serta email pelanggan (nomor telepon opsional). Link bayar dikirim ke email ini.
-
Tambahkan satu baris untuk tiap barang atau jasa: deskripsi, jumlah, dan harga satuan dalam rupiah bulat.
-
Pilih pajak: tanpa pajak, PPN, atau persentase lain, jatuh tempo (berlaku sampai akhir hari itu dalam WIB, dan harus setelah hari ini), dan siapa yang menanggung biaya: pengaturan proyek, kamu, atau pelanggan.

-
Nomor invoice dibuatkan untukmu. Tidak ada yang dikirim sampai kamu menerbitkan invoice, jadi kamu bisa menyimpan draf dan kembali nanti.

Status
Section titled “Status”| Status | Artinya |
|---|---|
| Draf | Belum diterbitkan. Bisa diedit atau dihapus. |
| Menunggu bayar | Sudah diterbitkan, belum dibayar. |
| Sedang dibayar | Pelanggan sudah memulai pembayaran. |
| Lunas | Dibayar penuh. |
| Jatuh tempo | Tanggal jatuh tempo terlewat. |
| Dibatalkan | Dibatalkan olehmu. |
Draf bisa dihapus, dan invoice yang sudah diterbitkan bisa dibatalkan. Pembayaran sebuah invoice muncul di Transaksi seperti pembayaran lain.
Dengan API
Section titled “Dengan API”Invoice yang sama, dari servermu. Key butuh izin invoices:write untuk membuat, menerbitkan, membatalkan, dan menghapus invoice, dan invoices:read untuk membacanya (lihat Izin). Operasinya ada di referensi API.
Membuat invoice hanya menyimpan draf. Terbitkan untuk mendapat tautan bayar, dan, di live, untuk mengirim email ke pelanggan:
curl "https://api.baiyar.com/v1/invoices" \ -H "Authorization: Bearer $BAIYAR_KEY" \ -H "Idempotency-Key: invoice-2041" \ -H "Content-Type: application/json" \ -d '{ "customer_name": "Budi Santoso", "customer_email": "budi@example.com", "items": [{ "description": "Desain logo", "quantity": 2, "unit_amount": 30000000 }], "tax_rate_bp": 1100, "due_at": "2026-11-15T16:59:59Z" }'
curl -X POST "https://api.baiyar.com/v1/invoices/$INVOICE_ID/issue" \ -H "Authorization: Bearer $BAIYAR_KEY" \ -H "Idempotency-Key: invoice-2041-issue"Nominal dikirim dalam satuan terkecil IDR. Rp300.000 ditulis 30000000. tax_rate_bp memakai basis poin, jadi 1100 berarti 11%.
Invoice yang sudah terbit memiliki url untuk dibagikan ke pembayar. Statusnya bisa open, paying, paid, expired, atau void; draft hanya berlaku sebelum diterbitkan. Ikuti event webhook invoice.issued, invoice.paid, dan invoice.voided untuk menerima perubahan status. Invoice yang melewati due_at tidak mengirim event kedaluwarsa, jadi periksa tanggal tersebut.
Setiap aksi memerlukan Idempotency-Key agar pengulangan request tidak mengirim email lagi. Key proyek hanya membaca invoice proyeknya; key merchant perlu menyertakan project_id.
Field request invoice:
| Field | Tujuan |
|---|---|
project_id |
Proyek yang menerima pembayaran. Wajib untuk key merchant; project key sudah terikat ke satu proyek. |
customer_name, customer_email, customer_phone |
Identitas dan alamat email penerima invoice. Di live, email dipakai untuk mengirim invoice saat diterbitkan. Telepon opsional. |
items |
Rincian tagihan. Tiap baris punya description, quantity, dan unit_amount; subtotal dihitung dari jumlah × harga satuan. unit_amount berupa satuan terkecil IDR dan harus mewakili rupiah bulat. |
tax_rate_bp |
Persentase pajak dalam basis poin; 1100 berarti 11%. tax_amount dihitung dari subtotal dan tarif ini, lalu dibulatkan ke rupiah terdekat. Jika tidak dikirim, tarifnya 0%. |
due_at |
Batas waktu pembayaran dalam ISO 8601. Invoice yang sudah diterbitkan berubah menjadi expired setelah batas lewat; draf yang tanggalnya sudah lewat harus diperbarui sebelum diterbitkan. |
fee_bearer |
Menentukan apakah biaya transaksi ditanggung merchant atau ditambahkan ke jumlah yang dibayar pelanggan. Jika tidak dikirim, pengaturan proyek dipakai. |
note |
Catatan teks pada invoice untuk pelanggan. |
Buat draf, periksa subtotal, tax_amount, total, dan penerima, lalu terbitkan. Baiyar membuat payment link untuk invoice. Pembayaran melalui link itu memperbarui status invoice dan menghasilkan event webhook terkait.