{"openapi":"3.1.0","info":{"title":"QuoAPI – Tax & Compliance API","version":"1.0.0","description":"Canonical QuoAPI public API contract. Provider details and internal routes are intentionally excluded."},"servers":[{"url":"https://api.quoapi.com"}],"tags":[{"name":"tax-compliance-api","description":"Validate tax context and create deterministic, auditable tax decisions without a separate Dynafis account."}],"paths":{"/v1/tax/context/validate":{"post":{"operationId":"tax_context_validate","summary":"Validate tax context","description":"Validate and normalize cross-border tax context before a decision is created.","tags":["tax-compliance-api"],"security":[{"BearerAuth":["tax.context.validate"]}],"x-quoapi-capability":"tax.context.validate","x-quoapi-contract-version":"1.0.0:tax.context.validate","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"supplier_country":{"type":"string","x-quoapi-widget":"country","title":"Supplier country","pattern":"^[A-Z]{2}$","x-quoapi-format":"iso-3166-1-alpha-2","default":"DE"},"customer_country":{"type":"string","x-quoapi-widget":"country","title":"Customer country","pattern":"^[A-Z]{2}$","x-quoapi-format":"iso-3166-1-alpha-2","default":"FR"},"supply_type":{"type":"string","x-quoapi-widget":"select","title":"Supply type","enum":["general_service","goods","digital_service"],"default":"general_service"},"customer_type":{"type":"string","x-quoapi-widget":"select","title":"Customer type","enum":["business","consumer"],"default":"business"},"customer_vat_id":{"type":"string","x-quoapi-widget":"text","title":"Customer VAT ID"},"country":{"type":"string","pattern":"^[A-Z]{2}$","x-quoapi-widget":"country","x-quoapi-hidden":true,"description":"Optional ISO 3166-1 alpha-2 routing context."},"currency":{"type":"string","pattern":"^[A-Z]{3}$","x-quoapi-widget":"currency","x-quoapi-hidden":true,"description":"Optional ISO 4217 commercial context."}},"additionalProperties":false,"required":["supplier_country","customer_country"]},"example":{"supplier_country":"DE","customer_country":"FR","supply_type":"general_service","customer_type":"business","customer_vat_id":"demo"}}}},"responses":{"200":{"description":"Canonical response","content":{"application/json":{"schema":{"type":"object","required":["data","request_id"],"properties":{"data":{"type":"object","additionalProperties":true,"description":"Canonical QuoAPI tax/compliance response."},"request_id":{"type":"string"}}}}}},"4XX":{"description":"Canonical client error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"5XX":{"description":"Canonical service error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/v1/tax/decision":{"post":{"operationId":"tax_decision_create","summary":"Create tax decision","description":"Run the deterministic Dynafis tax decision engine and persist an auditable decision in the QuoAPI technical tenant.","tags":["tax-compliance-api"],"security":[{"BearerAuth":["tax.decision.create"]}],"x-quoapi-capability":"tax.decision.create","x-quoapi-contract-version":"1.0.0:tax.decision.create","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"supplier_country":{"type":"string","x-quoapi-widget":"country","title":"Supplier country","pattern":"^[A-Z]{2}$","x-quoapi-format":"iso-3166-1-alpha-2","default":"DE"},"customer_country":{"type":"string","x-quoapi-widget":"country","title":"Customer country","pattern":"^[A-Z]{2}$","x-quoapi-format":"iso-3166-1-alpha-2","default":"FR"},"supply_type":{"type":"string","x-quoapi-widget":"select","title":"Supply type","enum":["general_service","goods","digital_service"],"default":"general_service"},"customer_type":{"type":"string","x-quoapi-widget":"select","title":"Customer type","enum":["business","consumer"],"default":"business"},"customer_vat_id":{"type":"string","x-quoapi-widget":"text","title":"Customer VAT ID"},"invoice_date":{"type":"string","x-quoapi-widget":"date","title":"Invoice date","format":"date"},"supply_date":{"type":"string","x-quoapi-widget":"date","title":"Supply date","format":"date"},"goods_departure_country":{"type":"string","x-quoapi-widget":"country","title":"Goods departure country","pattern":"^[A-Z]{2}$","x-quoapi-format":"iso-3166-1-alpha-2"},"goods_arrival_country":{"type":"string","x-quoapi-widget":"country","title":"Goods arrival country","pattern":"^[A-Z]{2}$","x-quoapi-format":"iso-3166-1-alpha-2"},"oss_registered":{"type":"boolean","x-quoapi-widget":"boolean","title":"OSS registered","default":false},"ioss_registered":{"type":"boolean","x-quoapi-widget":"boolean","title":"IOSS registered","default":false},"context":{"type":"object","x-quoapi-widget":"object","title":"Additional context","description":"Optional structured evidence/context for the deterministic tax engine."},"country":{"type":"string","pattern":"^[A-Z]{2}$","x-quoapi-widget":"country","x-quoapi-hidden":true,"description":"Optional ISO 3166-1 alpha-2 routing context."},"currency":{"type":"string","pattern":"^[A-Z]{3}$","x-quoapi-widget":"currency","x-quoapi-hidden":true,"description":"Optional ISO 4217 commercial context."}},"additionalProperties":false,"required":["supplier_country","customer_country"]},"example":{"supplier_country":"DE","customer_country":"FR","supply_type":"general_service","customer_type":"business","customer_vat_id":"demo","invoice_date":"demo","supply_date":"demo","goods_departure_country":"DE","goods_arrival_country":"DE","oss_registered":false,"ioss_registered":false,"context":"demo"}}}},"responses":{"200":{"description":"Canonical response","content":{"application/json":{"schema":{"type":"object","required":["data","request_id"],"properties":{"data":{"type":"object","additionalProperties":true,"description":"Canonical QuoAPI tax/compliance response."},"request_id":{"type":"string"}}}}}},"4XX":{"description":"Canonical client error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"5XX":{"description":"Canonical service error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}}},"components":{"securitySchemes":{"BearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"QuoAPI API key"}},"schemas":{"ErrorResponse":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","request_id","details"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"request_id":{"type":"string"},"details":{"type":"object","additionalProperties":true}}}}}}}}