Mexico CFDI 4.0 Pre-check — connector documentation
- MCP endpoint:
https://mx-cfdi-precheck.connectorbay.com/mcp - REST API:
POST https://mx-cfdi-precheck.connectorbay.com/v1/tools/{tool_name}, described by the OpenAPI 3.1 spec athttps://mx-cfdi-precheck.connectorbay.com/openapi.json - Transport: Streamable HTTP, stateless, MCP specification 2025-06-18 or later
- Authentication: none required. An optional
Authorization: Bearer <key>raises rate limits. - Health:
https://mx-cfdi-precheck.connectorbay.com/health· Tool schemas:https://mx-cfdi-precheck.connectorbay.com/tools.json - Publisher: Unify Dynamics LLC · connectorbay.com/mx-cfdi-precheck · agent@connectorbay.com
What Mexico CFDI 4.0 Pre-check is for
Checks a draft CFDI 4.0 (JSON or XML) before it goes to a PAC for stamping, using only rules that appear in SAT's published cfdv40.xsd, tdCFDI.xsd and catCFDI.xsd: required attributes and children, value shapes (RFC, amounts, dates, postal codes), the verified code lists, the conditional rules written in the schema's own documentation (TipoCambio, Descuento, tax amounts) and the arithmetic between concept lines, taxes and Total. Returns a fix list with the schema rule behind each finding and an explicit list of what was NOT checked (catalogue membership, regime/use compatibility and the PAC's own validations). It never signs, stamps, sends or stores anything, and does not look anything up at SAT.
Ask your assistant things like:
- "Before I send this invoice to my PAC, does it have every field CFDI 4.0 requires?"
- "My lines are 2 x 100.00 with 16% VAT: are SubTotal, the tax amount and Total right?"
- "Is AAA010101AAA written in a valid RFC shape for a company?"
- "Why is TipoCambio required on my dollar invoice and what does Exportacion mean?"
- "Which payment-form codes and payment-method codes does the CFDI 4.0 schema accept?"
What it does
validate_cfdi_draft: Check a draft CFDI 4.0 (JSON object or XML text) against the SAT schema rules and return a fix list with the rule behind each finding.check_cfdi_totals: Recompute line amounts, tax amounts, SubTotal, Descuento and Total from concept lines with exact decimals and compare with the declared figures.validate_rfc_structure: Check that an RFC has the shape SAT's schema allows (12 or 13 characters, date part, check character class); structure only, no registry lookup.list_required_fields: List the attributes of a CFDI 4.0 element (Comprobante, Emisor, Receptor, Concepto, taxes, InformacionGlobal ...) with required, optional or conditional status and the value constraints.explain_cfdi_field: Explain one CFDI 4.0 field in plain language, quoting SAT's own schema documentation where the tool could read it and saying where the allowed values come from.list_catalog_codes: List the code values the SAT catalogue schema enumerates for Exportacion, TipoDeComprobante, MetodoPago and FormaPago, and say which catalogues are not covered.
Data sources
- http://www.sat.gob.mx/sitio_internet/cfd/4/cfdv40.xsd
- http://www.sat.gob.mx/sitio_internet/cfd/tipoDatos/tdCFDI/tdCFDI.xsd
- http://www.sat.gob.mx/sitio_internet/cfd/catalogos/catCFDI.xsd
Reference data from official sources (sat.gob.mx); every answer states its source, date and validity period.
What it is not
Mexico CFDI 4.0 Pre-check is independent; not affiliated with, endorsed by or operated by any government body, central bank, standards body or scheme operator. Names of rails, schemes and standards are used only to say what a tool works with. It is read-only: it never sends, pays, files or signs anything for you, and it never looks up private individuals.
Not advice. General information only, not legal, tax, accounting or payment advice. Mexico CFDI 4.0 Pre-check is an independent tool: it is not affiliated with, endorsed by or operated by any government body, central bank, standards body or scheme operator. Rates, thresholds and rules change; check the cited official source and confirm with a qualified professional before you rely on a result.
Built for: Mexico. Languages: English.
Tools
Look up & validate
validate_cfdi_draft — Check a draft CFDI 4.0 (JSON object or XML text) against the SAT schema rules and return a fix list with the rule behind each finding. Use for "Before I send this invoice to my PAC, does it have every field CFDI 4.0 requires?". Args: draft, xml, stage, currency_decimals.
check_cfdi_totals — Recompute line amounts, tax amounts, SubTotal, Descuento and Total from concept lines with exact decimals and compare them with the declared figures. Use for "My lines are 2 x 100.00 with 16% VAT: are SubTotal, IVA and Total right?". Args: concepts, declared, currency_decimals.
validate_rfc_structure — Check that an RFC has the shape SAT's schema (t_RFC) allows: 12 or 13 characters, letters, a YYMMDD date part and a final digit or A; structure only, no registry lookup. Use for "Is this RFC written in a valid shape for a company or for an individual?". Args: rfc.
list_required_fields — List the attributes of a CFDI 4.0 element with required, optional or conditional status and the value constraints written in SAT's schema. Use for "Which attributes does the Receptor node need in CFDI 4.0?". Args: element.
list_catalog_codes — List the code values SAT's catalogue schema enumerates for Exportacion, TipoDeComprobante, MetodoPago and FormaPago, and say which catalogues are not covered. Use for "Which payment-form codes does the CFDI 4.0 schema accept?". Args: catalog.
Reference & guides
explain_cfdi_field — Explain one CFDI 4.0 field in plain language, quoting SAT's own schema documentation where the tool could read it and saying where the allowed values come from. Use for "Why is TipoCambio required on my dollar invoice?". Args: field.
Conventions
- Read-only. Every tool reads public data or computes; nothing is written anywhere and nothing about the user is stored.
- Result envelope.
ok: truewith data, orok: falsewith a structurederror(bad_input,not_found,upstream_error).degradedlists optional sources that were unreachable. - Rate limits. Free tier 60 tool calls/minute and 300/day per user (keyed on the user identifier supplied by the host agent, else client IP); Pro keys raise this. Over-limit calls return HTTP 429 with
Retry-After.initializeandtools/listare never counted.
Support
agent@connectorbay.com · connectorbay.com/mx-cfdi-precheck/support