Dubu Pay’s invoicing API lets you create professional invoices, attach line items, and deliver them to customers directly by email. Invoices go through a clear status lifecycle — fromDocumentation Index
Fetch the complete documentation index at: https://docs.dubupay.com/llms.txt
Use this file to discover all available pages before exploring further.
draft through to paid — and payments can be collected via virtual bank accounts or checkout links. This guide covers the full flow from creation to delivery.
Invoice statuses
| Status | Meaning |
|---|---|
draft | Created but not yet sent to the customer |
pending | Sent; awaiting payment |
paid | Payment confirmed |
overdue | Past the due date with no payment |
canceled | Voided; no longer payable |
Create an invoice
| Field | Type | Required | Description |
|---|---|---|---|
title | string | Yes | Invoice title (max 255 chars) |
customer_name | string | Yes | Recipient’s display name |
customer_email | string | Yes | Recipient’s email address |
customer_id | string | No | Link to an existing Dubu customer record |
currency | string | No | NGN or USD. Defaults to NGN |
issue_date | string | No | ISO date string (e.g. 2024-11-01) |
due_date | string | No | ISO date string |
notes | string | No | Freeform notes shown on the invoice (max 2000 chars) |
line_items | array | Yes | At least one line item is required |
| Field | Type | Required | Description |
|---|---|---|---|
description | string | Yes | Item description (max 500 chars) |
quantity | integer | Yes | Must be a positive integer |
unit_price | number | Yes | Price per unit (must be ≥ 0) |
tax_type | string | No | none, percentage, or fixed |
tax_rate | number | No | Tax value (e.g. 7.5 for 7.5%) |
discount_type | string | No | none, percentage, or fixed |
discount | number | No | Discount value |
product_id | string | No | Optional product reference UUID |
Newly created invoices have
status: "draft". The customer cannot pay until you send the invoice.Add line items after creation
You can add additional line items to adraft invoice at any time before sending it:
Remove a line item
cURL
Send the invoice by email
Once you’re satisfied with the invoice, send it to the customer’s email address:draft to pending. The customer receives an email with a payment link and a summary of all line items.
Update an invoice
You can update adraft or pending invoice. Once an invoice is paid or canceled, updates are not accepted.
title, customer_name, customer_email, currency, issue_date, due_date, notes, status (to draft, pending, or canceled)
Delete an invoice
You can delete adraft invoice. Paid or canceled invoices cannot be deleted.
cURL
List invoices
status (draft, pending, paid, overdue, canceled) or search (matches customer name or email). Supports page and limit (max 100) for pagination.