Skip to main content

Magento 2 + Merit Aktiva - end the manual invoicing

Every paid order in your Magento store becomes a Merit Aktiva invoice automatically, stock stays in sync and VAT is booked correctly.

Re-typing orders into Merit Aktiva by hand doesn't scale

Someone exports the day's orders, opens Merit Aktiva and re-enters each one as an invoice. SKUs don't quite match the articles in Merit, a credit invoice gets forgotten, a VAT rate is picked wrong, and stock slowly drifts away from reality. It works at ten orders a day. At a hundred it becomes a job nobody wants - and every manual step is a place for an error to hide.

What the integration does

Every paid Magento order is created as a Merit Aktiva sales invoice automatically
Customer details - company name, registry code, VAT number, address - mapped to Merit contacts
Product SKUs matched to Merit articles; unmatched items are created or flagged, never guessed
Estonian VAT rates mapped correctly, including EU/OSS and reverse-charge cases
Stock levels synced from Merit (or your warehouse system) back to Magento in near real time
Refunds and cancellations create Merit credit invoices - no orphaned paperwork
Idempotent processing: a webhook firing twice never creates a duplicate invoice
fixed-price projectExact quote after a short mapping session reviewing your Magento setup and Merit Aktiva account.

How we build it

01

Mapping

We review your Magento order flow, your Merit Aktiva account, VAT rules and how SKUs relate to Merit articles. The result is a clear picture of what moves where.

02

Architecture

Magento order webhook to a durable queue to the Merit Aktiva API. We design the retry and error handling before any code is written, and you confirm it.

03

Build & edge cases

We build the connector and test the ugly cases: duplicate webhooks, partial refunds, missing SKUs, Merit API downtime, mixed-VAT baskets.

04

Launch & reconciliation

We run alongside your current process, compare invoices line by line, then switch over. A reconciliation report confirms every order reached Merit.

Real project

Webshop connected to the back office

We built an event-driven middleware that turns each order into an accounting invoice in under 200ms, with no human in the loop and full reconciliation - the same architecture behind our Merit Aktiva integrations.

0%
Manual work
< 200ms
Latency
0
Duplicate invoices
View the integration case study

Frequently asked questions

Does stock sync in real time?

Near real time. Orders push to Merit within seconds via a webhook and queue; stock syncs back on a short interval (typically 1-5 minutes) or on change, depending on where your authoritative stock lives - Merit, a warehouse system, or Magento itself.

How are refunds and credit invoices handled?

A refund or cancellation in Magento creates a matching credit invoice in Merit Aktiva, linked to the original. Partial refunds are supported. Nothing is left as an orphaned manual correction.

How is VAT handled?

We map your Magento tax classes to the correct Merit Aktiva VAT codes, including reduced rates, 0%, EU/OSS distance sales and reverse-charge. VAT logic is agreed during mapping so the books are right from day one.

What if the Merit API is temporarily down?

Orders wait in a durable queue and are processed automatically when Merit is reachable again. Nothing is lost even if the outage lasts hours - and duplicates are impossible because processing is idempotent.

Do we need Merit Aktiva's API access?

Yes - the integration uses Merit Aktiva's official API (an API ID and key from your Merit account). We tell you exactly what to enable during mapping; no third-party middleware subscription is required.

Will it work with our custom or Hyvä-based store?

Yes. The integration runs at the backend/order level and is independent of your theme, so a Luma or Hyvä frontend makes no difference. Custom order attributes and checkout fields can be mapped into Merit too.

Connect Magento and Merit Aktiva

Tell us about your store and Merit setup - we'll map the integration and give you a fixed quote.

Request a quote