{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/bancomat/main/json-schema/bancomat-pago-pa-schema.json", "title": "pagoPA", "description": "PagoPA payment information", "x-generated": "2026-10-12", "x-method": "derived", "x-generator": "derive-json-schema.py", "x-source": "openapi/bancomat-documents-api-openapi.yml#/components/schemas/pagoPA", "type": "object", "properties": { "fingerprint": { "description": "Fingerprint generated for the document", "$ref": "#/$defs/Fingerprint" }, "ec": { "$ref": "#/$defs/CompanyVATNumber", "description": "Public administration VAT number" }, "debtor": { "$ref": "#/$defs/Contact", "description": "Debtor information" }, "remittance": { "type": "string", "description": "Remittance information" }, "amount": { "type": "number", "format": "double", "description": "Amount to be paid", "x-faker": "finance.amount" }, "status": { "$ref": "#/$defs/pagoPAStatus" } }, "required": [ "fingerprint", "ec", "debtor", "remittance", "amount", "status" ], "$defs": { "CompanyVATNumber": { "type": "string", "description": "VAT number of the company, full european format", "pattern": "/^((AT)(U\\d{8})|(BE)(0\\d{9})|(BG)(\\d{9,10})|(CY)(\\d{8}[LX])|(CZ)(\\d{8,10})|(DE)(\\d{9})|(DK)(\\d{8})|(EE)(\\d{9})|(EL|GR)(\\d{9})|(ES)([\\dA-Z]\\d{7}[\\dA-Z])|(FI)(\\d{8})|(FR)([\\dA-Z]{2}\\d{9})|(HU)(\\d{8})|(IE)(\\d{7}[A-Z]{2})|(IT)(\\d{11})|(LT)(\\d{9}|\\d{12})|(LU)(\\d{8})|(LV)(\\d{11})|(MT)(\\d{8})|(NL)(\\d{9}(B\\d{2}|BO2))|(PL)(\\d{10})|(PT)(\\d{9})|(RO)(\\d{2,10})|(SE)(\\d{12})|(SI)(\\d{8})|(SK)(\\d{10}))$", "x-faker": "finance.vat" }, "ConsumerNationalID": { "type": "string", "description": "National ID of the consumer, currently only italian format is supported", "pattern": "/^([A-Z]{6}\\d{2}[A-Z]\\d{2}[A-Z]\\d{3}[A-Z])$" }, "Contact": { "type": "object", "properties": { "fullName": { "description": "Full name of the contact, contains the concatenation of the name and surname of a consumer, or the name of a company.", "oneOf": [ { "type": "string", "description": "Full name of the consumer", "x-faker": "person.fullName" }, { "type": "string", "description": "Company name", "x-faker": "company.companyName" } ] }, "fullVat": { "type": "string", "description": "VAT number of the company in full european format or national ID of the consumer ", "oneOf": [ { "$ref": "#/$defs/ConsumerNationalID" }, { "$ref": "#/$defs/CompanyVATNumber" } ] }, "type": { "type": "string", "enum": [ "consumer", "company" ], "description": "Type of the contact" } } }, "Fingerprint": { "type": "string", "description": "Fingerprint of the document" }, "pagoPAStatus": { "type": "string", "enum": [ "ready", "activated", "locked", "paid", "paidOnAnotherProvider" ], "description": { "$ref": "docs/pagopa_status.md" } } } }