1
Realize the 'sync contacts' use case
Start by implementing the synchronize contacts use case to ensure the customers across your database and your user’s accounting platform are in sync.
2
Retrieve chart of accounts (optional)
You will usually need to specify a general ledger account or an item on each line of the invoice. These could be stored in your database or be based on user input, but most likely it will be sensible to fetch it from the user’s accounting platform by calling the GET /accounts endpoint.
3
Retrieve items (optional)
Call the GET /items endpoint to fetch the items registered in the accounting platform.
4
Retrieve tax rates (optional)
Call the GET /taxRates endpoint to fetch the tax rates or tax codes available in in the accounting platform.
5
Implement a trigger to create invoices
Decide when to transfer invoices to your user’s accounting platform. It could be a button within your application’s frontend, listening for a specific event or according to a schedule (e.g. nightly).
6
Create the invoice
Create the invoice in your user’s accounting platform by calling POST /invoices.