{✓} curlies.dev
1.482.903 validated live

e-Invoice Validation
Built for Developers_

Transform raw XML and Schematron errors into clear, human-readable JSON. Integrate compliant European e-invoicing in minutes with zero boilerplate.

Read the Docs →
$ pip install curlies
INPUT: invoice_xrechnung.xml XML
<rsm:CrossIndustryInvoice>
  <rsm:SupplyChainTradeTransaction>
    <ram:ApplicableHeaderTradeAgreement>
      <ram:BuyerReference>8E12245</ram:BuyerReference>
      <!-- ERROR: Missing BT-48 Buyer VAT ID -->
    </rsm:SupplyChainTradeTransaction>
</rsm:CrossIndustryInvoice>
OUTPUT: curlies.validate() -> 200 OK JSON
{
  "is_valid": false,
  "field": "standard",
  "line": 203,
  "message": "ERROR: Missing BT-48 Buyer VAT ID"
}