canonical: https://jentic.com/apis/billingo.hu/billingo

# Billingo Hu Billingo API v3

The Billingo API v3 provides programmatic access to Billingo's Hungarian online invoicing platform, allowing applications to issue compliant invoices, track payments, and synchronise customer and product records. It exposes 31 REST endpoints covering documents (invoices, proforma invoices, receipts), partners, products, bank accounts, and organisation data. Documents can be cancelled, downloaded as PDFs, sent via email, and reconciled against Hungary's mandatory Online Számla reporting system. Authentication is by API key issued from the Billingo dashboard.

## For AI agents

Issue Hungarian-compliant invoices, manage customers and products, and reconcile payments through the Billingo invoicing platform. Includes integration with the mandatory Online Számla reporting system.

## Scope

Does not handle card payment processing, payroll, or general ledger accounting - use for issuing Hungarian-compliant invoices and managing related partner and product records only.

## Capabilities

- Issue invoices, proforma invoices, and receipts that comply with Hungarian Online Számla reporting requirements
- Cancel issued documents and convert proforma invoices into final invoices in one call
- Send invoices to customers by email and retrieve a public download URL or PDF
- Reconcile payments against documents and update or remove payment history entries
- Synchronise partner records, products, and bank accounts between Billingo and external systems
- Look up live currency exchange rates used by Billingo when issuing multi-currency invoices
- Convert legacy v2 document IDs to v3 IDs when migrating existing integrations

## Use cases

### Hungarian E-Invoice Issuance with Online Számla Reporting

Hungarian businesses must report invoices to the NAV Online Számla system in real time. The Billingo API v3 issues compliant invoices via POST /documents and exposes the Online Számla submission status via GET `/documents/{id}/online-szamla`, removing the need to integrate directly with NAV's reporting interface. Typical integration takes 2-4 days for issuance plus payment reconciliation flows.

Example prompt: Create a document of type invoice for partner ID 12345 with one product line at 10000 HUF, send it to customer@example.com, and confirm the Online Számla status is reported.

### Customer and Product Master-Data Sync

Operations teams running ERP, e-commerce, or CRM systems need to keep partner and product records consistent with their invoicing tool. The Billingo API exposes full CRUD on /partners and /products, enabling nightly sync jobs that push new customers from a CRM into Billingo and pull updated VAT rates back. Integration usually takes one to two days for a basic two-way sync.

Example prompt: List all partners modified since 2026-01-01, compare against the local CRM, and create or update Billingo partner records to match.

### Payment Reconciliation Across Bank Accounts

Finance teams reconcile invoice receivables against bank statements daily. Billingo exposes bank account records via /bank-accounts and per-document payment history via `/documents/{id}/payments` (GET, PUT, DELETE), so an automation can mark invoices as paid when a matching transaction is detected and reverse the entry if a refund is later issued. Setup is typically one day for a single account.

Example prompt: For invoice ID 99887, add a payment of 50000 HUF dated 2026-06-09 against bank account ID 7, then verify the payment history reflects the new entry.

### AI Agent Invoicing Assistant via Jentic

An AI assistant for Hungarian SMEs can use the Billingo API through Jentic to issue invoices, look up customers, and report on outstanding receivables from natural-language requests. Jentic stores the X-API-KEY in your Jentic One instance so the agent never sees the raw secret, and it returns the right Billingo operation when the user asks something like "send last month's invoice to Acme". Setup through Jentic is under an hour.

Example prompt: Search Jentic for 'issue a Hungarian invoice', load the POST /documents schema, and execute it with partner_id=12345 and a single product line.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | `/documents` | Issue a new invoice or proforma invoice |
| GET | `/documents` | List all issued documents |
| POST | `/documents/{id}/cancel` | Cancel an issued document |
| POST | `/documents/{id}/send` | Send a document to a customer by email |
| GET | `/documents/{id}/online-szamla` | Check Online Számla reporting status for a document |
| POST | `/partners` | Create a new customer or supplier record |
| POST | `/products` | Create a new product in the catalogue |
| GET | `/documents/{id}/payments` | Retrieve payment history for a document |

## Key resources

- **Documents** — Issue, retrieve, cancel, send, and download invoices and proforma invoices, plus check Online Számla reporting status
- **Partners** — Create, list, update, and delete customer and supplier records used as invoice recipients
- **Products** — Manage the product and service catalogue referenced by invoice line items
- **Bank Accounts** — Manage the bank accounts displayed on invoices and used for payment reconciliation
- **Document Blocks** — List the numbering blocks Billingo uses to assign sequential invoice numbers
- **Currencies** — Retrieve the exchange rates Billingo uses when issuing multi-currency invoices
- **Organization** — Retrieve the issuing company's own data as stored in Billingo

## Why Jentic

- **Setup:** Wiring the Billingo API by hand means sending its X-API-KEY header on every call and building each Hungarian-compliant document, partner, and product path yourself. Through Jentic you install once, import Billingo from the API Directory, store the key once, and your agent calls it.
- **Permission scoping:** Billingo puts the document id in the URL path (`/documents/{id}/cancel`, `/documents/{id}/send`), so a rule can pin your agent to one document: it can read that document and its payments and nothing else. You choose the operations it may call, so cancelling or sending a document is not included unless you add them.
- **Credential handling:** Your Billingo API key is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'issue a Hungarian invoice' or 'send a document to a partner', and Jentic returns the matching Billingo operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **Fakturoid** — Czech-market invoicing API with comparable scope to Billingo
- **Stripe** — Card and bank-payment processor that pairs with Billingo for collection
- **Xero Accounting** — International cloud accounting platform with invoicing
- **Zoho Inventory** — Inventory and order management that can feed line items into Billingo invoices

## FAQ

### What authentication does the Billingo API v3 use?

The Billingo API v3 uses an API key passed in the X-API-KEY header. You generate the key from the Billingo dashboard at app.billingo.hu/api-key. When called via Jentic, the key is stored encrypted in your Jentic One instance and the agent receives a scoped access token, so the raw X-API-KEY never enters the agent's context.

### Can I issue invoices that are reported to NAV Online Számla through the Billingo API?

Yes. POST /documents issues invoices that Billingo automatically forwards to the NAV Online Számla system on your behalf. You can verify the report status via GET `/documents/{id}/online-szamla`, which returns the submission state without requiring a direct integration with NAV.

### What are the rate limits for the Billingo API v3?

The OpenAPI spec does not declare explicit rate limits. Billingo's published guidance is to space out high-volume jobs and respect any 429 responses returned by the server. When calling through Jentic, retries on 429 are handled by the SDK, so high-volume sync jobs do not have to implement back-off manually.

### How do I send an invoice to a customer by email through Jentic?

Search Jentic for 'send invoice by email', which returns the POST `/documents/{id}/send` operation. Load the schema, supply the document ID and recipient addresses, and execute. The Jentic Python flow is: pip install jentic, then await client.search, await client.load, await client.execute.

### Is the Billingo API free to use?

API access is included with paid Billingo subscriptions. The API itself does not charge per call, but each issued invoice consumes one of your subscription's monthly invoice allowances. Check current plan limits at billingo.hu before running high-volume jobs.

### Can I update payment history on an invoice through the API?

Yes. PUT `/documents/{id}/payments` updates the payment history for an issued document, while DELETE `/documents/{id}/payments` removes all entries. This is the endpoint to use when reconciling Billingo invoices against bank statements or reversing entries after a refund.

### Can I limit what my agent is allowed to do with the Billingo API?

Yes. Because you self-host Jentic One, your own rules decide which Billingo operations and credentials the agent may use. Since Billingo puts the document id in the URL path, such as `/documents/{id}/cancel` and `/documents/{id}/send`, you can pin the agent to a single document so it only reads that document and its payment history. You choose the operations it can call, so cancelling or emailing a document stays off limits unless you explicitly allow it.
