Authentication
Create an API token in the portal under Settings → API tokens. The token is shown exactly once and starts with md_live_. Send it as a bearer token in the Authorization header.
Authorization: Bearer md_live_4f8a1c…POST /api/v1/evidence
The endpoint that matters most: submit your customer's IP address per Mollie payment from your own checkout. Under Art. 24b of the VAT Implementing Regulation the customer IP is an additional proof of the place of supply for OSS revenue. Meridian prints the IP as a location proof directly on the matching invoice PDF and additionally attaches a summary CSV to every DATEV package (4_Nachweise/kunden-ip-nachweise.csv).
payment_idstring, requiredThe Mollie payment id (tr_…) your checkout receives from Mollie.customer_ipstring, optionalThe customer's IPv4 or IPv6 at payment time.countrystring, optionalISO-3166 alpha-2 country if you already determined it yourself.metadataobject, optionalAny custom data (max 4 KB), e.g. order id or user agent.Request
curl -X POST https://usemeridian.de/api/v1/evidence \
-H "Authorization: Bearer md_live_…" \
-H "Content-Type: application/json" \
-d '{
"payment_id": "tr_7UhSN1zuXS",
"customer_ip": "203.0.113.54",
"metadata": { "order": "R-2026-C7XN" }
}'Response
{ "ok": true, "stored": 1, "results": [ { "payment_id": "tr_7UhSN1zuXS", "ok": true } ] }Batch: send an array of up to 100 objects in the same shape. Response status 207 when some entries fail.
Idempotent: pushing the same payment_id again overwrites the stored evidence.
GET /api/v1/evidence
Reads stored evidence, optionally filtered to one payment.
curl "https://usemeridian.de/api/v1/evidence?payment_id=tr_7UhSN1zuXS" \
-H "Authorization: Bearer md_live_…"GET /api/v1/companies
Lists your connected companies. You need the id for the export endpoint.
{
"companies": [
{ "id": "b21b6f7bfa964c31", "name": "Nordwind Digital", "payments": 2219, "synced": true }
]
}GET /api/v1/export
Downloads the full DATEV package as a ZIP: three EXTF batches, invoice PDFs with GUID Beleglink, document.xml and, when present, your IP evidence. One export is included in the trial, unlimited afterwards.
companystring, requiredCompany id from /api/v1/companies.fromYYYY-MM-DD, requiredFirst day of the period.toYYYY-MM-DD, requiredLast day of the period (inclusive).belege0 or 1, optionalbelege=0 skips the PDF receipts (batches only).curl -o DATEV_2026-05.zip \
"https://usemeridian.de/api/v1/export?company=b21b6f7bfa964c31&from=2026-05-01&to=2026-05-31" \
-H "Authorization: Bearer md_live_…"Error codes
401 invalid_tokenToken missing, invalid or deleted.402 trial_limitThe included trial export is used up.402 subscription_inactiveSubscription canceled or payment due.404 not_foundThe company does not belong to this account.400 …Validation error, details in the error field.207 (multi-status)Batch partially failed, see results[].