{"openapi":"3.1.0","info":{"title":"Jithox E-Invoice Readiness","version":"1.2.0","description":"Jithox E-Invoice Readiness: 0.01 USDC per accepted call on eip155:8453, paid per call over x402.","x-guidance":"Pay-per-call over x402 v2 (scheme exact, USDC on Base). POST the JSON body without payment to receive HTTP 402 with a PAYMENT-REQUIRED offer; sign it with any x402 v2 client and repeat the identical request with the PAYMENT-SIGNATURE header. Billed only for a domain decision; malformed input, provider unavailability and internal errors are never billed. No account or API key is needed."},"servers":[{"url":"https://mcp.jithox.com"}],"paths":{"/x402/mainnet/paycall/tools/validate_invoice":{"post":{"operationId":"validate_invoice","summary":"Validate an EU invoice (structure)","description":"Structurally validate a draft EU invoice and report machine-readable issues (schema problems, VAT-id format, date sanity, BIS 3.0 completeness, computed totals). Full report, never fails fast. Not legal approval. Validation and readiness only; never sends a Peppol invoice and gives no legal, fiscal or compliance guarantee.","tags":["einvoice"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["invoice"],"properties":{"invoice":{"type":"object","description":"The invoice payload to check."}}},"example":{"invoice":{"invoiceNumber":"INV-2026-001","issueDate":"2026-07-01","seller":{"vatId":"BE0123456749"}}}}}},"responses":{"200":{"description":"Paid result: the decision, the settlement (PAYMENT-RESPONSE header) and a signed receipt.","content":{"application/json":{"example":{"valid":false,"issues":[{"code":"missing_buyer","severity":"error"}],"decision":{"status":"ready","summary":"Example decision envelope — see the decision field of a real response.","decision":{"canProceed":true,"requiresHumanReview":false,"blockingReasons":[],"warnings":[],"nextActions":[]}}}}}},"400":{"description":"Arguments rejected before any charge."},"402":{"description":"Payment required: the x402 v2 offer in the PAYMENT-REQUIRED header and body. Nothing was charged."},"503":{"description":"The lane is not accepting payments right now. Nothing was charged."}},"x-payment-info":{"price":{"mode":"fixed","amount":"0.01","currency":"USD"},"protocols":[{"x402":{"x402Version":2,"scheme":"exact","network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount":"10000","payTo":"0x25a8314dBd3faB234dF0676DDa2a2dcF0536E97e"}}]}}},"/x402/mainnet/paycall/tools/validate_vat_number":{"post":{"operationId":"validate_vat_number","summary":"Validate a VAT number (format)","description":"Deterministic structure/checksum validation of an EU VAT number (incl. the Belgian modulo-97 checksum) with the normalized identifier and a stable issue code. Format plausibility only — not a live VIES result. Validation and readiness only; never sends a Peppol invoice and gives no legal, fiscal or compliance guarantee.","tags":["einvoice"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["vatNumber"],"properties":{"vatNumber":{"type":"string","minLength":1,"maxLength":40,"description":"A VAT number, e.g. \"BE0123456749\"."},"countryCode":{"type":"string","minLength":2,"maxLength":2,"description":"ISO alpha-2, used only when the VAT has no prefix."}}},"example":{"vatNumber":"BE0123456749"}}}},"responses":{"200":{"description":"Paid result: the decision, the settlement (PAYMENT-RESPONSE header) and a signed receipt.","content":{"application/json":{"example":{"valid":true,"normalized":"BE0123456749","issue":"none","decision":{"status":"ready","summary":"Example decision envelope — see the decision field of a real response.","decision":{"canProceed":true,"requiresHumanReview":false,"blockingReasons":[],"warnings":[],"nextActions":[]}}}}}},"400":{"description":"Arguments rejected before any charge."},"402":{"description":"Payment required: the x402 v2 offer in the PAYMENT-REQUIRED header and body. Nothing was charged."},"503":{"description":"The lane is not accepting payments right now. Nothing was charged."}},"x-payment-info":{"price":{"mode":"fixed","amount":"0.01","currency":"USD"},"protocols":[{"x402":{"x402Version":2,"scheme":"exact","network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount":"10000","payTo":"0x25a8314dBd3faB234dF0676DDa2a2dcF0536E97e"}}]}}},"/x402/mainnet/paycall/tools/verify_vat_vies":{"post":{"operationId":"verify_vat_vies","summary":"Verify a VAT number in VIES (live)","description":"Check a VAT number's ACTIVE status against the official EU VIES source. Returns valid / invalid / invalid_input / unavailable with provenance (source, checkedAt). When VIES is unavailable it says so truthfully and makes no validity claim. Validation and readiness only; never sends a Peppol invoice and gives no legal, fiscal or compliance guarantee.","tags":["einvoice"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["vatNumber"],"properties":{"vatNumber":{"type":"string","minLength":1,"maxLength":40,"description":"A VAT number, e.g. \"BE0123456749\"."},"countryCode":{"type":"string","minLength":2,"maxLength":2,"description":"ISO alpha-2, used only when the VAT has no prefix."}}},"example":{"vatNumber":"BE0123456749"}}}},"responses":{"200":{"description":"Paid result: the decision, the settlement (PAYMENT-RESPONSE header) and a signed receipt.","content":{"application/json":{"example":{"state":"invalid","provenance":{"source":"vies","checkedAt":"2026-07-01T00:00:00Z"},"decision":{"status":"ready","summary":"Example decision envelope — see the decision field of a real response.","decision":{"canProceed":true,"requiresHumanReview":false,"blockingReasons":[],"warnings":[],"nextActions":[]}}}}}},"400":{"description":"Arguments rejected before any charge."},"402":{"description":"Payment required: the x402 v2 offer in the PAYMENT-REQUIRED header and body. Nothing was charged."},"503":{"description":"The lane is not accepting payments right now. Nothing was charged."}},"x-payment-info":{"price":{"mode":"fixed","amount":"0.01","currency":"USD"},"protocols":[{"x402":{"x402Version":2,"scheme":"exact","network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount":"10000","payTo":"0x25a8314dBd3faB234dF0676DDa2a2dcF0536E97e"}}]}}},"/x402/mainnet/paycall/tools/lookup_peppol_participant":{"post":{"operationId":"lookup_peppol_participant","summary":"Look up a Peppol participant","description":"Check whether a receiver is registered on the Peppol network and accepts BIS Billing 3.0 invoices, via the official SML/SMP discovery route when enabled (otherwise an honest mock that says so). Only status registered/not_registered is definitive; unavailable/not_configured are truthful and never a hidden \"no\". Provide vatId or endpointId (at least one) plus the receiver country. Lookup only — never a send action, and no send tool exists here. Validation and readiness only; never sends a Peppol invoice and gives no legal, fiscal or compliance guarantee.","tags":["einvoice"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["countryCode"],"properties":{"vatId":{"type":"string","minLength":4,"maxLength":60,"description":"VAT / enterprise number, e.g. \"BE0123456749\"."},"endpointId":{"type":"string","minLength":1,"maxLength":60,"description":"Peppol endpoint identifier (GLN or scheme-specific id)."},"endpointScheme":{"type":"string","minLength":1,"maxLength":10,"description":"EAS scheme id. Derived when omitted (BE VAT → 0208, else 0088)."},"countryCode":{"type":"string","enum":["AT","BE","BG","HR","CY","CZ","DE","DK","EE","ES","FI","FR","GB","GR","HU","IE","IS","IT","LI","LT","LU","LV","MT","NL","NO","PL","PT","RO","SE","SI","SK"],"description":"Receiver country (drives the scheme derivation)."}}},"example":{"vatId":"BE0123456749","countryCode":"BE"}}}},"responses":{"200":{"description":"Paid result: the decision, the settlement (PAYMENT-RESPONSE header) and a signed receipt.","content":{"application/json":{"example":{"status":"registered","supportsBis30Invoice":true,"decision":{"status":"ready","summary":"Example decision envelope — see the decision field of a real response.","decision":{"canProceed":true,"requiresHumanReview":false,"blockingReasons":[],"warnings":[],"nextActions":[]}}}}}},"400":{"description":"Arguments rejected before any charge."},"402":{"description":"Payment required: the x402 v2 offer in the PAYMENT-REQUIRED header and body. Nothing was charged."},"503":{"description":"The lane is not accepting payments right now. Nothing was charged."}},"x-payment-info":{"price":{"mode":"fixed","amount":"0.01","currency":"USD"},"protocols":[{"x402":{"x402Version":2,"scheme":"exact","network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount":"10000","payTo":"0x25a8314dBd3faB234dF0676DDa2a2dcF0536E97e"}}]}}},"/x402/mainnet/paycall/tools/get_einvoice_readiness":{"post":{"operationId":"get_einvoice_readiness","summary":"Assess e-invoice readiness","description":"Readiness snapshot for YOUR canary workspace: one plain state, what is ready, what is missing, and the next safe step. Diagnostics, not a compliance certificate. Validation and readiness only; never sends a Peppol invoice and gives no legal, fiscal or compliance guarantee.","tags":["einvoice"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"verifyWithProvider":{"type":"boolean","description":"Also confirm the bound legal entity with the provider (one provider call)."}}},"example":{}}}},"responses":{"200":{"description":"Paid result: the decision, the settlement (PAYMENT-RESPONSE header) and a signed receipt.","content":{"application/json":{"example":{"state":"not_ready","missing":["peppol_registration"],"decision":{"status":"ready","summary":"Example decision envelope — see the decision field of a real response.","decision":{"canProceed":true,"requiresHumanReview":false,"blockingReasons":[],"warnings":[],"nextActions":[]}}}}}},"400":{"description":"Arguments rejected before any charge."},"402":{"description":"Payment required: the x402 v2 offer in the PAYMENT-REQUIRED header and body. Nothing was charged."},"503":{"description":"The lane is not accepting payments right now. Nothing was charged."}},"x-payment-info":{"price":{"mode":"fixed","amount":"0.01","currency":"USD"},"protocols":[{"x402":{"x402Version":2,"scheme":"exact","network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount":"10000","payTo":"0x25a8314dBd3faB234dF0676DDa2a2dcF0536E97e"}}]}}}}}