CRATEAPI

CrateAPI without code — in your browser or your automation tool

Most of what CrateAPI does needs zero code at all: validate, generate and try every tool directly in your browser below, free, no account. Prefer to automate it? Any no-code tool that can send an HTTP request — Make, n8n, Zapier — can call CrateAPI directly too, no SDK, no server, no code either way.

Zero code: use the tools in your browser

Free, no account for any of these — click through and get a result in seconds.

free

Validate an invoice

Drop a UBL or CII XML file and get a full compliance report back — completely free, no account.

free

Generate an invoice

Fill in a short form on the homepage and download a ready UBL, CII, Factur-X or PDF invoice — free, no account.

free

PDF, screenshot, email & extract

Four more browser demos: turn HTML into a PDF, capture a screenshot, send an email, or pull structured data out of a document — free, no account.

Want the same calls wired into a recurring workflow instead of run by hand? Make, n8n and Zapier — below — call the exact same API.

How this works

Every integration below is really just one HTTP call, configured through a different UI. /v1/validate/ubl and /v1/validate/cii are free and need no API key — the easiest way to try the whole thing right now, invoice XML in, a JSON report out. /v1/generate/*, /v1/convert/* and /v1/render/* are billable and read the X-API-Key header — get a free key on your account page (a free key still includes 50 billable calls a month, no card required).

Honest note. The Make blueprint and n8n workflow below follow each tool's own export format, and both point at the exact live endpoint shown next to them — we tested that HTTP call directly against the real API. We don't keep Make or n8n accounts ourselves, so we haven't run the import step inside either app. If an import ever looks off, the request underneath — URL, method, headers, body — is the part guaranteed to work; copy it by hand instead.

For automation tools (Make, n8n, Zapier) — everything from here down needs some technical setup.

Make

Make's generic HTTP module — HTTP → Make a request — can call any URL, including CrateAPI. Unlike some competitors, that module ships on Make's free plan, not gated behind a paid tier.

Try it free: validate an invoice

  1. Create a scenario, add the HTTP app → Make a request module — or skip straight to step 2 and import the file below.
  2. Scenario menu (⋮) → Import Blueprint → pick the downloaded .json file.
  3. Method POST, URL https://api.crateapi.com/v1/validate/ubl, header Content-Type: application/xml, body = an invoice XML — the blueprint already ships with a real sample wired in.
  4. Run it once. CrateAPI answers with a JSON report — valid, fatal/warning counts, findings — the rest of the scenario can branch on.
curl -X POST "https://api.crateapi.com/v1/validate/ubl" \
  -H "Content-Type: application/xml" \
  -H "X-CrateAPI-Source: make" \
  --data-binary @invoice.xml
Download Make blueprint (validate)

Switch to generate. Point the same module at https://api.crateapi.com/v1/generate/ubl?profile=peppol, add header X-API-Key: your-key-here, and switch the body to a JSON invoice (content type application/json) instead of XML. Download Make blueprint (generate)

n8n

n8n's built-in HTTP Request node does the same job. n8n is free and open-source, so this works identically on n8n Cloud or on an instance you run yourself.

Try it free: validate an invoice

  1. Create a workflow, add an HTTP Request node — or skip to step 2 and import the file below.
  2. Workflow menu (⋯) → Import from File → pick the downloaded .json file (it already includes a manual trigger, ready to run).
  3. Method POST, URL https://api.crateapi.com/v1/validate/ubl, header Content-Type: application/xml, raw body = an invoice XML — the workflow already ships with a real sample filled in.
  4. Click Test workflow. The node's output is the same JSON report — valid, fatal/warning counts, findings.
curl -X POST "https://api.crateapi.com/v1/validate/ubl" \
  -H "Content-Type: application/xml" \
  -H "X-CrateAPI-Source: n8n" \
  --data-binary @invoice.xml
Download n8n workflow (validate)

Self-hosting n8n instead of using n8n Cloud? Nothing above changes — it's the same HTTP Request node either way.

Switch to generate. Point the node at https://api.crateapi.com/v1/generate/ubl?profile=peppol, add header X-API-Key: your-key-here, and switch the body type to JSON (a structured invoice) instead of raw XML. Download n8n workflow (generate)

Zapier

Honest note first: the generic action that can call any URL — Webhooks by Zapier — is not on Zapier's free plan; it needs one of Zapier's paid plans. Zapier also has no file-import for a single Zap, so there's no template to download here — just the exact fields to type in.

Try it free: validate an invoice

  1. Create a Zap, add the action app Webhooks by Zapier, event POST.
  2. Fill in the fields below exactly, then send a test — CrateAPI answers with a JSON report.
Method
POST
URL
https://api.crateapi.com/v1/validate/ubl
Headers
Content-Type: application/xml
X-CrateAPI-Source: zapier
Payload
Raw — paste an invoice XML
curl -X POST "https://api.crateapi.com/v1/validate/ubl" \
  -H "Content-Type: application/xml" \
  -H "X-CrateAPI-Source: zapier" \
  --data-binary @invoice.xml

Switch to generate. Same action, different fields: URL https://api.crateapi.com/v1/generate/ubl?profile=peppol, add header X-API-Key: your-key-here, Payload Type Json, Data = a structured invoice.

See it without any of this

Every template above calls the same API you can test right now — try the free validator with your own file, or read the full reference.

Validate your e-invoice freeNo signup. Paste or upload, get the report instantly.
Open the validator →