---
title: "Accepts a PDF and a CII XML, returns a Factur-X compliant PDF/A-3 with the XML embedded as `factur-x.xml`. The XML is validated with the full rule set of `/v1/validate/facturx` (schema + business rules) before embedding; pass `skipValidation=true` for packaging-only mode, which checks structure (profile XSD) but not business rules. For invoices bound for the French exchange network, `rules=br-fr` additionally validates the XML against the BR-FR Flux 2 mandate rules before embedding, exactly as `/v1/validate/facturx` does."
method: POST
path: "/v1/embed/facturx"
tags: ["Embed"]
---

# Accepts a PDF and a CII XML, returns a Factur-X compliant PDF/A-3 with the XML embedded as \`factur-x.xml\`. The XML is validated with the full rule set of \`/v1/validate/facturx\` (schema + business rules) before embedding; pass \`skipValidation=true\` for packaging-only mode, which checks structure (profile XSD) but not business rules. For invoices bound for the French exchange network, \`rules=br-fr\` additionally validates the XML against the BR-FR Flux 2 mandate rules before embedding, exactly as \`/v1/validate/facturx\` does.

`POST /v1/embed/facturx`

## Request

- Base URL: `https://api.invoicexml.com`
- URL: `https://api.invoicexml.com/v1/embed/facturx`
- Auth: none declared

## Response `200`

OK

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `413`: Payload Too Large
- `429`: Too Many Requests
- `500`: Internal Server Error

---

[API](https://skmtc.dev/invoicexml/apis/invoicexml-api.md) · [All operations](https://skmtc.dev/invoicexml/apis/invoicexml-api/llms.txt) · [OpenAPI document](https://skmtc.dev/invoicexml/apis/invoicexml-api/revisions/3181e160f14e?raw)
