changedOutput schema / anyOf
Previous value: -[
- {
- "additionalProperties": false,
- "properties": {
- "documents": {
- "description": "Existing issued invoices and credit notes with verified recipient authority and current PDF evidence. An empty array means no eligible document was found; it does not assert payment, delivery, or a refund.",
- "items": {
- "additionalProperties": false,
- "properties": {
- "apiDownloadUrl": {
- "description": "Authenticated API download URL. Send the same OAuth bearer and resource; no cookie or secret is embedded in this URL.",
- "format": "uri",
- "type": "string"
- },
- "artifactId": {
- "description": "Identifier of the current verified PDF artifact.",
- "minLength": 1,
- "type": "string"
- },
- "currency": {
- "description": "ISO 4217 currency of this document.",
- "pattern": "^[A-Z]{3}$",
- "type": "string"
- },
- "downloadUrl": {
- "description": "Private customer-session download URL. This URL is not a bearer capability. API clients use the authenticated document download route with the same recordKey and artifactId.",
- "format": "uri",
- "type": "string"
- },
- "fileName": {
- "description": "Suggested download filename.",
- "minLength": 1,
- "type": "string"
- },
- "grossAmountMinor": {
- "description": "Gross total in minor units of currency; 12000 means 120.00 for EUR or GBP.",
- "maximum": 9007199254740991,
- "minimum": 0,
- "type": "integer"
- },
- "id": {
- "description": "Identifier of an existing issued document.",
- "minLength": 1,
- "type": "string"
- },
- "issueDate": {
- "description": "Stored issue date in YYYY-MM-DD.",
- "format": "date",
- "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
- "type": "string"
- },
- "kind": {
- "description": "invoice or credit_note; these are existing documents, not a new refund.",
- "enum": [
- "invoice",
- "credit_note"
- ],
- "type": "string"
- },
- "number": {
- "description": "Stored invoice or credit-note number.",
- "minLength": 1,
- "type": "string"
- },
- "reviewUrl": {
- "description": "Private review page; requires the customer login and current document permission.",
- "format": "uri",
- "type": "string"
- },
- "sha256": {
- "description": "SHA-256 digest of the current PDF bytes.",
- "pattern": "^[a-f0-9]{64}$",
- "type": "string"
- }
- },
- "required": [
- "id",
- "number",
- "kind",
- "issueDate",
- "currency",
- "grossAmountMinor",
- "artifactId",
- "sha256",
- "fileName",
- "reviewUrl",
- "downloadUrl",
- "apiDownloadUrl"
- ],
- "type": "object"
- },
- "maxItems": 64,
- "type": "array"
- },
- "observedAt": {
- "description": "Cutoff for this read in ISO 8601; reauthorization occurs before and after the read. This is not a provider refresh.",
- "format": "date-time",
- "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$",
- "type": "string"
- },
- "recordKey": {
- "description": "Internal record ID returned by this same authorized customer overview, or the record already selected during consent. It grants no access by itself and cannot switch tenant or module.",
- "maxLength": 128,
- "minLength": 1,
- "type": "string"
- },
- "status": {
- "const": "available",
- "type": "string"
- }
- },
- "required": [
- "status",
- "observedAt",
- "recordKey",
- "documents"
- ],
- "type": "object"
- },
- {
- "additionalProperties": false,
- "properties": {
- "status": {
- "const": "invalid_request",
- "type": "string"
- }
- },
- "required": [
- "status"
- ],
- "type": "object"
- },
- {
- "additionalProperties": false,
- "properties": {
- "status": {
- "const": "not_found",
- "type": "string"
- }
- },
- "required": [
- "status"
- ],
- "type": "object"
- },
- {
- "additionalProperties": false,
- "properties": {
- "status": {
- "const": "unavailable",
- "type": "string"
- }
- },
- "required": [
- "status"
- ],
- "type": "object"
- },
- {
- "additionalProperties": false,
- "properties": {
- "status": {
- "const": "consent_required",
- "type": "string"
- }
- },
- "required": [
- "status"
- ],
- "type": "object"
- }
-]New value: +[
+ {
+ "additionalProperties": false,
+ "properties": {
+ "documents": {
+ "description": "Existing issued invoices and credit notes with verified recipient authority and current PDF evidence. An empty array means no eligible document was found; it does not assert payment, delivery, or a refund.",
+ "items": {
+ "additionalProperties": false,
+ "properties": {
+ "apiDownloadUrl": {
+ "description": "Authenticated API download URL. Send the same OAuth bearer and resource; no cookie or secret is embedded in this URL.",
+ "format": "uri",
+ "type": "string"
+ },
+ "artifactId": {
+ "description": "Identifier of the current verified PDF artifact.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "currency": {
+ "description": "ISO 4217 currency of this document.",
+ "pattern": "^[A-Z]{3}$",
+ "type": "string"
+ },
+ "downloadUrl": {
+ "description": "Private customer-session download URL. This URL is not a bearer capability. API clients use the authenticated document download route with the same recordKey and artifactId.",
+ "format": "uri",
+ "type": "string"
+ },
+ "fileName": {
+ "description": "Suggested download filename.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "grossAmountMinor": {
+ "description": "Gross total in minor units of currency; 12000 means 120.00 for EUR or GBP.",
+ "maximum": 9007199254740991,
+ "minimum": 0,
+ "type": "integer"
+ },
+ "id": {
+ "description": "Identifier of an existing issued document.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "issueDate": {
+ "description": "Stored issue date in YYYY-MM-DD.",
+ "format": "date",
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
+ "type": "string"
+ },
+ "kind": {
+ "description": "invoice or credit_note; these are existing documents, not a new refund.",
+ "enum": [
+ "invoice",
+ "credit_note"
+ ],
+ "type": "string"
+ },
+ "number": {
+ "description": "Stored invoice or credit-note number.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "reviewUrl": {
+ "description": "Private review page; requires the customer login and current document permission.",
+ "format": "uri",
+ "type": "string"
+ },
+ "sha256": {
+ "description": "SHA-256 digest of the current PDF bytes.",
+ "pattern": "^[a-f0-9]{64}$",
+ "type": "string"
+ }
+ },
+ "required": [
+ "id",
+ "number",
+ "kind",
+ "issueDate",
+ "currency",
+ "grossAmountMinor",
+ "artifactId",
+ "sha256",
+ "fileName",
+ "reviewUrl",
+ "downloadUrl",
+ "apiDownloadUrl"
+ ],
+ "type": "object"
+ },
+ "maxItems": 64,
+ "type": "array"
+ },
+ "observedAt": {
+ "description": "Cutoff for this read in ISO 8601; reauthorization occurs before and after the read. This is not a provider refresh.",
+ "format": "date-time",
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$",
+ "type": "string"
+ },
+ "paymentEvidence": {
+ "additionalProperties": false,
+ "properties": {
+ "basis": {
+ "const": "verified_stored_provider_settlement",
+ "description": "Events are bound to validated persisted provider settlement sources, the authorized official document and its exact matched bank transaction.",
+ "type": "string"
+ },
+ "currentReversalCoverage": {
+ "const": "not_attested",
+ "description": "Later reversals or disputes may not be covered; do not infer current settlement finality.",
+ "type": "string"
+ },
+ "items": {
+ "description": "Only evidence for the current recipient-authorized record documents; empty is not proof of nonpayment.",
+ "items": {
+ "additionalProperties": false,
+ "properties": {
+ "amountMinor": {
+ "description": "Verified positive event amount in minor currency units; this is not a current outstanding balance.",
+ "exclusiveMinimum": 0,
+ "maximum": 9007199254740991,
+ "type": "integer"
+ },
+ "currency": {
+ "description": "Currency of the verified event. The initial stored Stripe settlement adapter supports EUR.",
+ "pattern": "^[A-Z]{3}$",
+ "type": "string"
+ },
+ "documentId": {
+ "description": "ID of the authorized invoice or credit note to which this evidence is bound.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "id": {
+ "description": "Stable opaque identifier for this authorized stored payment or refund evidence; it grants no access.",
+ "pattern": "^[a-f0-9]{64}$",
+ "type": "string"
+ },
+ "kind": {
+ "description": "Verified stored incoming payment or outgoing refund event, not the invoice or credit note itself.",
+ "enum": [
+ "payment",
+ "refund"
+ ],
+ "type": "string"
+ },
+ "occurredAt": {
+ "description": "Time of the recorded provider event; no fresh provider request was made.",
+ "format": "date-time",
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$",
+ "type": "string"
+ },
+ "provider": {
+ "const": "stripe",
+ "description": "Provider of the persisted verified event, not a new provider confirmation.",
+ "type": "string"
+ }
+ },
+ "required": [
+ "id",
+ "documentId",
+ "kind",
+ "amountMinor",
+ "currency",
+ "occurredAt",
+ "provider"
+ ],
+ "type": "object"
+ },
+ "maxItems": 64,
+ "type": "array"
+ },
+ "liveProviderRefresh": {
+ "const": false,
+ "description": "Always false: no provider refresh, payment, refund, document issuance or delivery occurs.",
+ "type": "boolean"
+ },
+ "status": {
+ "description": "available has verified stored events; not_available means no eligible proof was found, not unpaid or unrefunded; unavailable means proof could not be checked safely.",
+ "enum": [
+ "available",
+ "not_available",
+ "unavailable"
+ ],
+ "type": "string"
+ }
+ },
+ "required": [
+ "status",
+ "basis",
+ "liveProviderRefresh",
+ "currentReversalCoverage",
+ "items"
+ ],
+ "type": "object"
+ },
+ "recordKey": {
+ "description": "Internal record ID returned by this same authorized customer overview, or the record already selected during consent. It grants no access by itself and cannot switch tenant or module.",
+ "maxLength": 128,
+ "minLength": 1,
+ "type": "string"
+ },
+ "status": {
+ "const": "available",
+ "type": "string"
+ }
+ },
+ "required": [
+ "status",
+ "observedAt",
+ "recordKey",
+ "documents"
+ ],
+ "type": "object"
+ },
+ {
+ "additionalProperties": false,
+ "properties": {
+ "status": {
+ "const": "invalid_request",
+ "type": "string"
+ }
+ },
+ "required": [
+ "status"
+ ],
+ "type": "object"
+ },
+ {
+ "additionalProperties": false,
+ "properties": {
+ "status": {
+ "const": "not_found",
+ "type": "string"
+ }
+ },
+ "required": [
+ "status"
+ ],
+ "type": "object"
+ },
+ {
+ "additionalProperties": false,
+ "properties": {
+ "status": {
+ "const": "unavailable",
+ "type": "string"
+ }
+ },
+ "required": [
+ "status"
+ ],
+ "type": "object"
+ },
+ {
+ "additionalProperties": false,
+ "properties": {
+ "status": {
+ "const": "consent_required",
+ "type": "string"
+ }
+ },
+ "required": [
+ "status"
+ ],
+ "type": "object"
+ }
+]