Invoicing and accounting sync
Every sale is booked as a legal invoice in PayDay.is or DK+, refunds become credit notes, and your books need no second system.
Icelandic law requires a compliant sales invoice for every sale. Rather than generating invoices itself, Borga connects to the accounting system you already use and creates the invoice there: the provider issues the legal document and PDF, and Borga keeps a reference to it as an Invoice object (inv_…). Refunds are mirrored as credit notes (cn_…).
Supported providers
| Provider | Connection | Bank invoices (krafa) |
|---|---|---|
| PayDay.is | Sign in with PayDay from the dashboard (OAuth) | Yes |
| DK+ | Paste an API token generated in DK+ | No |
Connect one provider per mode under Settings → Accounting system. Test mode connects to the provider's test environment, so you can see invoices appear without touching real books.
What gets booked
| Event in Borga | In your accounting system |
|---|---|
| Card or wallet payment succeeds | A paid sales invoice for the amount, to the customer's name, email and kennitala when known |
| Bank invoice requested | An open invoice sent as a bank claim; marked paid when the bank confirms |
| Subscription period ends | A finalised invoice with one line per subscription item, collected by card or bank claim |
| Refund succeeds | A credit note against the original invoice |
The Invoice object records the provider's id and invoice number, the pdf_url, totals, tax and the billing details used. Retrieve it with the Invoices API or list a customer's invoices in the customer portal.
Statuses
| Status | Meaning |
|---|---|
draft | Created by a billing cycle, not yet sent to the provider |
open | Issued and awaiting payment (bank invoices, send_invoice subscriptions) |
paid | Paid and booked |
void | Cancelled in the provider |
sync_failed | The provider rejected or failed the request. The payment itself is unaffected. |
When a sync fails Borga emits invoice.sync_failed with the provider's error, and the invoice shows a Retry sync button on the Invoices page of the dashboard. Common causes are an expired provider token and VAT codes that do not exist in the provider.
Accounts and VAT
Under Settings → Accounting system you map Borga tax rates to your provider's VAT codes and set a default revenue account. Give a Price an accounting_code to book its lines to a specific account; it is copied onto each invoice line.
Without a provider
You can take payments before connecting a provider. Borga still records an Invoice object per payment so the history is complete, but nothing is booked anywhere and there is no PDF. Bank invoices are unavailable until PayDay is connected.
Related
- Bank invoices
- Refunds and credit notes
- Customer portal for payer-facing invoice history
- Credit notes API