The Maesn blog on ERP and accounting integration
ERP and accounting systems, the integrations built on them, and the details that decide how both behave: authentication, data models, rate limits, events and partner programmes.
42 articles

How to Integrate with Procountor: Two Ways In, One Ceiling
Procountor has two ways in, and the unattended one stops at every endpoint that asks for a second factor. What that means for tokens, syncing and tax mapping.
Lennart Svensson · 28 Aug 2026
QuickBooks Online Webhooks: Events, Retries and Recovery
QuickBooks Online webhooks cover 29 entity types and expect HTTP 200 in three seconds. Why Intuit still asks you to poll change data capture.
Lennart Svensson · 25 Aug 2026
Lexware Office Pagination: The 406 and One Page Size
Lexware Office validates the page size and rejects a bad one with 406, the same code it uses for an unsupported media type. What that means for your read loop.
Lennart Svensson · 20 Aug 2026
How to Integrate with DATEV Rechnungswesen: One Connection
One connection carries reading and writing in DATEV Rechnungswesen, on a two-year token. Which objects travel in which direction is the real decision.
Lennart Svensson · 17 Aug 2026
How to Integrate with DATEV Unternehmen Online: Async Writes
Every write to DATEV Unternehmen Online is an asynchronous task, and nothing you send reads back. What that decides about your data model.
Lennart Svensson · 17 Aug 2026
DATEV Partnership Guide: Approvals and Marktplatz Listing
DATEV publishes no tiers and no fee. It asks for two approvals before your first customer can connect, and a Marktplatz listing needs 25 live customers first.
Dr. Themo Voswinckel · 10 Aug 2026
Webhooks in ERP and Accounting: Which Systems Push Events
Most ERP and accounting systems have no native webhooks. Which ones push events, which model they use, what their payload carries and what to do about the rest.
Dr. Themo Voswinckel · 21 Jul 2026
QuickBooks Partnership Guide: Fees and Marketplace Listing
Intuit meters what you read and not what you write. Four tiers, four rate cards, and on the free tier the calls above your credits are blocked rather than billed.
Dr. Themo Voswinckel · 13 Jul 2026
DATEV Datenservice Export Rechnungswesen: Finalised Data
The one DATEV service that reads. What it returns, why a booking has to be finalised first, who switches it on and what that does to your sync schedule.
Lennart Svensson · 10 Jun 2026
Xero Partnership Guide: Tiers, Fees and App Store Listing
Xero retired revenue share in March 2026. Five tiers now price connections and the data you read, writing stays unlimited, and the App Store starts at Plus.
Dr. Themo Voswinckel · 9 Jun 2026
How to Integrate DATEV E-Rechnungsplattform with PEPPOL
DATEV routes e-invoices over PEPPOL, and the document route into DATEV is the one you can build against today. What it carries and which product takes it.
Dr. Themo Voswinckel · 18 May 2026
How to Integrate with Xentral: The Version Sets the Query
Xentral versions each endpoint on its own, so the filters, the paging and how firm the contract is differ between the three generations under one token.
Lennart Svensson · 18 May 2026
How to Integrate with FreshBooks: Two Identifiers
FreshBooks routes accounting through an account id and time tracking through a business id. The same split decides how finely you can filter by date.
Lennart Svensson · 18 May 2026
How to Integrate with Moneybird: Sync Runs on Versions
Moneybird answers what changed with a version index instead of a clock, which is what a delta sync here stands on. Plus the filter that replaces its own defaults.
Lennart Svensson · 18 May 2026
How to Integrate with Qonto: Three Reads and One Event
Qonto reads three objects and sends one event. The gates before production are an app review, a use case you cannot change and a limit per IP address.
Lennart Svensson · 18 May 2026
How to Integrate with FreeAgent: Access Levels Cut Fields
FreeAgent grades permissions from 0 to 8. The grade of the user who connects decides which fields a contact returns, and the default view hides rows.
Lennart Svensson · 18 May 2026
How to Integrate with Twinfield: Credits and Certification
Twinfield resolves a cluster and a company code before your first call, and an uncertified client runs on five percent of the credits.
Lennart Svensson · 18 May 2026
How to Integrate with Sage Active: Reads and Corrections
Sage Active reads eleven objects and posts five. Corrections travel as new documents, the token lasts eight hours, and Maesn walks the cursor for you.
Lennart Svensson · 18 May 2026
How to Integrate with Fortnox: One Stream, Not Webhooks
Fortnox pushes changes down a single websocket stream with offsets and replay, not to your endpoint. What that means for a sync that runs on a timestamp.
Lennart Svensson · 18 May 2026
How to Integrate with Sage Accounting: An Optional Header
The X-Business header in Sage Accounting is optional, so a request without it does not fail: it reads and writes the user's lead business instead.
Lennart Svensson · 18 May 2026
How to Integrate with SnelStart: Two Authentication Flows
The two keys are only the test flow. SnelStart production uses a redirect it calls OAuth, gated by a partner review and a seven day observation period.
Lennart Svensson · 18 May 2026
How to Integrate with BuchhaltungsButler: Four Rate Limits
BuchhaltungsButler allows 100 requests per customer per minute, ten on the receipt upload and one every five seconds on each batch endpoint. What that budget means.
Lennart Svensson · 18 May 2026
How to Integrate with Pennylane: Scopes and Changelogs
Pennylane agrees your scopes before the first call and its changelog keeps four weeks of history. What that means for tokens, writes and re-syncs.
Lennart Svensson · 18 May 2026
How to Integrate with Holded: Two Counters, Two Statuses
Holded meters a burst window and a monthly quota, and its pending filter leaves partly paid invoices out. What both mean for a sync you run yourself.
Lennart Svensson · 18 May 2026
How to Integrate with bexio: The Ledger Has No Read Scope
Bexio publishes 35 scopes and none of the 18 read-only ones covers accounting data. What that means for consent, for the journal and for your sync.
Lennart Svensson · 18 May 2026
How to Integrate with Weclapp: No Rate Limit, but a Queue
Weclapp publishes no request limit. It queues your calls for up to 30 seconds instead, and the filter that keeps you out of that queue fails silently.
Lennart Svensson · 18 May 2026
How to Integrate with Abacus: Host, Version and Mandant
Every Abacus installation brings its own host, its own annual version and its own set of change topics. What that decides before you write a request.
Lennart Svensson · 18 May 2026
How to Integrate with QuickBooks: Events That Need a Read
Nine QuickBooks objects reach you as events and Intuit still tells you to poll. What the notification leaves out, and where the fallback has a gap.
Lennart Svensson · 18 May 2026
How to Integrate with sevdesk: Two Bookkeeping Versions
sevdesk-Update 2.0 changed the bookkeeping system in 2024 and both versions live in the same tenant. What that means for tax rules, writes and the version header.
Lennart Svensson · 18 May 2026
How to Integrate with Odoo: Two Protocols, One Deadline
Odoo's two remote procedure endpoints now carry a removal date, and hosted instances reach it first. What your customer hands over, and how long it stays valid.
Lennart Svensson · 18 May 2026
How to Integrate with Xero: Events and Rate Limits
Xero notifies you about one of the ten objects you can read. Everything else is a poll against 5.000 calls a day, and the delta filter has a blind spot.
Lennart Svensson · 18 May 2026
How to Integrate with Microsoft Business Central: Events
Every Business Central webhook subscription expires after three days, and renewing one means answering Microsoft's handshake again. Maesn holds that clock.
Lennart Svensson · 18 May 2026
How to Integrate with Exact Online: The Daily Call Budget
Exact Online allows 60 calls a minute and 5.000 a day per company, and no parallel calls. What that budget buys, and how to spend it on 23 readable objects.
Lennart Svensson · 18 May 2026
How to Integrate with Lexware Office: Limits and Events
Lexware Office allows two requests per second across all endpoints, every update needs a fresh read, and polling is not allowed. What that means for your build.
Lennart Svensson · 18 May 2026
Accounting Integration Partnerships: Marketplace Listings
Every ERP and accounting platform sets its own partner terms. Which systems need an app registration, what a marketplace listing asks for and what it returns.
Dr. Themo Voswinckel · 13 Apr 2026
DATEV Unternehmen Online or Rechnungswesen: How to Choose
One object can be written to both DATEV products. Which one your integration needs follows from that, and from what only Rechnungswesen gives back.
Dr. Themo Voswinckel · 8 Apr 2026
Why Accounting and ERP Integrations Are Hard to Build
Fragmented markets, interfaces from REST to file transfer, and vendor documentation you often cannot reach. What integration work in this market really involves.
Dr. Themo Voswinckel · 1 Apr 2026
How to Integrate with Visma eAccounting: Tokens and Paging
One system, three brand names: what the Visma eAccounting rename changes for scopes, sandboxes, rate limits and the paging you inherit.
Lennart Svensson · 31 Mar 2026
DATEV Data Formats Explained: CSV, XML and ASCII
DATEV documents three file formats and each one has exactly one destination. Which one your use case needs, what the CSV layout looks like and why ASCII is payroll.
Lennart Svensson · 30 Mar 2026
How to Integrate with Spiris: ROT, RUT and Accounts
Spiris is Visma eAccounting in Sweden. What a Swedish build meets on top of it: the accounting office flow, article account coding and the ROT and RUT fields.
Lennart Svensson · 23 Mar 2026
How to Integrate with Visma e-conomic: What You Can Write
On Visma e-conomic the customer's subscription decides whether you can write at all, and one call tells you that plus the modules before you build.
Lennart Svensson · 23 Mar 2026
Maesn Funding Round: 2.3 Million Euro for the Unified API
Maesn closed a 2.3 million euro round with get.de as a new investor, alongside Tiny Supercomputer Investment Company and NRW.BANK. What the money is for.
Dr. Themo Voswinckel · 4 Nov 2025One integration instead of one per system.
Every quirk in these guides is one we already absorb. See what that looks like for the systems your customers run.