---
title: "Validate a Factur-X PDF, CII XML or UBL XML (XSD + schematron)"
method: POST
path: "/v1/invoices/validate"
tags: ["e-invoicing"]
---

# Validate a Factur-X PDF, CII XML or UBL XML (XSD + schematron)

`POST /v1/invoices/validate`

## Request

- Base URL: `https://facturx.orvel.dev` (the document declares no server; this is the origin it was published from)
- URL: `https://facturx.orvel.dev/v1/invoices/validate`
- Auth: none declared

Free without a key: shared daily limit, files up to 5 MB. With a key, each completed report uses one operation of your allowance.

## Query parameters

- `check` 'base' | 'fr-ctc': Rule set: EN 16931 only or + French CTC rules

## Response `200`

Successful Response

- ValidationOut
  - `valid` boolean, required
  - `flavor` string, nullable, required
  - `profile` string, nullable, required
  - `checks_run` string[], required
  - `checks_skipped` string[], required
  - `error_count` integer, required
  - `warning_count` integer, required
  - `findings` FindingOut[], required
    - `source` string, required
    - `severity` 'fatal' | 'warning' | 'info', required
    - `rule` string, nullable, required
    - `message` string, required
    - `location` string, nullable
    - `test` string, nullable
    - `json_pointer` string, nullable
    - `business_rule` string, nullable
    - `pointer_scope` string, nullable
    - `field` string, nullable
    - `remediation` object, nullable
  - `pdf` object, nullable
  - `report_version` string
  - `status` 'passed' | 'failed' | 'incomplete'
  - `summary` string
  - `issue_count` integer
  - `issues` object[]
  - `coverage` object[]
  - `engine_version` object
  - `validated_at` string, nullable
  - `input_sha256` string, nullable
  - `info_count` integer

## Other responses

- `400`: Invalid input or business-rule failure
- `401`: Missing or invalid API key
- `402`: Monthly quota exceeded
- `422`: Validation Error
- `429`: Free checks busy or used up today
- `503`: Validation engine temporarily unavailable

---

[API](https://skmtc.dev/orvel/apis/factur-x-api.md) · [All operations](https://skmtc.dev/orvel/apis/factur-x-api/llms.txt) · [OpenAPI document](https://skmtc.dev/orvel/apis/factur-x-api/revisions/1dc1acc1104e?raw)
