Bokio logo Bokio automation · runs weekly

Record customer payments on Bokio invoices

The money for last month's invoices arrives on your bank statement, and every payment has to be matched to an invoice and registered in Bokio by hand.

Cotlet does it in your own Bokio account with list_invoices, get_invoice and record_invoice_payment, called by your AI agent, an n8n workflow or a script.

Hosted · nothing to install or maintain

Can Bokio do this on its own?

Bokio's API can register an invoice payment with a date, an amount and an account, and a second call books it (checked 14 Oct 2026). With a Bokio Företagskonto, Bokio matches incoming payments to invoices itself; for any other bank, matching a statement to invoices stays manual.

How you do it in Bokio today

  1. Open the unpaid invoice from Fakturering > Fakturor.
  2. Click Registrera betalning in the upper-right corner.
  3. Enter the amount the customer paid, choose the account (for your bank account 1930) and the date the money arrived.
  4. If the amount differs from the invoice total, choose Lämna fakturan öppen för fler betalningar, Öresavrundning, Konstaterade kundförluster or Bankkostnad.
  5. Click Bokför if automatic booking of invoice events is off.

How to record customer payments on Bokio invoices

Prompt

Here is this week's bank statement. Match each incoming payment to an unpaid Bokio invoice by amount and reference, and record the payment on account 1930 on the date it arrived. List what you could not match.
  1. 01

    Read the unpaid invoices

    list_invoices runs with a filter on the status published, overdue and underPaid, and the agent pages through all results so a long list is matched as one batch.

  2. 02

    Match by amount and reference

    Each statement line is matched on the OCR payment reference first, then on amount and customer name. A line that fits two invoices is left for you.

  3. 03

    Check the invoice again

    get_invoice confirms the invoice is still unpaid and shows the paid amount, so a payment already registered in Bokio is never entered twice.

  4. 04

    Record the payment

    record_invoice_payment registers the amount on the date the money arrived and books it. It waits for your OK by default.

  5. 05

    Flag differences

    A short payment is recorded as a partial payment and the invoice stays open. The agent lists it with the missing amount instead of choosing a rounding or loss option for you.

What you get back

Example data

Statement lines: 6
Recorded 4 payments on account 1930:
- Invoice 2026-1042, 13 125 SEK, 2026-10-13
- Invoice 2026-1039, 4 800 SEK, 2026-10-12
Partial: invoice 2026-1035, 2 000 of 3 000 SEK, left open
No invoice found for 1 line: 1 250 SEK from "J Berg"

Other ways to ask

  • Only list the matches and the unmatched lines. Do not record anything.
  • Record payments from the CSV I attach, but only for invoices from this quarter.
  • Every Monday, tell me which overdue invoices received a payment since last week.

What Bokio allows, and what to know first

  • Bokio's invoice statuses are draft, published, paid, overPaid, underPaid, overdue, credited and credit.
  • Bokio's API records a payment in two steps: registering it, then booking it, which clears the receivable and links a journal entry.
  • Bokio can book a short payment as rounding to account 3740, a confirmed customer loss to 6351 or a bank fee to 6570.
  • With a Bokio Företagskonto and a Bankgiro number, invoices are marked paid automatically, and this job is for payments that arrive elsewhere.

record_invoice_payment asks for your OK by default. To run it weekly without you, switch confirmation off for that tool in your dashboard.

Sources: Bokio Help: Registrera och bokför betalning av kundfaktura · Bokio API docs: Getting started with the Invoice API · Bokio API docs: Get invoices · Bokio API docs: Invoicing in Bokio

Call record_invoice_payment from a script

curl

curl -X POST https://cotlet.dev/api/v1/bokio/invoices/f2d84b1a-6c30-4e97-8a5b-1d9c7e3a40b2/payment \
  -H "Authorization: Bearer $COTLET_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"date":"2026-10-13","amount":13125,"account":"1930"}'

Example response

{
  "invoice_id": "f2d84b1a-6c30-4e97-8a5b-1d9c7e3a40b2",
  "payment_id": "a8e2c5f1-9d40-4b73-b6a2-0c7f3d18e594",
  "amount": 13125,
  "date": "2026-10-13",
  "account": "1930",
  "booked": true,
  "invoice_status": "paid",
  "paid_amount": 13125
}

MCP: add https://cotlet.dev/mcp/v1 with the same key; the call is bokio_write → record_invoice_payment. Example data.

Schedule it in n8n, Make, Zapier or cron

Bokio tools this automation uses

Cotlet Bokio tools used to record customer payments on Bokio invoices
Tool Parameters
list_invoices status, due_before, customer_id, page, page_size
get_invoice invoice_id
record_invoice_payment invoice_id, date, amount, account
All 13 Bokio tools with descriptions

Frequently asked questions

Is it safe to connect Bokio to Cotlet?

Yes. You sign in to Bokio yourself, in your own Cloud Browser in the EU, and we never save your password. Your agents only get Bokio once you enable it, every background request is listed, and the browser profile is stored encrypted with AES-256-GCM, the cipher 1Password uses for its vaults. The AI model never sees a login, posts and messages wait for your OK, and Disable for agents cuts access in one click. Independent scanners grade cotlet.dev A+ on Qualys SSL Labs, securityheaders.com and Mozilla Observatory; live results are on https://cotlet.dev/security.

Give your agent access to Bokio.

Free 7-day trial with 2,000 credits, no card needed. Cotlet is independent and not affiliated with Bokio.