{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/storecove/main/json-schema/storecove-document-submission-schema.json",
  "title": "Document submission",
  "description": "The document you want Storecove to send, with some meta-data.",
  "x-generated": "2026-10-18",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/storecove-openapi.yml#/components/schemas/DocumentSubmission",
  "type": "object",
  "properties": {
    "routing": {
      "allOf": [
        {
          "$ref": "#/$defs/Routing"
        },
        {
          "title": "Routing destinations",
          "description": "Specifies where the document is to be sent. Can be electronic identifiers or email addresses."
        }
      ]
    },
    "legalEntityId": {
      "title": "LegalEntity Id",
      "description": "The id of the LegalEntity this document should be sent on behalf of. Either legalEntityId or forDocumentGuid is mandatory, unless the document type uses forDocumentSubmissionGuid instead.",
      "type": "integer"
    },
    "receiveGuid": {
      "title": "Receive GUID",
      "description": "DEPRECATED. The GUID that was in the received_document webhook. Use forDocumentGuid instead.",
      "type": "string",
      "deprecated": true
    },
    "forDocumentGuid": {
      "title": "For Document GUID",
      "description": "The GUID that was in the received_document webhook. Use this field for document types that refer to a received document, such as InvoiceResponse, OrderResponse and DuplicateDetection. Provide forDocumentGuid instead of legalEntityId for those flows.",
      "type": "string"
    },
    "forDocumentSubmissionGuid": {
      "title": "For DocumentSubmission GUID",
      "description": "The GUID of an earlier DocumentSubmission that this submission refers to. For documentType=payment_received_notification, this must be the GUID of the original French invoice DocumentSubmission the payment notification is for. For this document type, provide forDocumentSubmissionGuid instead of legalEntityId or forDocumentGuid.",
      "type": "string"
    },
    "idempotencyGuid": {
      "title": "Idempotency GUID",
      "description": "A guid that you generated for this DocumentSubmission to achieve idempotency. If you submit multiple documents with the same idempotencyGuid, only the first one will be processed and any subsequent ones will trigger an HTTP 422 Unprocessable Entity response.",
      "type": "string",
      "minLength": 36,
      "maxLength": 36
    },
    "createPrimaryImage": {
      "title": "Create Primary Image",
      "description": "DEPRECATED. In the future we will no longer support creating PDF invoices. Whether or not to create a primary image (PDF) if one is not provided. For customers who started from April 1st 2023, the default is false. For customers who started before that, the default is true.",
      "type": "boolean",
      "deprecated": true
    },
    "attachments": {
      "title": "Attachments",
      "description": "DEPRECATED. Use the attachments array inside the 'document' property. An array of attachments. You may provide up to 10 attchments, but the total size must not exceed 100MB after Base64 encoding.",
      "type": "array",
      "maxItems": 10,
      "items": {
        "$ref": "#/$defs/Attachment"
      },
      "deprecated": true
    },
    "document": {
      "$ref": "#/$defs/SendableDocument"
    }
  },
  "$defs": {
    "AccountingCustomerParty": {
      "title": "Customer",
      "description": "The customer receiving the document.",
      "type": "object",
      "properties": {
        "party": {
          "$ref": "#/$defs/Party"
        },
        "publicIdentifiers": {
          "title": "Public identifiers",
          "description": "A list of legal and tax identifiers for this customer.",
          "type": "array",
          "items": {
            "$ref": "#/$defs/PublicIdentifier"
          }
        }
      },
      "required": [
        "party"
      ]
    },
    "AccountingSupplierParty": {
      "title": "Supplier",
      "description": "The supplier sending the invoice. When you are doing the sending, most data for the AccountingSupplierParty is taken from the LegalEntity in the Storecove database, where your sender identity resides and has been validated. However, we provide a limited number of fields (mainly contact fields) here that you can specify on a document-by-document basis. For receiving, the full party object can be received.",
      "type": "object",
      "properties": {
        "party": {
          "$ref": "#/$defs/Party"
        },
        "publicIdentifiers": {
          "title": "Public identifiers",
          "description": "A list of legal and tax identifiers for this supplier.",
          "type": "array",
          "items": {
            "$ref": "#/$defs/PublicIdentifier"
          }
        }
      }
    },
    "AdditionalItemProperty": {
      "title": "Additional Item Property",
      "description": "An additional property for the item. Two valid forms: (a) textual — both `name` and `value` must be present; (b) coded measurement (FR-FE EXT-FR-FE-159/160/161) — all of `nameCode`, `valueQuantity` and `valueQuantityUnitCode` must be present. Cross-form validation is enforced by InvoiceSubmissionValidationService because our JSON Schema dialect does not support anyOf/allOf.",
      "type": "object",
      "properties": {
        "name": {
          "title": "Name",
          "description": "The free-text name of the property. Maps to UBL AdditionalItemProperty/Name and CII ApplicableProductCharacteristic/Description.",
          "type": "string",
          "minLength": 1
        },
        "value": {
          "title": "Value",
          "description": "The free-text value of the property. Maps to UBL AdditionalItemProperty/Value and CII ApplicableProductCharacteristic/Value.",
          "type": "string"
        },
        "nameCode": {
          "title": "Name Code",
          "description": "Coded identifier for the property (FR-FE EXT-FR-FE-159). Must be a UN/EDIFACT 6313 code (https://service.unece.org/trade/untdid/d00a/tred/tred6313.htm). Maps to UBL AdditionalItemProperty/NameCode and CII ApplicableProductCharacteristic/TypeCode.",
          "type": "string"
        },
        "valueQuantity": {
          "title": "Value Quantity",
          "description": "Numeric value of the measured property (FR-FE EXT-FR-FE-160). Maps to UBL AdditionalItemProperty/ValueQuantity and CII ApplicableProductCharacteristic/ValueMeasure.",
          "type": "string"
        },
        "valueQuantityUnitCode": {
          "title": "Value Quantity Unit Code",
          "description": "Unit of measure for `valueQuantity` (FR-FE EXT-FR-FE-161). Maps to UBL AdditionalItemProperty/ValueQuantity@unitCode and CII ApplicableProductCharacteristic/ValueMeasure@unitCode.",
          "type": "string"
        }
      }
    },
    "Address": {
      "title": "Address",
      "description": "The address",
      "type": "object",
      "properties": {
        "street1": {
          "title": "Street 1",
          "description": "The street name and number. Mandatory in most countries.",
          "type": "string",
          "minLength": 2
        },
        "street2": {
          "title": "Street 2",
          "description": "The second street field. Use this if you used the first field for the building name.",
          "type": "string"
        },
        "city": {
          "title": "City",
          "description": "The name of the city. Mandatory in most countries.",
          "type": "string",
          "minLength": 2
        },
        "zip": {
          "title": "Zipcode",
          "description": "The zipcode/postalzone. Mandatory unless the country does not have zip codes.",
          "type": "string",
          "minLength": 2
        },
        "county": {
          "title": "County",
          "description": "An optional county name.",
          "type": "string"
        },
        "country": {
          "$ref": "#/$defs/Country"
        }
      },
      "required": [
        "country"
      ]
    },
    "AllowanceCharge": {
      "title": "Allowance or Charge",
      "type": "object",
      "properties": {
        "amountExcludingVat": {
          "title": "Amount",
          "description": "DEPRECATED. Use amountExcludingTax. The amount for the allowance or charge, excluding VAT.",
          "type": "number",
          "deprecated": true
        },
        "amountExcludingTax": {
          "title": "Amount Excluding Tax",
          "description": "The amount for the allowance or charge, excluding tax.",
          "type": "number"
        },
        "baseAmountExcludingTax": {
          "title": "Base Amount Excluding Tax",
          "description": "The base amount for the allowance or charge, excluding tax.",
          "type": "number"
        },
        "amountIncludingTax": {
          "title": "Amount Including Tax",
          "description": "The amount for the allowance or charge, including tax.",
          "type": "number"
        },
        "baseAmountIncludingTax": {
          "title": "Base Amount Including Tax",
          "description": "The base amount for the allowance or charge, including tax.",
          "type": "number"
        },
        "tax": {
          "allOf": [
            {
              "$ref": "#/$defs/Tax"
            },
            {
              "title": "Tax",
              "description": "DEPRECATED. Use the taxesDutiesFees array. The tax for this allowance or charge.",
              "deprecated": true
            }
          ],
          "deprecated": true
        },
        "taxesDutiesFees": {
          "title": "Taxes, Duties and Fees",
          "description": "An array of taxes, duties and fees for this invoice line. At this moment, multiple Tax items is allowed only for IN (India) and US (USA) taxes. All other countries can only have a single Tax item in this array.",
          "type": "array",
          "items": {
            "$ref": "#/$defs/Tax"
          },
          "minItems": 0
        },
        "reason": {
          "title": "Reason",
          "description": "The reason for the allowance or charge, free text. Defaults to 'Mutually Agreed' if neither reason nor reasonCode are provided.",
          "type": "string"
        },
        "reasonCode": {
          "title": "Reason Code",
          "description": "The reason code for the allowance or charge",
          "type": "string"
        },
        "taxExemptionReason": {
          "title": "Tax Exemption Reason",
          "description": "Free-text reason explaining why the tax on this allowance or charge is exempt or zero-rated. Used for the French e-invoicing reform (FR-FE EXT-FR-FE-187/189). Maps to UBL AllowanceCharge/TaxCategory/TaxExemptionReason and CII SpecifiedTradeAllowanceCharge/CategoryTradeTax/ExemptionReason.",
          "type": "string"
        },
        "taxExemptionReasonCode": {
          "title": "Tax Exemption Reason Code",
          "description": "Coded reason (VATEX code) explaining why the tax on this allowance or charge is exempt or zero-rated. Used for the French e-invoicing reform (FR-FE EXT-FR-FE-188/190). Maps to UBL AllowanceCharge/TaxCategory/TaxExemptionReasonCode and CII SpecifiedTradeAllowanceCharge/CategoryTradeTax/ExemptionReasonCode.",
          "type": "string"
        }
      }
    },
    "Attachment": {
      "title": "Invoice Attachment",
      "description": "A document attachment to the invoice.",
      "type": "object",
      "properties": {
        "document": {
          "title": "Document Attachment",
          "description": "The base64 encoded version of the document attachment.",
          "type": "string",
          "minLength": 5
        },
        "mimeType": {
          "title": "Mime Type",
          "description": "The document attachment mime type.",
          "type": "string",
          "enum": [
            "text/csv",
            "application/pdf",
            "image/png",
            "image/jpeg",
            "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
            "application/vnd.oasis.opendocument.spreadsheet"
          ]
        },
        "filename": {
          "title": "Filename",
          "description": "The name of the file attachment.",
          "type": "string",
          "pattern": "^[\\p{L}\\p{N}\\p{M}_](?:[\\p{L}\\p{N}\\p{M}\\._-]*[\\p{L}\\p{N}\\p{M}_])?\\.[\\p{L}\\p{N}\\p{M}_-]+$"
        },
        "description": {
          "title": "Description",
          "description": "A description for the file attachment.",
          "type": "string",
          "maxLength": 1024
        },
        "documentId": {
          "title": "Document Id",
          "description": "An id for the file attachment.",
          "type": "string",
          "maxLength": 64
        },
        "primaryImage": {
          "title": "Primary Image",
          "description": "DEPRECATED. Whether or not this document is a visual representation of the invoice data. Note that using value 'true' is discouraged, since the invoice data itself is leading, not the image, and including an image may lead to confusion. Peppol no longer allows including primary images.",
          "type": "boolean",
          "default": false,
          "deprecated": true
        }
      },
      "required": [
        "document",
        "mimeType"
      ]
    },
    "BuyerAgentParty": {
      "title": "Buyer Agent Party",
      "description": "An agent acting on behalf of the buyer. Used in the French e-invoicing reform (FR-FE EXT-FR-FE-BG-01). Maps to UBL AccountingCustomerParty/Party/AgentParty and CII BuyerAgentTradeParty.",
      "type": "object",
      "properties": {
        "party": {
          "$ref": "#/$defs/Party"
        },
        "publicIdentifiers": {
          "title": "Public identifiers",
          "description": "A list of legal and tax identifiers for this party.",
          "type": "array",
          "items": {
            "$ref": "#/$defs/PublicIdentifier"
          }
        }
      },
      "required": [
        "party"
      ]
    },
    "BuyerCustomerPartyOrder": {
      "title": "Buyer",
      "description": "The buyer sending the order.",
      "type": "object",
      "properties": {
        "party": {
          "$ref": "#/$defs/SenderParty"
        }
      },
      "required": [
        "party"
      ]
    },
    "Contact": {
      "title": "Contact",
      "description": "Contact details for the invoice",
      "type": "object",
      "properties": {
        "firstName": {
          "title": "First name",
          "type": "string"
        },
        "lastName": {
          "title": "Last name",
          "type": "string"
        },
        "email": {
          "title": "Email address",
          "type": "string",
          "format": "email"
        },
        "phone": {
          "title": "Phone number",
          "type": "string",
          "maxLength": 24
        },
        "id": {
          "title": "Id",
          "description": "Only supported for AccountingCustomerParty.",
          "type": "string",
          "maxLength": 20
        }
      }
    },
    "Country": {
      "title": "Country",
      "description": "An ISO 3166-1 alpha-2 country code.",
      "type": "string",
      "enum": [
        "AD",
        "AE",
        "AF",
        "AG",
        "AI",
        "AL",
        "AM",
        "AO",
        "AQ",
        "AR",
        "AS",
        "AT",
        "AU",
        "AW",
        "AX",
        "AZ",
        "BA",
        "BB",
        "BD",
        "BE",
        "BF",
        "BG",
        "BH",
        "BI",
        "BJ",
        "BL",
        "BM",
        "BN",
        "BO",
        "BQ",
        "BR",
        "BS",
        "BT",
        "BV",
        "BW",
        "BY",
        "BZ",
        "CA",
        "CC",
        "CD",
        "CF",
        "CG",
        "CH",
        "CI",
        "CK",
        "CL",
        "CM",
        "CN",
        "CO",
        "CR",
        "CU",
        "CV",
        "CW",
        "CX",
        "CY",
        "CZ",
        "DE",
        "DJ",
        "DK",
        "DM",
        "DO",
        "DZ",
        "EC",
        "EE",
        "EG",
        "EH",
        "ER",
        "ES",
        "ET",
        "FI",
        "FJ",
        "FK",
        "FM",
        "FO",
        "FR",
        "GA",
        "GB",
        "GD",
        "GE",
        "GF",
        "GG",
        "GH",
        "GI",
        "GL",
        "GM",
        "GN",
        "GP",
        "GQ",
        "GR",
        "GS",
        "GT",
        "GU",
        "GW",
        "GY",
        "HK",
        "HM",
        "HN",
        "HR",
        "HT",
        "HU",
        "ID",
        "IE",
        "IL",
        "IM",
        "IN",
        "IO",
        "IQ",
        "IR",
        "IS",
        "IT",
        "JE",
        "JM",
        "JO",
        "JP",
        "KE",
        "KG",
        "KH",
        "KI",
        "KM",
        "KN",
        "KP",
        "KR",
        "KW",
        "KY",
        "KZ",
        "LA",
        "LB",
        "LC",
        "LI",
        "LK",
        "LR",
        "LS",
        "LT",
        "LU",
        "LV",
        "LY",
        "MA",
        "MC",
        "MD",
        "ME",
        "MF",
        "MG",
        "MH",
        "MK",
        "ML",
        "MM",
        "MN",
        "MO",
        "MP",
        "MQ",
        "MR",
        "MS",
        "MT",
        "MU",
        "MV",
        "MW",
        "MX",
        "MY",
        "MZ",
        "NA",
        "NC",
        "NE",
        "NF",
        "NG",
        "NI",
        "NL",
        "NO",
        "NP",
        "NR",
        "NU",
        "NZ",
        "OM",
        "PA",
        "PE",
        "PF",
        "PG",
        "PH",
        "PK",
        "PL",
        "PM",
        "PN",
        "PR",
        "PS",
        "PT",
        "PW",
        "PY",
        "QA",
        "RE",
        "RO",
        "RS",
        "RU",
        "RW",
        "SA",
        "SB",
        "SC",
        "SD",
        "SE",
        "SG",
        "SH",
        "SI",
        "SJ",
        "SK",
        "SL",
        "SM",
        "SN",
        "SO",
        "SR",
        "SS",
        "ST",
        "SV",
        "SX",
        "SY",
        "SZ",
        "TC",
        "TD",
        "TF",
        "TG",
        "TH",
        "TJ",
        "TK",
        "TL",
        "TM",
        "TN",
        "TO",
        "TR",
        "TT",
        "TV",
        "TW",
        "TZ",
        "UA",
        "UG",
        "UM",
        "US",
        "UY",
        "UZ",
        "VA",
        "VC",
        "VE",
        "VG",
        "VI",
        "VN",
        "VU",
        "WF",
        "WS",
        "YE",
        "YT",
        "ZA",
        "ZM",
        "ZW",
        "XK",
        "XI"
      ]
    },
    "CurrencyCode": {
      "title": "Currency",
      "description": "The ISO 4217 currency code.",
      "type": "string",
      "enum": [
        "AED",
        "AFN",
        "ALL",
        "AMD",
        "ANG",
        "AOA",
        "ARS",
        "AUD",
        "AWG",
        "AZN",
        "BAM",
        "BBD",
        "BDT",
        "BGN",
        "BHD",
        "BIF",
        "BMD",
        "BND",
        "BOB",
        "BOV",
        "BRL",
        "BSD",
        "BTN",
        "BWP",
        "BYN",
        "BZD",
        "CAD",
        "CDF",
        "CHE",
        "CHF",
        "CHW",
        "CLF",
        "CLP",
        "CNH",
        "CNY",
        "COP",
        "COU",
        "CRC",
        "CUC",
        "CUP",
        "CVE",
        "CZK",
        "DJF",
        "DKK",
        "DOP",
        "DZD",
        "EGP",
        "ERN",
        "ETB",
        "EUR",
        "FJD",
        "FKP",
        "GBP",
        "GEL",
        "GHS",
        "GIP",
        "GMD",
        "GNF",
        "GTQ",
        "GYD",
        "HKD",
        "HNL",
        "HTG",
        "HUF",
        "IDR",
        "ILS",
        "INR",
        "IQD",
        "IRR",
        "ISK",
        "JMD",
        "JOD",
        "JPY",
        "KES",
        "KGS",
        "KHR",
        "KMF",
        "KPW",
        "KRW",
        "KWD",
        "KYD",
        "KZT",
        "LAK",
        "LBP",
        "LKR",
        "LRD",
        "LSL",
        "LYD",
        "MAD",
        "MDL",
        "MGA",
        "MKD",
        "MMK",
        "MNT",
        "MOP",
        "MRU",
        "MUR",
        "MVR",
        "MWK",
        "MXN",
        "MXV",
        "MYR",
        "MZN",
        "NAD",
        "NGN",
        "NIO",
        "NOK",
        "NPR",
        "NZD",
        "OMR",
        "PAB",
        "PEN",
        "PGK",
        "PHP",
        "PKR",
        "PLN",
        "PYG",
        "QAR",
        "RON",
        "RSD",
        "RUB",
        "RWF",
        "SAR",
        "SBD",
        "SCR",
        "SDG",
        "SEK",
        "SGD",
        "SHP",
        "SLE",
        "SLL",
        "SOS",
        "SRD",
        "SSP",
        "STN",
        "SYP",
        "SZL",
        "THB",
        "TJS",
        "TMT",
        "TND",
        "TOP",
        "TRY",
        "TTD",
        "TWD",
        "TZS",
        "UAH",
        "UGX",
        "USD",
        "USN",
        "UYI",
        "UYU",
        "UZS",
        "VED",
        "VES",
        "VND",
        "VUV",
        "WST",
        "XAF",
        "XAG",
        "XAU",
        "XBA",
        "XBB",
        "XBC",
        "XBD",
        "XCD",
        "XDR",
        "XFU",
        "XOF",
        "XPD",
        "XPF",
        "XPT",
        "XSU",
        "XTS",
        "XUA",
        "XXX",
        "YER",
        "ZAR",
        "ZMW"
      ]
    },
    "Delivery": {
      "type": "object",
      "properties": {
        "deliveryLocation": {
          "type": "object",
          "properties": {
            "id": {
              "title": "Identifier",
              "description": "The location identifier.",
              "type": "string",
              "minLength": 2
            },
            "schemeId": {
              "title": "Identifier Scheme ID",
              "description": "The schemeId of the location identifier (e.g. 'EAN')",
              "type": "string"
            },
            "schemeAgencyId": {
              "title": "Identifier Scheme Agency ID",
              "description": "DEPRECATED. The schemeAgencyId of the location identifier (e.g. 'ZZZ')",
              "type": "string",
              "deprecated": true
            },
            "locationName": {
              "title": "Location Name",
              "description": "The name of the delivery location. Only used for DocumentOrder.",
              "type": "string",
              "maxLength": 128
            },
            "address": {
              "allOf": [
                {
                  "$ref": "#/$defs/Address"
                },
                {
                  "description": "The address of the delivery location."
                }
              ]
            }
          }
        },
        "requestedDeliveryPeriod": {
          "title": "Requested Delivery Period",
          "description": "The requested delivery period. Used only for DocumentOrder. Will also be used for DocumentOrder order lines, if that order line does not specify its own delivery period.",
          "type": "string",
          "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2} - [0-9]{4}-[0-9]{2}-[0-9]{2}$"
        },
        "actualDeliveryDate": {
          "title": "Actual Delivery Date",
          "description": "The actual date of the delivery. Used only for Invoice",
          "type": "string",
          "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}$"
        },
        "quantity": {
          "title": "Quantity",
          "description": "The quantity of the delivery. Used only for Invoice",
          "type": "number",
          "default": 1.0
        },
        "deliveryPartyName": {
          "title": "Delivery Party Name",
          "description": "DEPRECATED. Use deliveryParty. The name of the party that took delivery. Used only for Invoice",
          "type": "string",
          "deprecated": true
        },
        "deliveryParty": {
          "allOf": [
            {
              "$ref": "#/$defs/DeliveryParty"
            },
            {
              "description": "The party to whom the delivery takes place."
            }
          ]
        },
        "shipment": {
          "allOf": [
            {
              "$ref": "#/$defs/Shipment"
            },
            {
              "description": "The shipment for the delivery."
            }
          ]
        },
        "shippingMarks": {
          "title": "Shipping Marks",
          "description": "DEPRECATED. Use the shipment object. A text that the buyer requests to be printed on the packing labels. Used only for DocumentOrder.",
          "type": "string",
          "maxLength": 128,
          "deprecated": true
        }
      }
    },
    "DeliveryParty": {
      "title": "Delivery Party",
      "description": "The party receiving the shipment.",
      "type": "object",
      "properties": {
        "party": {
          "$ref": "#/$defs/ReceiverParty"
        },
        "publicIdentifiers": {
          "title": "Public identifiers",
          "description": "A list of legal and tax identifiers for this delivery party.",
          "type": "array",
          "items": {
            "$ref": "#/$defs/PublicIdentifier"
          }
        }
      },
      "required": [
        "party"
      ]
    },
    "DeliveryTerms": {
      "type": "object",
      "properties": {
        "incoterms": {
          "title": "Incoterms",
          "description": "The incoterms:\n++++\n<ul>    <li>        <strong>EXW – Ex Works</strong><br/>        The seller must give the buyer access to goods at an agreed location. From that moment, the buyer bears almost all costs and risks during the entire shipping process.<br/>    </li>    <li>        <strong>FCA – Free Carrier</strong><br/>        The seller must make the goods available at his own risk and expense at his own premises or at an agreed place. In both cases, the seller is responsible for the clearance of the goods for export. It can be agreed that the buyer must instruct the carrier to transfer a “Bill of Lading (BL)” with a note on board to the seller.    </li>    <li>        <strong>CPT – Carriage Paid To</strong><br/>        The seller has the same responsibilities as with FCA, but in this case also pays the delivery costs.    </li>    <li>        <strong>CIP – Carriage Insurance Paid To</strong><br/>        The same seller responsibilities as with CPT, only in this case the seller is obliged to pay the insurance with a high coverage ratio. Parties can agree separately to apply limited coverage.    </li>    <li>        <strong>DAP – Delivered At Place</strong><br/>        The seller bears the costs and risks during the transport of the goods to an agreed address. As soon as the goods have arrived at this address and are ready for unloading, the risk passes to the buyer.    </li>    <li>        <strong>DPU – Delivered at Place Unloaded</strong><br/>        The seller is responsible for the costs and risks of delivering goods to an agreed destination where goods can be unloaded for further transport. The selling party arranges customs and unloads the goods at the agreed place. The buyer arranges the customs clearance and any associated rights.    </li>    <li>        <strong>DDP – Delivered Duty Paid</strong><br/>        The seller bears the costs and risks of transport, carries out the export and import responsibilities and pays any import duties. As soon as the goods have arrived at the address and are ready for unloading, the risk passes to the buyer.    </li>    <li>        <strong>FAS – Free Alongside Ship</strong><br/>        The seller bears all costs and risks until the goods are delivered next to the ship. From that point, the risk is for the buyer and he also arranges the export clearance and import clearance.    </li>    <li>        <strong>FOB – Free On Board</strong><br/>        The seller bears all costs and risks until the goods are on board the ship and also arranges the export clearance. As soon as the goods have been delivered to the ship, the buyer bears all responsibilities.    </li>    <li>        <strong>CFR – Cost And Freight</strong><br/>        The same applies to the seller and buyer as with FOB, but in this case, the seller must also pay for the transport of the goods to the port.    </li>    <li>        <strong>CIF – Cost, Insurance, and Freight</strong><br/>        The seller has the same obligations as with CFR but also pays the (minimum) insurance costs. The buyer must pay for more comprehensive insurance.    </li></ul>\n++++",
          "type": "string",
          "enum": [
            "EXW",
            "FCA",
            "CPT",
            "CIP",
            "DAP",
            "DPU",
            "DDP",
            "FAS",
            "FOB",
            "CFR",
            "CIF"
          ]
        },
        "specialTerms": {
          "title": "Special Terms",
          "description": "A description of special conditions relating to the delivery terms.",
          "type": "string",
          "maxLength": 512
        },
        "deliveryLocationId": {
          "title": "Delivery Location Id",
          "description": "The location to which the delivery terms refer.",
          "type": "string",
          "maxLength": 128
        }
      }
    },
    "DocumentInvoiceReport": {
      "title": "Document Invoice Report",
      "description": "The invoice report to send. Reports a received invoice (forDocumentGuid) to the tax authority as a purchase, reusing the data of the received invoice.\n++++\n<p>For SG (IRAS) the received invoice is reported on the payables profile, so every GST category on it is converted to its purchase invoice code (see the SG table in Tax). Received invoices can be reported with invoice_report when every GST category is either one of the sales categories standard (SR), outside_scope (OS), zero_rated (ZR), not_registered (NG), not_applicable (NA), srca_c (SRCA-C), regulation33_exempt (ES33) and nonregulation33_exempt (ESN33), which are converted, or already a purchase category (the purchase invoice column of the SG table, for example TXCA or EP on an invoice received via the API), which is kept as is. Received invoices that contain deemed_supply (DS), srlvg (SRLVG), srovr_rs (SROVR-RS), srovr_lvg (SROVR-LVG), srca_s (SRCA-S) or export are rejected with a 422 on forDocumentGuid; report those as a self-billing invoice (documentType invoice with selfBillingMode true) using the purchase GST categories.</p>\n++++",
      "type": "object",
      "properties": {
        "action": {
          "title": "Action",
          "description": "The action to take.",
          "type": "string",
          "pattern": "^send$"
        }
      },
      "required": [
        "action"
      ]
    },
    "DocumentInvoiceResponse": {
      "title": "Document Invoice Response",
      "description": "The invoice response to send or received.",
      "type": "object",
      "properties": {
        "id": {
          "title": "Invoice Response ID",
          "description": "The identifier of the Invoice Response / ApplicationResponse document (UBL cbc:ID). Present on received responses in document_submission webhooks (acknowledged, in_process, and later buyer statuses). Not required when you send an invoice response.",
          "type": "string"
        },
        "clarifications": {
          "title": "Clarifications",
          "description": "A list of clarifications why a received invoice was rejected (RE), under query (UQ) or partially approved (CA), and what action to take. For responses CA, UQ and RE, at least one clarification with a clarificationCode is required. For invoices received through the French (fr-dgfip) workflow, at least one of them must have clarificationCodeType OPStatusReason.",
          "type": "array",
          "items": {
            "$ref": "#/$defs/InvoiceResponseClarification"
          },
          "minItems": 0
        },
        "effectiveDate": {
          "title": "Effective Date",
          "description": "The date when the status became effective. Format: yyyy-mm-dd.",
          "type": "string",
          "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}$"
        },
        "note": {
          "title": "Note",
          "description": "A note to add to the invoice reponse",
          "type": "string"
        },
        "responseCode": {
          "title": "Response Code",
          "description": "The response code. For details see https://docs.peppol.eu/poacc/upgrade-3/codelist/UNCL4343-T111/. For invoices received through the French (fr-dgfip) workflow, Storecove delivers the response to the supplier over Peppol using the corresponding French lifecycle (CDV) status: AB/AP as 205 Approuvée, IP as 204 Prise en charge, CA as 206 Approuvée partiellement, UQ as 207 En litige, RE as 210 Refusée and PD as 211 Paiement transmis. Only RE (210 Refusée) is subsequently reported to the PPF; facultative statuses (204–207, 211) are Peppol-only and are never transmitted to the tax administration. See the France appendix for details.",
          "type": "string",
          "enum": [
            "AB",
            "IP",
            "UQ",
            "CA",
            "RE",
            "AP",
            "PD"
          ]
        }
      },
      "required": [
        "receivedInvoiceGuid",
        "responseCode"
      ]
    },
    "DocumentOrder": {
      "title": "Order",
      "description": "The order to send.",
      "type": "object",
      "properties": {
        "taxSystem": {
          "title": "Tax System",
          "description": "The tax system used for the invoice. The system 'tax_line_percentages' is the only one currently supported.",
          "type": "string",
          "enum": [
            "tax_line_percentages"
          ],
          "default": "tax_line_percentages"
        },
        "documentNumber": {
          "title": "Document number",
          "description": "The number you assigned to the document.",
          "type": "string",
          "minLength": 1
        },
        "references": {
          "title": "References",
          "description": "An array of references to other documents. Note that many syntaxes do not support multiple references of the same type in which case they will be concatenated with ','. Also, not all syntaxes and doucments support all documentTypes.",
          "type": "array",
          "items": {
            "$ref": "#/$defs/Reference"
          },
          "minItems": 0
        },
        "issueDate": {
          "title": "Document issue date",
          "description": "Format: yyyy-mm-dd.",
          "type": "string",
          "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}$"
        },
        "issueTime": {
          "title": "Document issue time",
          "description": "Format: hh:mm:ss",
          "type": "string",
          "pattern": "^[0-9]{2}:[0-9]{2}:[0-9]{2}$"
        },
        "timeZone": {
          "title": "Document issue timezone",
          "description": "Format: ±zzzz, where ±zzzz is the difference from UTC, e.g. +0100 or -0900 etc. The timezone will also apply to the document issue date if this field is provided.",
          "type": "string",
          "pattern": "^[+-]\\d{4}$"
        },
        "orderType": {
          "title": "Order Type",
          "description": "The type of this order.",
          "type": "string",
          "enum": [
            "regular",
            "consignment"
          ],
          "default": "regular"
        },
        "note": {
          "title": "Note",
          "description": "A note to add to the document",
          "type": "string",
          "maxLength": 255
        },
        "documentCurrencyCode": {
          "allOf": [
            {
              "$ref": "#/$defs/CurrencyCode"
            },
            {
              "description": "The documentCurrencyCode is the currency for the entire invoice. We currently do not support invoices in multiple currencies. If left out, will default to EUR",
              "default": "EUR"
            }
          ]
        },
        "accountingCost": {
          "title": "Accounting Cost",
          "description": "The buyer's accounting cost centre for this document.",
          "type": "string",
          "minLength": 1
        },
        "validityPeriod": {
          "title": "Validity period",
          "description": "The period (or specific date) to which the invoice applies. Format: yyyy-mm-dd - yyyy-mm-dd.",
          "type": "string",
          "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2} - [0-9]{4}-[0-9]{2}-[0-9]{2}$"
        },
        "buyerCustomerParty": {
          "allOf": [
            {
              "$ref": "#/$defs/BuyerCustomerPartyOrder"
            },
            {
              "description": "The party sending the order. Most data for the BuyerCustomerParty is taken from the Storecove database, where your sender identity resides and has been validated. However, we provide a limited number of fields (mainly contact fields) here that you can specify on a document-by-document basis."
            }
          ]
        },
        "sellerSupplierParty": {
          "allOf": [
            {
              "$ref": "#/$defs/SellerSupplierParty"
            },
            {
              "description": "The seller supplier party. This info will be added to the LegalEntity provided through the legalEntityId."
            }
          ]
        },
        "delivery": {
          "allOf": [
            {
              "$ref": "#/$defs/Delivery"
            },
            {
              "title": "Delivery",
              "description": "The delivery information for the document."
            }
          ]
        },
        "deliveryTerms": {
          "allOf": [
            {
              "$ref": "#/$defs/DeliveryTerms"
            },
            {
              "title": "Delivery Terms",
              "description": "The terms of delivery for the document."
            }
          ]
        },
        "paymentTerms": {
          "allOf": [
            {
              "$ref": "#/$defs/PaymentTerms"
            },
            {
              "title": "Payment Terms",
              "description": "The payment terms of the document."
            }
          ]
        },
        "allowanceCharges": {
          "title": "Allowance Charges",
          "description": "An array of allowance charges.",
          "type": "array",
          "items": {
            "$ref": "#/$defs/AllowanceCharge"
          },
          "minItems": 0
        },
        "orderLines": {
          "title": "Order lines",
          "description": "An array of order lines.",
          "type": "array",
          "items": {
            "$ref": "#/$defs/OrderLine"
          },
          "minItems": 1
        },
        "amountIncludingTax": {
          "title": "Amount including Tax",
          "description": "Total amount including Tax.",
          "type": "number"
        },
        "attachments": {
          "title": "Attachments",
          "description": "An array of attachments. You may provide up to 10 attchments, but the total size must not exceed 100MB after Base64 encoding.",
          "type": "array",
          "maxItems": 10,
          "items": {
            "$ref": "#/$defs/Attachment"
          }
        }
      },
      "required": [
        "documentNumber",
        "issueDate",
        "sellerSupplierParty",
        "orderLines",
        "amountIncludingTax"
      ]
    },
    "EIdentifiers": {
      "title": "Electronic identifiers",
      "description": "A list of electronic routing identifiers. These are the identifiers used on the Peppol network or for other destinations.",
      "type": "array",
      "items": {
        "$ref": "#/$defs/RoutingIdentifier"
      }
    },
    "Envelope": {
      "title": "Envelope",
      "description": "Information for the envelope of the document.",
      "type": "object",
      "properties": {
        "sender": {
          "title": "Sender",
          "description": "The sender of the document. For UBL documents, this is the AccountingSupplierParty/EndpointID.",
          "type": "string",
          "pattern": "^\\d{4}:[A-Za-z0-9\\-\\._~]{1,135}$|^[\\w:]{3,12}::[A-Za-z0-9\\-\\._~]{1,135}$"
        },
        "receiver": {
          "title": "Receiver",
          "description": "The receiver of the document. For UBL documents, this is the AccountingCustomerParty/EndpointID.",
          "type": "string",
          "pattern": "^\\d{4}:[A-Za-z0-9\\-\\._~]{1,135}$|^[\\w:]{3,12}::[A-Za-z0-9\\-\\._~]{1,135}$"
        },
        "typeVersion": {
          "title": "Type Version",
          "description": "The version of the type. Only used and mandatory for EDIFACT and X12 documents.",
          "type": "string",
          "enum": [
            "D24A",
            "D23A",
            "D22A",
            "D22B",
            "D21A",
            "D21B",
            "D20A",
            "D20B",
            "D19A",
            "D19B",
            "D18A",
            "D18B",
            "D17A",
            "D17B",
            "D16A",
            "D16B",
            "D15A",
            "D15B",
            "D14A",
            "D14B",
            "D13A",
            "D13B",
            "D12A",
            "D12B",
            "D11A",
            "D11B",
            "D10A",
            "D10B",
            "D09A",
            "D09B",
            "D08A",
            "D08B",
            "D07A",
            "D07B",
            "D06A",
            "D06B",
            "D05A",
            "D05B",
            "D04A",
            "D04B",
            "D03A",
            "D03B",
            "D02A",
            "D02B",
            "D01A",
            "D01B",
            "D01C",
            "D00A",
            "D00B",
            "D99A",
            "D99B",
            "D98A",
            "D98B",
            "D97A",
            "D97B",
            "D96A",
            "D96B",
            "D95A",
            "D95B",
            "D94A",
            "D94B",
            "D93A",
            "93-2",
            "S93A",
            "92-1",
            "91-1",
            "91-2",
            "90-1",
            "90-2",
            "88-1",
            "001000",
            "002042",
            "002041",
            "002040",
            "002031",
            "002003",
            "002002",
            "002001",
            "002000",
            "003072",
            "003071",
            "003070",
            "003062",
            "003061",
            "003060",
            "003052",
            "003051",
            "003050",
            "003042",
            "003041",
            "003040",
            "003032",
            "003031",
            "003030",
            "003022",
            "003021",
            "003020",
            "003012",
            "003011",
            "003010",
            "003000",
            "004062",
            "004061",
            "004060",
            "004052",
            "004051",
            "004050",
            "004042",
            "004041",
            "004040",
            "004032",
            "004031",
            "004030",
            "004022",
            "004021",
            "004020",
            "004012",
            "004011",
            "004010",
            "004000",
            "005052",
            "005051",
            "005050",
            "005042",
            "005041",
            "005040",
            "005032",
            "005031",
            "005030",
            "005022",
            "005021",
            "005020",
            "005012",
            "005011",
            "005010",
            "005000",
            "006052",
            "006051",
            "006050",
            "006042",
            "006041",
            "006040",
            "006032",
            "006031",
            "006030",
            "006022",
            "006021",
            "006020",
            "006012",
            "006011",
            "006010",
            "006000",
            "007060",
            "007050",
            "007042",
            "007041",
            "007040",
            "007032",
            "007031",
            "007030",
            "007022",
            "007021",
            "007020",
            "007012",
            "007011",
            "007010",
            "007000",
            "008060",
            "008050",
            "008040",
            "008030",
            "008020",
            "008010",
            "008000"
          ]
        },
        "mimeType": {
          "title": "Mime Type",
          "description": "The mime type of the document. One of the types on https://www.iana.org/assignments/media-types/media-types.xhtml startin 'application'. Only used and mandatory for BILATERAL documents.",
          "type": "string",
          "pattern": "^application/.+$"
        }
      },
      "required": [
        "sender",
        "receiver"
      ]
    },
    "EnvelopedData": {
      "title": "Enveloped Data",
      "description": "A document to send, in base64 encoded format, to be wrapped in an envelope.",
      "type": "object",
      "properties": {
        "application": {
          "title": "Application",
          "description": "The application to use to send the document",
          "type": "string",
          "enum": [
            "peppol",
            "dbnalliance"
          ]
        },
        "processId": {
          "title": "Process Id",
          "description": "The process id of the document.",
          "type": "string"
        },
        "processIdSchemeId": {
          "title": "Process Id Scheme Id",
          "description": "The process id scheme id of the document.",
          "type": "string",
          "enum": [
            "cenbii-procid-ubl"
          ]
        },
        "documentId": {
          "title": "Document Id",
          "description": "The document type id of the document.",
          "type": "string"
        },
        "documentIdSchemeId": {
          "title": "Document Id Scheme Id",
          "description": "The document id scheme id of the document.",
          "type": "string",
          "enum": [
            "busdox-docid-qns",
            "peppol-doctype-wildcard",
            "bdx-docid-qns"
          ]
        },
        "document": {
          "title": "Document",
          "description": "The base64 encoded version of the document.",
          "type": "string",
          "minLength": 5
        },
        "envelope": {
          "allOf": [
            {
              "$ref": "#/$defs/Envelope"
            },
            {
              "description": "Information for the envelope of the document."
            }
          ]
        },
        "metadata": {
          "allOf": [
            {
              "$ref": "#/$defs/Metadata"
            },
            {
              "description": "Metadata about the document, used in the UI and reporting."
            }
          ]
        }
      },
      "required": [
        "application",
        "processId",
        "processIdSchemeId",
        "documentId",
        "documentIdSchemeId",
        "document",
        "envelope",
        "metadata"
      ]
    },
    "Invoice": {
      "title": "Invoice",
      "description": "The invoice to send. Provide either invoice, or invoiceData, but not both.",
      "type": "object",
      "properties": {
        "accountingCost": {
          "title": "Accounting Cost",
          "description": "The buyer's accounting cost centre for this invoice, expressed as text.",
          "type": "string",
          "minLength": 1
        },
        "accountingCurrencyExchangeRate": {
          "title": "Accounting Currency Exchange Rate",
          "description": "Rate at which the document currency must be multiplied to convert it into the accounting currency. If included, must be non-zero.",
          "type": "number"
        },
        "accountingCurrencyTaxableAmount": {
          "title": "Accounting Currency Taxable Amount",
          "description": "The taxable amount in the accounting currency. If included, must be non-zero.",
          "type": "number"
        },
        "accountingCurrencyTaxAmount": {
          "title": "Accounting Currency Tax Amount",
          "description": "The total amount of tax in the accounting currency. If included, must be non-zero.",
          "type": "number"
        },
        "accountingCurrencyTaxAmountCurrency": {
          "allOf": [
            {
              "$ref": "#/$defs/CurrencyCode"
            },
            {
              "description": "The currency of the accountingCurrencyTaxAmount. This MUST be different from the documentCurrencyCode, since it makes no sense including this othterwise. Mandatory if accountingCurrencyTaxAmount is provided."
            }
          ]
        },
        "accountingCustomerParty": {
          "allOf": [
            {
              "$ref": "#/$defs/AccountingCustomerParty"
            },
            {
              "description": "The party the invoice is sent to."
            }
          ]
        },
        "payeeParty": {
          "allOf": [
            {
              "$ref": "#/$defs/PayeeParty"
            },
            {
              "description": "The party to whom the invoice will be paid."
            }
          ]
        },
        "accountingSupplierParty": {
          "allOf": [
            {
              "$ref": "#/$defs/AccountingSupplierParty"
            },
            {
              "description": "The party sending the invoice. When you are sending, most data for the AccountingSupplierParty is taken from the LegalEntity in the Storecove database, where your sender identity resides and has been validated. However, we provide a limited number of fields (mainly contact fields) here that you can specify on a document-by-document basis. For receiving, the full party object can be received."
            }
          ]
        },
        "buyerAgentParty": {
          "allOf": [
            {
              "$ref": "#/$defs/BuyerAgentParty"
            },
            {
              "description": "The agent acting on behalf of the buyer (FR-FE EXT-FR-FE-BG-01). Maps to UBL AccountingCustomerParty/Party/AgentParty and CII BuyerAgentTradeParty."
            }
          ]
        },
        "salesAgentParty": {
          "allOf": [
            {
              "$ref": "#/$defs/SalesAgentParty"
            },
            {
              "description": "The agent acting on behalf of the seller (FR-FE EXT-FR-FE-BG-03). Maps to UBL AccountingSupplierParty/Party/AgentParty and CII SalesAgentTradeParty."
            }
          ]
        },
        "invoiceeParty": {
          "allOf": [
            {
              "$ref": "#/$defs/InvoiceeParty"
            },
            {
              "description": "The party that is being invoiced when different from the buyer (FR-FE EXT-FR-FE-BG-04). Maps to UBL AccountingCustomerParty/Party/ServiceProviderParty/Party and CII InvoiceeTradeParty."
            }
          ]
        },
        "invoicerParty": {
          "allOf": [
            {
              "$ref": "#/$defs/InvoicerParty"
            },
            {
              "description": "The party that issues the invoice on behalf of the seller (FR-FE EXT-FR-FE-BG-05). Maps to UBL AccountingSupplierParty/Party/ServiceProviderParty/Party and CII InvoicerTradeParty."
            }
          ]
        },
        "payerParty": {
          "allOf": [
            {
              "$ref": "#/$defs/PayerParty"
            },
            {
              "description": "The party that pays the invoice when different from the buyer (FR-FE EXT-FR-FE-BG-02). Maps to UBL PaymentMeans/PaymentMandate/PayerParty and CII PayerTradeParty."
            }
          ]
        },
        "aeTransactionType": {
          "title": "AE Transaction Type",
          "description": "The UAE invoice transaction type (BTAE-02). Only used when the sender country is AE (PINT-AE). Each flag marks whether the corresponding transaction characteristic applies to the document. All flags default to false. Maps to UBL ProfileExecutionID as an 8-character string of 0/1 flags in the order: free trade zone, deemed supply, margin scheme, summary invoice, continuous supply, disclosed agent billing, e-commerce, exports. See <<country_ae>>.",
          "type": "object",
          "properties": {
            "freeTradeZone": {
              "title": "Free Trade Zone",
              "description": "The supply involves a free trade zone. When true, the beneficiary must be identified through a publicIdentifier of the accountingCustomerParty.",
              "type": "boolean",
              "default": false
            },
            "deemedSupply": {
              "title": "Deemed Supply",
              "description": "The supply is a deemed supply.",
              "type": "boolean",
              "default": false
            },
            "marginScheme": {
              "title": "Margin Scheme",
              "description": "The supply falls under the profit margin scheme.",
              "type": "boolean",
              "default": false
            },
            "summaryInvoice": {
              "title": "Summary Invoice",
              "description": "The document is a summary invoice. When true, provide the billingFrequency and the invoicePeriod.",
              "type": "boolean",
              "default": false
            },
            "continuousSupply": {
              "title": "Continuous Supply",
              "description": "The supply is a continuous supply.",
              "type": "boolean",
              "default": false
            },
            "disclosedAgentBilling": {
              "title": "Disclosed Agent Billing",
              "description": "The document is issued by a disclosed agent on behalf of a principal. When true, the principal must be identified through a publicIdentifier of the accountingSupplierParty (on the LegalEntity).",
              "type": "boolean",
              "default": false
            },
            "eCommerce": {
              "title": "E-Commerce",
              "description": "The supply is made through e-commerce.",
              "type": "boolean",
              "default": false
            },
            "exports": {
              "title": "Exports",
              "description": "The supply is an export outside the UAE.",
              "type": "boolean",
              "default": false
            }
          }
        },
        "allowanceCharges": {
          "title": "Allowance Charges",
          "description": "An array of allowance charges.",
          "type": "array",
          "items": {
            "$ref": "#/$defs/AllowanceCharge"
          },
          "minItems": 0
        },
        "billingFrequency": {
          "title": "Billing Frequency",
          "description": "The frequency of billing (BTAE-06). Only used when the sender country is AE (PINT-AE), where it is mandatory for summary invoices and continuous supplies. Maps to UBL InvoicePeriod/DescriptionCode. Values: DLY (daily), WKY (weekly), Q15 (every 15 days), MTH (monthly), Q45 (every 45 days), Q60 (every 60 days), QTR (quarterly), HYR (half-yearly), YRL (yearly), OTH (other; requires a note describing the frequency). See <<country_ae>>.",
          "type": "string",
          "enum": [
            "DLY",
            "WKY",
            "Q15",
            "MTH",
            "Q45",
            "Q60",
            "QTR",
            "HYR",
            "YRL",
            "OTH"
          ]
        },
        "amountIncludingTax": {
          "title": "Amount including Tax",
          "description": "EXPERIMENTAL for sending. The amountIncludingTax is the payable amount, but not corrected for the prepaid amount.",
          "type": "number"
        },
        "amountIncludingVat": {
          "title": "Amount including VAT",
          "description": "The amountIncludingVat is payable amount, but not corrected for the prepaid amount. We encourage you to use the amountIncludingTax for sending. For receiving, always use amountIncludingTax.",
          "type": "number"
        },
        "attachments": {
          "title": "Attachments",
          "description": "An array of attachments. You may provide up to 10 attchments, but the total size must not exceed 100MB after Base64 encoding.",
          "type": "array",
          "maxItems": 10,
          "items": {
            "$ref": "#/$defs/Attachment"
          }
        },
        "consumerTaxMode": {
          "title": "Consumer Tax Mode",
          "description": "Whether or not to process the invoice in consumer tax mode. In this mode, the VAT identifier of the sender will not be the default VAT identifier, but the one that matches with the country of the receiving consumer, if that additional VAT identifier for that country is available. These additional VAT identifiers need to be added to the sending LegalEntity by Storecove, so if you need to send invoices in this mode, please contact us. Not used for receiving.",
          "type": "boolean",
          "default": false
        },
        "sellerAdditionalTaxIdentifierCountry": {
          "title": "Seller Additional Tax Identifier Country",
          "description": "Optional ISO 3166-1 alpha-2 country of an AdditionalTaxIdentifier on the sending LegalEntity. When set, that identifier is used for the seller PartyTaxScheme (ShipToVat / local VAT scenarios) instead of the LegalEntity primary tax identifier. Omit unless you need this. Incompatible with selfBillingMode. All invoiceLines tax.country and taxSubtotals country values must match. Not used for receiving.",
          "type": "string",
          "minLength": 2,
          "maxLength": 2
        },
        "creditNoteTypeCode": {
          "title": "Credit Note Type Code",
          "description": "The credit note type code (UNCL1001 subset), if a credit note is sent. The schema accepts every code that any supported destination accepts; the actual allowed subset is enforced per destination when the document is sent. Peppol BIS Billing 3.0 (default, UNCL1001-cn): 81, 83, 381, 396, 532. Peppol BIS Self-Billing 3.0 (when selfBillingMode is true, UNCL1001-sbcn): 261. Peppol PINT senders use the normal PINT subset for their sender country regardless of receiver country: AE = 81, 381; SG = 81, 83, 381, 396, 532; AU, NZ and MY = 81, 83, 381, 396, 532. In self-billing mode, AE, AU, NZ and MY use 261. Japan (JP) senders cannot send credit notes on Peppol PINT; Japan does not use credit notes. France (FR-DGFiP): 261 (Avoir auto-facturé), 262 (Avoir pour Remise Globale), 381 (Avoir), 396 (Avoir affacturé), 502 (Avoir auto-facturé affacturé), 503 (Avoir de facture d'acompte). France-domestic credit notes sent over Peppol BIS (sender country FR and buyer country FR) use the French list instead of the Peppol BIS list. Other UNCL1001 codes must not be used.",
          "type": "string",
          "enum": [
            "81",
            "83",
            "261",
            "262",
            "381",
            "396",
            "502",
            "503",
            "532"
          ],
          "default": "381"
        },
        "creditNoteReasonCode": {
          "title": "Credit Note Reason Code",
          "description": "The reason the credit note is issued (BTAE-03). Only used when the sender country is AE (PINT-AE), where it is mandatory for credit notes. Maps to UBL DiscrepancyResponse/ResponseCode. Values: DL8.61.1.A (supply cancelled), DL8.61.1.B (supply not provided as agreed), DL8.61.1.C (goods or services returned in full or part), DL8.61.1.D (change in consideration), DL8.61.1.E (incorrect tax treatment), VD (volume discount; the only reason that does not require a billing reference to the preceding invoice). See <<country_ae>>.",
          "type": "string",
          "enum": [
            "DL8.61.1.A",
            "DL8.61.1.B",
            "DL8.61.1.C",
            "DL8.61.1.D",
            "DL8.61.1.E",
            "VD"
          ]
        },
        "delivery": {
          "allOf": [
            {
              "$ref": "#/$defs/Delivery"
            },
            {
              "title": "The Delivery",
              "description": "The delivery of the invoice."
            }
          ]
        },
        "deliveryTerms": {
          "allOf": [
            {
              "$ref": "#/$defs/DeliveryTerms"
            },
            {
              "title": "Delivery Terms",
              "description": "The terms of delivery for the document. This is currently only used for MY LHDNM."
            }
          ]
        },
        "documentCurrencyCode": {
          "allOf": [
            {
              "$ref": "#/$defs/CurrencyCode"
            },
            {
              "description": "The documentCurrencyCode is the currency for the entire invoice. We currently do not support invoices in multiple currencies. If left out, will default to EUR",
              "default": "EUR"
            }
          ]
        },
        "documentUuid": {
          "title": "Document UUID",
          "description": "A universally unique identifier for the document. Used for SG and AE senders and mapped to UBL cbc:UUID; for PINT-AE this is BTAE-07. If an AE submission omits it, Storecove generates one at submission time. Format: UUID (RFC 4122). For AE usage see <<country_ae>>.",
          "type": "string",
          "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"
        },
        "dueDate": {
          "title": "Due date",
          "description": "Format: yyyy-mm-dd.",
          "type": "string",
          "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}$"
        },
        "frCadreDeFacturation": {
          "title": "FR Cadre de Facturation",
          "description": "The French invoicing context (Cadre de Facturation). Identifies the use case for the document under the French e-invoicing reform (Facturation Electronique). Maps to UBL ProfileID and CII BusinessProcessSpecifiedDocumentContextParameter/ID.",
          "type": "string",
          "enum": [
            "B1",
            "S1",
            "M1",
            "B2",
            "S2",
            "M2",
            "S3",
            "B4",
            "S4",
            "M4",
            "S5",
            "S6",
            "B7",
            "S7",
            "B8",
            "S8",
            "M8"
          ]
        },
        "invoiceLines": {
          "title": "Invoice lines",
          "description": "An array of invoice lines.",
          "type": "array",
          "items": {
            "$ref": "#/$defs/InvoiceLine"
          },
          "minItems": 1
        },
        "invoiceNumber": {
          "title": "Invoice number",
          "description": "The invoice number you assigned to the invoice.",
          "type": "string",
          "minLength": 1
        },
        "invoicePeriod": {
          "title": "Invoice period",
          "description": "The period (or specific date) to which the invoice applies. Format: yyyy-mm-dd - yyyy-mm-dd.",
          "type": "string",
          "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2} - [0-9]{4}-[0-9]{2}-[0-9]{2}$"
        },
        "invoiceTypeCode": {
          "title": "Invoice Type Code",
          "description": "The invoice type code (UNCL1001 subset), if an invoice is sent. The schema accepts every code that any supported destination accepts; the actual allowed subset is enforced per destination when the document is sent. Peppol BIS Billing 3.0 (default, UNCL1001-inv): 71, 80, 82, 84, 102, 218, 219, 326, 331, 380, 382, 383, 384, 386, 388, 389, 393, 395, 553, 575, 623, 780, 817, 870, 875, 876, 877. Peppol BIS Self-Billing 3.0 (when selfBillingMode is true, UNCL1001-sbinv): 389, 527. Peppol PINT senders use the normal PINT subset for their sender country regardless of receiver country: AE = 380, 480; SG = 71, 80, 82, 84, 102, 218, 219, 331, 380, 382, 383, 386, 388, 393, 395, 480, 553, 575, 623, 780, 817, 870, 875, 876, 877; AU, NZ, JP and MY = 71, 80, 82, 84, 102, 218, 219, 331, 380, 382, 383, 386, 388, 393, 395, 480, 553, 575, 623, 780, 817, 870, 875, 876, 877. In self-billing mode, AE, AU, NZ, JP and MY use 389. France (FR-DGFiP): 380 (Facture commerciale), 384 (Facture rectificative), 386 (Facture d'acompte), 389 (Facture auto-facturée), 393 (Facture affacturée), 471 (Facture rectificative auto-facturée), 472 (Facture rectificative affacturée), 473 (Facture rectificative auto-facturée affacturée), 500 (Facture d'acompte auto-facturée), 501 (Facture auto-facturée affacturée). France-domestic invoices sent over Peppol BIS (sender country FR and buyer country FR) use the French list instead of the Peppol BIS list. Other UNCL1001 codes must not be used.",
          "type": "string",
          "enum": [
            "71",
            "80",
            "82",
            "84",
            "102",
            "218",
            "219",
            "326",
            "331",
            "380",
            "382",
            "383",
            "384",
            "386",
            "388",
            "389",
            "393",
            "395",
            "471",
            "472",
            "473",
            "480",
            "500",
            "501",
            "527",
            "553",
            "575",
            "623",
            "780",
            "817",
            "870",
            "875",
            "876",
            "877"
          ],
          "default": "380"
        },
        "issueDate": {
          "title": "Invoice issue date",
          "description": "Format: yyyy-mm-dd.",
          "type": "string",
          "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}$"
        },
        "issueReasons": {
          "title": "Issue Reasons",
          "description": "An array reasons for issuing the invoice.",
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "issueTime": {
          "title": "Document issue time",
          "description": "Format: hh:mm:ss",
          "type": "string",
          "pattern": "^[0-9]{2}:[0-9]{2}:[0-9]{2}$"
        },
        "productionDate": {
          "title": "Production date",
          "description": "Date the invoice was produced. Format: yyyy-mm-dd. Only used for PL KSeF, where it becomes Naglowek/DataWytworzeniaFa. Send it together with productionTime and productionTimeZone, or omit all three. When all three are omitted, Storecove uses the time it generates the FA(3) XML. This is not the issue date. A date before 2025-09-01 is rejected.",
          "type": "string",
          "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}$"
        },
        "productionTime": {
          "title": "Production time",
          "description": "Time the invoice was produced. Format: hh:mm:ss. Only used for PL KSeF. Send it together with productionDate and productionTimeZone, or omit all three.",
          "type": "string",
          "pattern": "^[0-9]{2}:[0-9]{2}:[0-9]{2}$"
        },
        "productionTimeZone": {
          "title": "Production timezone",
          "description": "Timezone of the production time. Format: ±zzzz, for example +0100 or -0900. Only used for PL KSeF. Send it together with productionDate and productionTime, or omit all three.",
          "type": "string",
          "pattern": "^[+-]\\d{4}$"
        },
        "connectedUnderPlArticle32": {
          "title": "Connected under Polish VAT Act article 32",
          "description": "Whether the buyer and the seller are connected under art. 32 ust. 2 of the Polish VAT Act. Only used for PL KSeF. When true, Storecove writes Fa/TP as 1. When false or omitted, Fa/TP is left out. The public-sector exception in ust. 4b is the sender's decision.",
          "type": "boolean"
        },
        "note": {
          "title": "Note",
          "description": "DEPRECATED. Use notes instead.",
          "type": "string",
          "deprecated": true
        },
        "notes": {
          "title": "Notes",
          "description": "An array of notes to add to the invoice",
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "payableRoundingAmount": {
          "title": "Payable Rounding Amount",
          "description": "The rounding amount for the payable amount. This amount is calulated automatically from the invoiceLines, allowanceCharges and the taxSubtotals. If you provide this field, it must be exactly what we would have calculated. We recommend not using this field for sending. For receiving, it is always present.",
          "type": "number"
        },
        "paymentMeansArray": {
          "title": "Payment Means Array",
          "description": "An array of payment means (ways to pay the invoice).",
          "type": "array",
          "items": {
            "$ref": "#/$defs/PaymentMeans"
          }
        },
        "paymentTerms": {
          "allOf": [
            {
              "$ref": "#/$defs/PaymentTerms"
            },
            {
              "title": "Payment Terms",
              "description": "The payment terms of the invoice."
            }
          ]
        },
        "preferredInvoiceType": {
          "title": "Invoice Type",
          "description": "In autodetect mode, the choice is made by Storecove based on what is appropriate for the receiver and the receiver country, in combination with the invoice amount sign. If you wish to state a preference, use this field. It is not guaranteed that the preference will be used, since it depends also on the receiver's document capabilities. Only used for sending, not for receiving. For Peppol, only invoice and creditnote are supported. For LHDNM, also debitnote and refundnote are supported. Anything starting it_td* can only be used for SDI. Only used for sending, not present for receiving.",
          "type": "string",
          "enum": [
            "prefer_autodetect",
            "prefer_invoice",
            "prefer_creditnote",
            "prefer_debitnote",
            "prefer_refundnote",
            "prefer_corrected_invoice",
            "prefer_it_td02",
            "prefer_it_td19",
            "prefer_it_td24"
          ],
          "default": "prefer_autodetect"
        },
        "prepaidAmount": {
          "title": "Prepaid Amount",
          "description": "The amount already paid. The amountInclucingTax - prepaidAmount is the amount remaining to be paid. Use either this field or the prepaidPayments field, but not both.",
          "type": "number"
        },
        "prepaidPayments": {
          "title": "Prepaid Payments",
          "description": "An array of prepaid payments. Currently can be used only for Malaysia. Even though this is an array, it is currently expected to contain only one item. Use either this field or the prepaidAmount field, but not both.",
          "type": "array",
          "items": {
            "$ref": "#/$defs/PrepaidPayment"
          }
        },
        "priceMode": {
          "title": "Price Mode",
          "description": "The price mode. This is used to determine whether the prices are net or gross. Price Mode 'price_mode_gross' can only be used for sender countries ES, IT and PT, \"clearWithoutSending\": true and \"taxSystem\": \"tax_line_percentages\". Only used for sending, not present for receiving.",
          "type": "string",
          "enum": [
            "price_mode_net",
            "price_mode_gross"
          ],
          "default": "price_mode_net"
        },
        "references": {
          "title": "References",
          "description": "An array of references to other documents. Note that many syntaxes do not support multiple references of the same type in which case they will be concatenated with ','. Also, not all syntaxes support all documentTypes.",
          "type": "array",
          "items": {
            "$ref": "#/$defs/Reference"
          },
          "minItems": 0
        },
        "selfBillingMode": {
          "title": "Self Billing Mode",
          "description": "+++\n<p>        There are two reasons for using self billing mode:</p><ol>        <li>                The buyer generated the invoice and it needs to be sent to the seller. When sending via Peppol, the receiver needs to support this by advertising a special \"self-billing\" document type. Otherwise, an email will be sent.        </li>        <li>                An invoice was received that needs to be reported as a purchase invoice to a tax authority.        </li></ol><p>        When sending in this mode the buyer (\"AccountingCustomerParty\") and the seller (\"AccountingSupplierParty\") are automatically switched. That means you still provide the same legalEntityId for the sender (who is now the buyer) and the accountingCustomerParty object is still the receiver (but it is now the seller). That means no changes to the JSON are necessary.</p><p>        When reporting a received invoice to a tax authority, set the \"clearWithoutSending\": true flag. Otherwise, the invoice will be reported _and_ sent back to the sender!</p><p>        This field is only used for sending. We currently do not set this for receiving although that is on the roadmap.</p>\n+++",
          "type": "boolean",
          "default": false
        },
        "subType": {
          "title": "Sub Type",
          "description": "The document subtype. Only used for received invoices, not for sending.",
          "type": "string",
          "enum": [
            "invoice",
            "creditnote",
            "debitnote",
            "correctioninvoice"
          ]
        },
        "taxPointDate": {
          "title": "Tax date",
          "description": "The tax date is the date on which the supply of goods or of services was made or completed or the date on which the payment on account was made insofar as that date can be determined and differs from the date of the issue of the invoice. EU 2006-112 Article 226 Point 7. Note: For the Dutch TAX authorities the tac date should be the same as the issue date.",
          "type": "string",
          "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}$"
        },
        "taxPointDateCode": {
          "title": "Tax Point Date Code",
          "description": "The code describing which date is used as the tax point date. Maps to UBL InvoicePeriod/DescriptionCode and CII ApplicableTradeTax/DueDateTypeCode. Supported values: 3 (invoice issue date), 35 (actual delivery date), 432 (paid to date).",
          "type": "string",
          "enum": [
            "3",
            "35",
            "432"
          ]
        },
        "taxSubtotals": {
          "title": "Tax Subtotals",
          "description": "An array of tax subtotals. This element is mandatory for taxSystem 'tax_line_percentages'.",
          "type": "array",
          "items": {
            "$ref": "#/$defs/TaxSubtotal"
          },
          "minItems": 0
        },
        "taxSystem": {
          "title": "Tax System",
          "description": "The tax system used for the invoice. The system 'tax_line_percentages' is preferred, but for historic purposes 'tax_line_amounts' is supported and the default. Since not all invoice formats that we are required to send support 'tax_line_amounts' we will need to convert the invoice to the 'tax_line_percentags' system if we are forced to send the invoice in that tax system. Note that an invoice must always contain tax information, even if that is 0% or an item or sender is exempt or tax is completely outside scope. In that case, use the correct tax categories (see <<_openapi_tax>>)",
          "type": "string",
          "enum": [
            "tax_line_amounts",
            "tax_line_percentages"
          ],
          "default": "tax_line_amounts"
        },
        "taxesDutiesFees": {
          "title": "Taxes, Duties and Fees",
          "description": "An array of taxes, duties and fees for this invoice. At this moment, the only invoice level tax allowed is the Italian '€2 bollo virtuale'",
          "type": "array",
          "items": {
            "$ref": "#/$defs/Tax"
          },
          "minItems": 0,
          "maxItems": 1
        },
        "timeZone": {
          "title": "Document issue timezone",
          "description": "Format: ±zzzz, where ±zzzz is the difference from UTC, e.g. +0100 or -0900 etc. The timezone will also apply to the document issue date if this field is provided.",
          "type": "string",
          "pattern": "^[+-]\\d{4}$"
        },
        "transactionType": {
          "title": "Transaction Type",
          "description": "The type of transaction. Currently used only for India.",
          "type": "string",
          "enum": [
            "b2b",
            "sezwp",
            "sezwop",
            "expwp",
            "expwop",
            "dexp"
          ]
        },
        "taxAuthority": {
          "allOf": [
            {
              "$ref": "#/$defs/TaxAuthority"
            },
            {
              "description": "Information relating to a tax authority."
            }
          ]
        },
        "ublExtensions": {
          "title": "UBL Extensions",
          "description": "An array of ubl extensions.",
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "x2y": {
          "title": "x2y",
          "description": "The type of entities the document is sent from/to: b2b (business-to-business), b2g (business-to-government) or b2c (business-to-consumer). This field does not have a default, but it in mose cases it will be treated as b2b. Only when you explicitly specify b2g or b2c OR when it is clear from the context will a different value be used. For instance, when we see the document is being routed to DE:LWID or NL:OINO number, this tells us it is b2g. But in many cases we are unable to determine this and so it is best to always specify this field. Note that b2b_sez is for use inside India only. This field is for sending only. Note that b2c_petty_cash (deprecated: petty_cash) is for use in Singapore only and is for reporting petty cash transactions in selfBillingMode. Also note that the categories b2c_point_of_sale and b2c_simplified_tax_invoice are for use in Singapore only and are for reporting point of sale transactions and simplified tax invoices respectively.",
          "type": "string",
          "enum": [
            "b2b",
            "b2g",
            "b2c",
            "b2b_sez",
            "petty_cash",
            "b2c_point_of_sale",
            "b2c_simplified_tax_invoice",
            "b2c_petty_cash"
          ],
          "default": "b2b"
        },
        "vatReverseCharge": {
          "description": "DEPRECATED. Use taxExemptReason.",
          "type": "boolean",
          "default": false,
          "deprecated": true
        },
        "taxExemptReason": {
          "description": "DEPRECATED. Use Tax/category and specify this per invoice line. If you do specify this field, it will be applied to all invoice lines and it is an error to specify a Tax/category at the invoice line level. This field holds the reason no tax is present in the invoice. Note that this is an invoice level field and you cannot specify it per invoice line. This field is mandatory unless tax is present in the invoice.",
          "type": "string",
          "enum": [
            "export",
            "reverse_charge",
            "zero_rated",
            "exempt",
            "outside_scope",
            "intra_community"
          ],
          "deprecated": true
        },
        "invoiceType": {
          "title": "Type of invoice",
          "description": "DEPRECATED. Do not use. This field is available for legacy reasons only. If you want to send a regular invoice (aka UBL type '380'), make sure you have a positive invoice amount. For a credit note (aka UBL type '381'), simply provide a negative invoice amount. If you, in addition to a negative invoice amount, also specify a billingReferences, your invoice will become a corrective invoice (aka UBL type '384'). If your invoice is not sent in the UBL syntax, Storecove will provide the appropriate type for the syntax the invoice is sent in.",
          "type": "string",
          "enum": [
            "380",
            "383",
            "381",
            "384",
            "261",
            "527",
            "389"
          ],
          "default": "380",
          "deprecated": true
        },
        "buyerReference": {
          "title": "Buyer reference",
          "description": "DEPRECATED. Use a reference object with a documentType 'buyer_reference'. A reference provided by the buyer used for internal routing of the document.",
          "type": "string",
          "deprecated": true
        },
        "orderReference": {
          "title": "Order reference",
          "description": "DEPRECATED. Use a reference object with a documentType 'purchase_order'. A reference to an order for this invoice, assigned by the buyer. Note that this often is a key field, since many receivers of invoices will use this field to automatically match the invoice to an order they placed. Many receivers refuse invoices that cannot be automatically matched, in particular government agencies. So it is highly recommended to fill this field whenever possible.",
          "type": "string",
          "deprecated": true
        },
        "salesOrderId": {
          "title": "Sales Order Id",
          "description": "DEPRECATED. Use a reference object with a documentType 'sales_order'. A reference to an order for this invoice, assigned by the seller.",
          "type": "string",
          "deprecated": true
        },
        "billingReference": {
          "title": "Billing reference",
          "description": "DEPRECATED. Use a reference object with a documentType 'billing'. A reference to a commercial invoice or corrective invoice of which the current invoice is a correction. This field is mandatory when sending invoiceType 384.",
          "type": "string",
          "deprecated": true
        },
        "contractDocumentReference": {
          "title": "Contract document reference",
          "description": "DEPRECATED. Use a reference object with a documentType 'contract'. A reference to a contract or framework agreement that this invoice relates to.",
          "type": "string",
          "deprecated": true
        },
        "projectReference": {
          "title": "Project Reference",
          "description": "DEPRECATED. Information about the project this invoice relates to.",
          "type": "string",
          "deprecated": true
        },
        "paymentMeansIban": {
          "title": "IBAN",
          "description": "DEPRECATED. Use paymentMeansArray. The IBAN the amount payable should be transferred to",
          "type": "string",
          "deprecated": true
        },
        "paymentMeansBic": {
          "title": "BIC",
          "description": "DEPRECATED. Use paymentMeansArray. The BIC (Swift) of the bank where the amount payable should be transferred to",
          "type": "string",
          "pattern": "^[A-Z]{6}[2-9A-Z][0-9A-NP-Z]([A-Z0-9]{3}|X{3})?$",
          "deprecated": true
        },
        "paymentMeansCode": {
          "title": "Payment Means Code",
          "description": "DEPRECATED. Use paymentMeansArray. How the invoice has been / will be paid. Use only online_payment_service (payment will be made or has been made by an online payment service), bank_card (e.g. debit card, credit card), direct_debit (the amount has been / will be taken out of the client's bank account), standing_agreement (an unspecified payment means known to both buyer and seller) or credit_transfer (the buyer will do / has done a bank transfer). The numeric codes are for legacy purposes, they should not be used.",
          "type": "string",
          "enum": [
            "online_payment_service",
            "bank_card",
            "direct_debit",
            "standing_agreement",
            "credit_transfer",
            "se_bankgiro",
            "se_plusgiro",
            "aunz_npp",
            "",
            "1",
            "30",
            "31",
            "42",
            "48",
            "49",
            "57",
            "58"
          ],
          "deprecated": true
        },
        "paymentMeansPaymentId": {
          "title": "Payment Id",
          "description": "DEPRECATED. Use the paymentId in the individual PaymentMeans object. The payment id that you will use to match the payment against the invoice.",
          "type": "string",
          "deprecated": true
        }
      },
      "required": [
        "invoiceNumber",
        "issueDate",
        "accountingCustomerParty",
        "invoiceLines"
      ]
    },
    "InvoiceLine": {
      "title": "Invoice line",
      "type": "object",
      "properties": {
        "lineId": {
          "title": "Invoice Line ID",
          "description": "The id for this invoice line.",
          "type": "string",
          "minLength": 1,
          "maxLength": 36
        },
        "description": {
          "title": "Description",
          "description": "The description for this invoice line.",
          "type": "string",
          "minLength": 1
        },
        "name": {
          "title": "Name",
          "description": "A short name for this invoice line. If not provided, it will be taken from description and description will be set to an emtpy string.",
          "type": "string",
          "minLength": 1
        },
        "orderLineReferenceLineId": {
          "title": "orderLineReferenceLineId",
          "description": "DEPRECATED. Use a reference with type 'line_purchase_order'. A reference to the LineID of the order. The order itself is specified as the orderReference at the invoice level. It is not possible to specify an orderReference at the invoice line level. An invoice MUST at this time be for a single order only.",
          "type": "string",
          "minLength": 1,
          "deprecated": true
        },
        "invoicePeriod": {
          "title": "Invoice period",
          "description": "The period (or specific date) to which the invoice line applies. Format: yyyy-mm-dd - yyyy-mm-dd.",
          "type": "string",
          "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2} - [0-9]{4}-[0-9]{2}-[0-9]{2}$"
        },
        "itemPrice": {
          "title": "Item price",
          "description": "DEPRECATED. Use price.priceAmount instead. The net price per baseQuantity (may be fractional). This field remains available for compatibility with older connections.",
          "type": "number",
          "default": 1.0,
          "deprecated": true
        },
        "quantity": {
          "title": "Quantity",
          "description": "The number of items (may be fractional).",
          "type": "number",
          "default": 1.0
        },
        "baseQuantity": {
          "title": "Base Quantity",
          "description": "DEPRECATED. Use price.baseQuantity instead. The number of items (may be fractional) the price is for.",
          "type": "number",
          "default": 1.0,
          "deprecated": true
        },
        "price": {
          "title": "Price",
          "description": "The price details for the invoice line.",
          "type": "object",
          "properties": {
            "priceAmount": {
              "title": "Price Amount",
              "description": "The net item price per baseQuantity (may be fractional). Supersedes the deprecated itemPrice property.",
              "type": "number"
            },
            "baseQuantity": {
              "title": "Base Quantity",
              "description": "The number of items (may be fractional) the priceAmount is for.",
              "type": "number",
              "default": 1.0
            },
            "allowanceCharges": {
              "title": "Price Allowance Charges",
              "description": "An array of signed item-price discounts that use the same baseQuantity scale. amountExcludingTax must not be positive: zero is a no-op discount, and a price-level charge is not allowed (PEPPOL-EN16931-R044). When baseAmountExcludingTax is provided, priceAmount must equal baseAmountExcludingTax + amountExcludingTax. Only a single item is currently supported, and reason fields are not allowed.",
              "type": "array",
              "items": {
                "allOf": [
                  {
                    "$ref": "#/$defs/LineAllowanceCharge"
                  }
                ],
                "not": {
                  "anyOf": [
                    {
                      "required": [
                        "reason"
                      ]
                    },
                    {
                      "required": [
                        "reasonCode"
                      ]
                    }
                  ]
                }
              },
              "minItems": 0,
              "maxItems": 1
            }
          }
        },
        "quantityUnitCode": {
          "title": "Quantity Unit Code",
          "description": "The unit of measure that applies to the invoiced quantity. Codes for unit of packaging from UNECE Recommendation No. 21 can be used in accordance with the descriptions in the \"Intro\" section of UN/ECE Recommendation 20, Revision 11 (2015): The 2 character alphanumeric code values in UNECE Recommendation 21 shall be used. To avoid duplication with existing code values in UNECE Recommendation No. 20, each code value from UNECE Recommendation 21 shall be prefixed with an “X”, resulting in a 3 alphanumeric code when used as a unit of measure. Note that the following additionally allowed codes are deprecated and will be converted to C62: 04, 05, 08, 16, 17, 18, 19, 26, 29, 30, 31, 32, 36, 43, 44, 45, 46, 47, 48, 53, 54, 62, 63, 64, 66, 69, 71, 72, 73, 76, 78, 84, 90, 92, 93, 94, 95, 96, 97, 98, 1A, 1B, 1C, 1D, 1E, 1F, 1G, 1H, 1J, 1K, 1L, 1M, 1X, 2V, 2W, 3E, 3G, 3H, 3I, 4A, 4B, 4E, 5C, 5F, 5G, 5H, 5I, 5K, 5P, 5Q, A1, A25, A50, A51, A52, A57, A58, A60, A61, A62, A63, A64, A65, A66, A67, A77, A78, A79, A80, A81, A82, A83, AJ, AM, AP, AR, ARE, ATT, AV, AW, B0, B2, B36, B37, B38, B39, B40, B5, B51, B6, B65, B9, BD, BE, BG, BH, BJ, BK, BL, BO, BR, BT, BW, BX, BZ, C1, C2, C4, C5, C6, C77, C98, CA, CH, CJ, CK, CL, CO, CQ, CR, CS, CT, CU, CV, CY, CZ, D14, D28, D35, D37, D38, D39, D40, D64, D66, D67, D7, D70, D71, D72, D75, D76, D79, D8, D9, D90, D92, D96, D97, D98, D99, DC, DE, DI, DQ, DR, DRM, DS, DU, DX, DY, E2, E3, E5, EC, EP, EV, F1, F9, FB, FD, FE, FG, FM, G7, GC, GD, GH, GK, GN, GRT, GT, GW, GY, GZ, H1, H2, HAR, HD, HE, HF, HI, HJ, HK, HL, HN, HO, HP, HS, HT, HY, IC, IF, II, IL, IM, IP, IT, JB, JG, JO, JR, K5, KD, KF, KG, KS, KTM, LC, LE, LI, LJ, LX, M0, MA, MF, MK, MQ, MT, MV, N2, NB, NBB, NC, ND, NE, NG, NH, NI, NJ, NN, NPL, NPR, NQ, NR, NRL, NTT, NV, NY, OP, OZ, P0, P3, P4, P6, P7, P8, P9, PA, PB, PE, PF, PG, PK, PL, PM, PN, PT, PU, PV, PW, PY, PZ, QD, QH, QK, QT, R4, RA, RD, RG, RK, RL, RN, RO, RS, RU, S5, S6, S7, S8, SA, SD, SE, SHT, SK, SL, SN, SO, SP, SS, SST, ST, SV, T1, T4, T5, T6, T7, T8, TA, TC, TD, TE, TF, TJ, TK, TL, TN, TQ, TR, TS, TSD, TSH, TT, TU, TV, TW, TY, UA, UD, UE, UF, UH, UM, VI, VQ, VS, W4, WH, WI, WR, WW, YL, YT, Z1, Z2, Z3, Z4, Z5, Z6, Z8. Also, LOT can only be used for SG-IRAS invoices.",
          "type": "string",
          "enum": [
            "LOT",
            "10",
            "11",
            "13",
            "14",
            "15",
            "20",
            "21",
            "22",
            "23",
            "24",
            "25",
            "27",
            "28",
            "33",
            "34",
            "35",
            "37",
            "38",
            "40",
            "41",
            "56",
            "57",
            "58",
            "59",
            "60",
            "61",
            "74",
            "77",
            "80",
            "81",
            "85",
            "87",
            "89",
            "91",
            "1I",
            "2A",
            "2B",
            "2C",
            "2G",
            "2H",
            "2I",
            "2J",
            "2K",
            "2L",
            "2M",
            "2N",
            "2P",
            "2Q",
            "2R",
            "2U",
            "2X",
            "2Y",
            "2Z",
            "3B",
            "3C",
            "4C",
            "4G",
            "4H",
            "4K",
            "4L",
            "4M",
            "4N",
            "4O",
            "4P",
            "4Q",
            "4R",
            "4T",
            "4U",
            "4W",
            "4X",
            "5A",
            "5B",
            "5E",
            "5J",
            "A10",
            "A11",
            "A12",
            "A13",
            "A14",
            "A15",
            "A16",
            "A17",
            "A18",
            "A19",
            "A2",
            "A20",
            "A21",
            "A22",
            "A23",
            "A24",
            "A26",
            "A27",
            "A28",
            "A29",
            "A3",
            "A30",
            "A31",
            "A32",
            "A33",
            "A34",
            "A35",
            "A36",
            "A37",
            "A38",
            "A39",
            "A4",
            "A40",
            "A41",
            "A42",
            "A43",
            "A44",
            "A45",
            "A47",
            "A48",
            "A49",
            "A5",
            "A53",
            "A54",
            "A55",
            "A56",
            "A59",
            "A6",
            "A68",
            "A69",
            "A7",
            "A70",
            "A71",
            "A73",
            "A74",
            "A75",
            "A76",
            "A8",
            "A84",
            "A85",
            "A86",
            "A87",
            "A88",
            "A89",
            "A9",
            "A90",
            "A91",
            "A93",
            "A94",
            "A95",
            "A96",
            "A97",
            "A98",
            "A99",
            "AA",
            "AB",
            "ACR",
            "ACT",
            "AD",
            "AE",
            "AH",
            "AI",
            "AK",
            "AL",
            "AMH",
            "AMP",
            "ANN",
            "APZ",
            "AQ",
            "AS",
            "ASM",
            "ASU",
            "ATM",
            "AWG",
            "AY",
            "AZ",
            "B1",
            "B10",
            "B11",
            "B12",
            "B13",
            "B14",
            "B15",
            "B16",
            "B17",
            "B18",
            "B19",
            "B20",
            "B21",
            "B22",
            "B23",
            "B24",
            "B25",
            "B26",
            "B27",
            "B28",
            "B29",
            "B3",
            "B30",
            "B31",
            "B32",
            "B33",
            "B34",
            "B35",
            "B4",
            "B41",
            "B42",
            "B43",
            "B44",
            "B45",
            "B46",
            "B47",
            "B48",
            "B49",
            "B50",
            "B52",
            "B53",
            "B54",
            "B55",
            "B56",
            "B57",
            "B58",
            "B59",
            "B60",
            "B61",
            "B62",
            "B63",
            "B64",
            "B66",
            "B67",
            "B68",
            "B69",
            "B7",
            "B70",
            "B71",
            "B72",
            "B73",
            "B74",
            "B75",
            "B76",
            "B77",
            "B78",
            "B79",
            "B8",
            "B80",
            "B81",
            "B82",
            "B83",
            "B84",
            "B85",
            "B86",
            "B87",
            "B88",
            "B89",
            "B90",
            "B91",
            "B92",
            "B93",
            "B94",
            "B95",
            "B96",
            "B97",
            "B98",
            "B99",
            "BAR",
            "BB",
            "BFT",
            "BHP",
            "BIL",
            "BLD",
            "BLL",
            "BP",
            "BPM",
            "BQL",
            "BTU",
            "BUA",
            "BUI",
            "C0",
            "C10",
            "C11",
            "C12",
            "C13",
            "C14",
            "C15",
            "C16",
            "C17",
            "C18",
            "C19",
            "C20",
            "C21",
            "C22",
            "C23",
            "C24",
            "C25",
            "C26",
            "C27",
            "C28",
            "C29",
            "C3",
            "C30",
            "C31",
            "C32",
            "C33",
            "C34",
            "C35",
            "C36",
            "C37",
            "C38",
            "C39",
            "C40",
            "C41",
            "C42",
            "C43",
            "C44",
            "C45",
            "C46",
            "C47",
            "C48",
            "C49",
            "C50",
            "C51",
            "C52",
            "C53",
            "C54",
            "C55",
            "C56",
            "C57",
            "C58",
            "C59",
            "C60",
            "C61",
            "C62",
            "C63",
            "C64",
            "C65",
            "C66",
            "C67",
            "C68",
            "C69",
            "C7",
            "C70",
            "C71",
            "C72",
            "C73",
            "C74",
            "C75",
            "C76",
            "C78",
            "C79",
            "C8",
            "C80",
            "C81",
            "C82",
            "C83",
            "C84",
            "C85",
            "C86",
            "C87",
            "C88",
            "C89",
            "C9",
            "C90",
            "C91",
            "C92",
            "C93",
            "C94",
            "C95",
            "C96",
            "C97",
            "C99",
            "CCT",
            "CDL",
            "CEL",
            "CEN",
            "CG",
            "CGM",
            "CKG",
            "CLF",
            "CLT",
            "CMK",
            "CMQ",
            "CMT",
            "CNP",
            "CNT",
            "COU",
            "CTG",
            "CTM",
            "CTN",
            "CUR",
            "CWA",
            "CWI",
            "D03",
            "D04",
            "D1",
            "D10",
            "D11",
            "D12",
            "D13",
            "D15",
            "D16",
            "D17",
            "D18",
            "D19",
            "D2",
            "D20",
            "D21",
            "D22",
            "D23",
            "D24",
            "D25",
            "D26",
            "D27",
            "D29",
            "D30",
            "D31",
            "D32",
            "D33",
            "D34",
            "D36",
            "D41",
            "D42",
            "D43",
            "D44",
            "D45",
            "D46",
            "D47",
            "D48",
            "D49",
            "D5",
            "D50",
            "D51",
            "D52",
            "D53",
            "D54",
            "D55",
            "D56",
            "D57",
            "D58",
            "D59",
            "D6",
            "D60",
            "D61",
            "D62",
            "D63",
            "D65",
            "D68",
            "D69",
            "D73",
            "D74",
            "D77",
            "D78",
            "D80",
            "D81",
            "D82",
            "D83",
            "D85",
            "D86",
            "D87",
            "D88",
            "D89",
            "D91",
            "D93",
            "D94",
            "D95",
            "DAA",
            "DAD",
            "DAY",
            "DB",
            "DD",
            "DEC",
            "DG",
            "DJ",
            "DLT",
            "DMA",
            "DMK",
            "DMO",
            "DMQ",
            "DMT",
            "DN",
            "DPC",
            "DPR",
            "DPT",
            "DRA",
            "DRI",
            "DRL",
            "DT",
            "DTN",
            "DWT",
            "DZN",
            "DZP",
            "E01",
            "E07",
            "E08",
            "E09",
            "E10",
            "E12",
            "E14",
            "E15",
            "E16",
            "E17",
            "E18",
            "E19",
            "E20",
            "E21",
            "E22",
            "E23",
            "E25",
            "E27",
            "E28",
            "E30",
            "E31",
            "E32",
            "E33",
            "E34",
            "E35",
            "E36",
            "E37",
            "E38",
            "E39",
            "E4",
            "E40",
            "E41",
            "E42",
            "E43",
            "E44",
            "E45",
            "E46",
            "E47",
            "E48",
            "E49",
            "E50",
            "E51",
            "E52",
            "E53",
            "E54",
            "E55",
            "E56",
            "E57",
            "E58",
            "E59",
            "E60",
            "E61",
            "E62",
            "E63",
            "E64",
            "E65",
            "E66",
            "E67",
            "E68",
            "E69",
            "E70",
            "E71",
            "E72",
            "E73",
            "E74",
            "E75",
            "E76",
            "E77",
            "E78",
            "E79",
            "E80",
            "E81",
            "E82",
            "E83",
            "E84",
            "E85",
            "E86",
            "E87",
            "E88",
            "E89",
            "E90",
            "E91",
            "E92",
            "E93",
            "E94",
            "E95",
            "E96",
            "E97",
            "E98",
            "E99",
            "EA",
            "EB",
            "EQ",
            "F01",
            "F02",
            "F03",
            "F04",
            "F05",
            "F06",
            "F07",
            "F08",
            "F10",
            "F11",
            "F12",
            "F13",
            "F14",
            "F15",
            "F16",
            "F17",
            "F18",
            "F19",
            "F20",
            "F21",
            "F22",
            "F23",
            "F24",
            "F25",
            "F26",
            "F27",
            "F28",
            "F29",
            "F30",
            "F31",
            "F32",
            "F33",
            "F34",
            "F35",
            "F36",
            "F37",
            "F38",
            "F39",
            "F40",
            "F41",
            "F42",
            "F43",
            "F44",
            "F45",
            "F46",
            "F47",
            "F48",
            "F49",
            "F50",
            "F51",
            "F52",
            "F53",
            "F54",
            "F55",
            "F56",
            "F57",
            "F58",
            "F59",
            "F60",
            "F61",
            "F62",
            "F63",
            "F64",
            "F65",
            "F66",
            "F67",
            "F68",
            "F69",
            "F70",
            "F71",
            "F72",
            "F73",
            "F74",
            "F75",
            "F76",
            "F77",
            "F78",
            "F79",
            "F80",
            "F81",
            "F82",
            "F83",
            "F84",
            "F85",
            "F86",
            "F87",
            "F88",
            "F89",
            "F90",
            "F91",
            "F92",
            "F93",
            "F94",
            "F95",
            "F96",
            "F97",
            "F98",
            "F99",
            "FAH",
            "FAR",
            "FBM",
            "FC",
            "FF",
            "FH",
            "FIT",
            "FL",
            "FOT",
            "FP",
            "FR",
            "FS",
            "FTK",
            "FTQ",
            "G01",
            "G04",
            "G05",
            "G06",
            "G08",
            "G09",
            "G10",
            "G11",
            "G12",
            "G13",
            "G14",
            "G15",
            "G16",
            "G17",
            "G18",
            "G19",
            "G2",
            "G20",
            "G21",
            "G23",
            "G24",
            "G25",
            "G26",
            "G27",
            "G28",
            "G29",
            "G3",
            "G30",
            "G31",
            "G32",
            "G33",
            "G34",
            "G35",
            "G36",
            "G37",
            "G38",
            "G39",
            "G40",
            "G41",
            "G42",
            "G43",
            "G44",
            "G45",
            "G46",
            "G47",
            "G48",
            "G49",
            "G50",
            "G51",
            "G52",
            "G53",
            "G54",
            "G55",
            "G56",
            "G57",
            "G58",
            "G59",
            "G60",
            "G61",
            "G62",
            "G63",
            "G64",
            "G65",
            "G66",
            "G67",
            "G68",
            "G69",
            "G70",
            "G71",
            "G72",
            "G73",
            "G74",
            "G75",
            "G76",
            "G77",
            "G78",
            "G79",
            "G80",
            "G81",
            "G82",
            "G83",
            "G84",
            "G85",
            "G86",
            "G87",
            "G88",
            "G89",
            "G90",
            "G91",
            "G92",
            "G93",
            "G94",
            "G95",
            "G96",
            "G97",
            "G98",
            "G99",
            "GB",
            "GBQ",
            "GDW",
            "GE",
            "GF",
            "GFI",
            "GGR",
            "GIA",
            "GIC",
            "GII",
            "GIP",
            "GJ",
            "GL",
            "GLD",
            "GLI",
            "GLL",
            "GM",
            "GO",
            "GP",
            "GQ",
            "GRM",
            "GRN",
            "GRO",
            "GV",
            "GWH",
            "H03",
            "H04",
            "H05",
            "H06",
            "H07",
            "H08",
            "H09",
            "H10",
            "H11",
            "H12",
            "H13",
            "H14",
            "H15",
            "H16",
            "H18",
            "H19",
            "H20",
            "H21",
            "H22",
            "H23",
            "H24",
            "H25",
            "H26",
            "H27",
            "H28",
            "H29",
            "H30",
            "H31",
            "H32",
            "H33",
            "H34",
            "H35",
            "H36",
            "H37",
            "H38",
            "H39",
            "H40",
            "H41",
            "H42",
            "H43",
            "H44",
            "H45",
            "H46",
            "H47",
            "H48",
            "H49",
            "H50",
            "H51",
            "H52",
            "H53",
            "H54",
            "H55",
            "H56",
            "H57",
            "H58",
            "H59",
            "H60",
            "H61",
            "H62",
            "H63",
            "H64",
            "H65",
            "H66",
            "H67",
            "H68",
            "H69",
            "H70",
            "H71",
            "H72",
            "H73",
            "H74",
            "H75",
            "H76",
            "H77",
            "H79",
            "H80",
            "H81",
            "H82",
            "H83",
            "H84",
            "H85",
            "H87",
            "H88",
            "H89",
            "H90",
            "H91",
            "H92",
            "H93",
            "H94",
            "H95",
            "H96",
            "H98",
            "H99",
            "HA",
            "HBA",
            "HBX",
            "HC",
            "HDW",
            "HEA",
            "HGM",
            "HH",
            "HIU",
            "HKM",
            "HLT",
            "HM",
            "HMQ",
            "HMT",
            "HPA",
            "HTZ",
            "HUR",
            "IA",
            "IE",
            "INH",
            "INK",
            "INQ",
            "ISD",
            "IU",
            "IV",
            "J10",
            "J12",
            "J13",
            "J14",
            "J15",
            "J16",
            "J17",
            "J18",
            "J19",
            "J2",
            "J20",
            "J21",
            "J22",
            "J23",
            "J24",
            "J25",
            "J26",
            "J27",
            "J28",
            "J29",
            "J30",
            "J31",
            "J32",
            "J33",
            "J34",
            "J35",
            "J36",
            "J38",
            "J39",
            "J40",
            "J41",
            "J42",
            "J43",
            "J44",
            "J45",
            "J46",
            "J47",
            "J48",
            "J49",
            "J50",
            "J51",
            "J52",
            "J53",
            "J54",
            "J55",
            "J56",
            "J57",
            "J58",
            "J59",
            "J60",
            "J61",
            "J62",
            "J63",
            "J64",
            "J65",
            "J66",
            "J67",
            "J68",
            "J69",
            "J70",
            "J71",
            "J72",
            "J73",
            "J74",
            "J75",
            "J76",
            "J78",
            "J79",
            "J81",
            "J82",
            "J83",
            "J84",
            "J85",
            "J87",
            "J90",
            "J91",
            "J92",
            "J93",
            "J95",
            "J96",
            "J97",
            "J98",
            "J99",
            "JE",
            "JK",
            "JM",
            "JNT",
            "JOU",
            "JPS",
            "JWL",
            "K1",
            "K10",
            "K11",
            "K12",
            "K13",
            "K14",
            "K15",
            "K16",
            "K17",
            "K18",
            "K19",
            "K2",
            "K20",
            "K21",
            "K22",
            "K23",
            "K26",
            "K27",
            "K28",
            "K3",
            "K30",
            "K31",
            "K32",
            "K33",
            "K34",
            "K35",
            "K36",
            "K37",
            "K38",
            "K39",
            "K40",
            "K41",
            "K42",
            "K43",
            "K45",
            "K46",
            "K47",
            "K48",
            "K49",
            "K50",
            "K51",
            "K52",
            "K53",
            "K54",
            "K55",
            "K58",
            "K59",
            "K6",
            "K60",
            "K61",
            "K62",
            "K63",
            "K64",
            "K65",
            "K66",
            "K67",
            "K68",
            "K69",
            "K70",
            "K71",
            "K73",
            "K74",
            "K75",
            "K76",
            "K77",
            "K78",
            "K79",
            "K80",
            "K81",
            "K82",
            "K83",
            "K84",
            "K85",
            "K86",
            "K87",
            "K88",
            "K89",
            "K90",
            "K91",
            "K92",
            "K93",
            "K94",
            "K95",
            "K96",
            "K97",
            "K98",
            "K99",
            "KA",
            "KAT",
            "KB",
            "KBA",
            "KCC",
            "KDW",
            "KEL",
            "KGM",
            "KGS",
            "KHY",
            "KHZ",
            "KI",
            "KIC",
            "KIP",
            "KJ",
            "KJO",
            "KL",
            "KLK",
            "KLX",
            "KMA",
            "KMH",
            "KMK",
            "KMQ",
            "KMT",
            "KNI",
            "KNM",
            "KNS",
            "KNT",
            "KO",
            "KPA",
            "KPH",
            "KPO",
            "KPP",
            "KR",
            "KSD",
            "KSH",
            "KT",
            "KTN",
            "KUR",
            "KVA",
            "KVR",
            "KVT",
            "KW",
            "KWH",
            "KWO",
            "KWT",
            "KX",
            "L10",
            "L11",
            "L12",
            "L13",
            "L14",
            "L15",
            "L16",
            "L17",
            "L18",
            "L19",
            "L2",
            "L20",
            "L21",
            "L23",
            "L24",
            "L25",
            "L26",
            "L27",
            "L28",
            "L29",
            "L30",
            "L31",
            "L32",
            "L33",
            "L34",
            "L35",
            "L36",
            "L37",
            "L38",
            "L39",
            "L40",
            "L41",
            "L42",
            "L43",
            "L44",
            "L45",
            "L46",
            "L47",
            "L48",
            "L49",
            "L50",
            "L51",
            "L52",
            "L53",
            "L54",
            "L55",
            "L56",
            "L57",
            "L58",
            "L59",
            "L60",
            "L63",
            "L64",
            "L65",
            "L66",
            "L67",
            "L68",
            "L69",
            "L70",
            "L71",
            "L72",
            "L73",
            "L74",
            "L75",
            "L76",
            "L77",
            "L78",
            "L79",
            "L80",
            "L81",
            "L82",
            "L83",
            "L84",
            "L85",
            "L86",
            "L87",
            "L88",
            "L89",
            "L90",
            "L91",
            "L92",
            "L93",
            "L94",
            "L95",
            "L96",
            "L98",
            "L99",
            "LA",
            "LAC",
            "LBR",
            "LBT",
            "LD",
            "LEF",
            "LF",
            "LH",
            "LK",
            "LM",
            "LN",
            "LO",
            "LP",
            "LPA",
            "LR",
            "LS",
            "LTN",
            "LTR",
            "LUB",
            "LUM",
            "LUX",
            "LY",
            "M1",
            "M10",
            "M11",
            "M12",
            "M13",
            "M14",
            "M15",
            "M16",
            "M17",
            "M18",
            "M19",
            "M20",
            "M21",
            "M22",
            "M23",
            "M24",
            "M25",
            "M26",
            "M27",
            "M29",
            "M30",
            "M31",
            "M32",
            "M33",
            "M34",
            "M35",
            "M36",
            "M37",
            "M38",
            "M39",
            "M4",
            "M40",
            "M41",
            "M42",
            "M43",
            "M44",
            "M45",
            "M46",
            "M47",
            "M48",
            "M49",
            "M5",
            "M50",
            "M51",
            "M52",
            "M53",
            "M55",
            "M56",
            "M57",
            "M58",
            "M59",
            "M60",
            "M61",
            "M62",
            "M63",
            "M64",
            "M65",
            "M66",
            "M67",
            "M68",
            "M69",
            "M7",
            "M70",
            "M71",
            "M72",
            "M73",
            "M74",
            "M75",
            "M76",
            "M77",
            "M78",
            "M79",
            "M80",
            "M81",
            "M82",
            "M83",
            "M84",
            "M85",
            "M86",
            "M87",
            "M88",
            "M89",
            "M9",
            "M90",
            "M91",
            "M92",
            "M93",
            "M94",
            "M95",
            "M96",
            "M97",
            "M98",
            "M99",
            "MAH",
            "MAL",
            "MAM",
            "MAR",
            "MAW",
            "MBE",
            "MBF",
            "MBR",
            "MC",
            "MCU",
            "MD",
            "MGM",
            "MHZ",
            "MIK",
            "MIL",
            "MIN",
            "MIO",
            "MIU",
            "MLD",
            "MLT",
            "MMK",
            "MMQ",
            "MMT",
            "MND",
            "MON",
            "MPA",
            "MQH",
            "MQS",
            "MSK",
            "MTK",
            "MTQ",
            "MTR",
            "MTS",
            "MVA",
            "MWH",
            "N1",
            "N10",
            "N11",
            "N12",
            "N13",
            "N14",
            "N15",
            "N16",
            "N17",
            "N18",
            "N19",
            "N20",
            "N21",
            "N22",
            "N23",
            "N24",
            "N25",
            "N26",
            "N27",
            "N28",
            "N29",
            "N3",
            "N30",
            "N31",
            "N32",
            "N33",
            "N34",
            "N35",
            "N36",
            "N37",
            "N38",
            "N39",
            "N40",
            "N41",
            "N42",
            "N43",
            "N44",
            "N45",
            "N46",
            "N47",
            "N48",
            "N49",
            "N50",
            "N51",
            "N52",
            "N53",
            "N54",
            "N55",
            "N56",
            "N57",
            "N58",
            "N59",
            "N60",
            "N61",
            "N62",
            "N63",
            "N64",
            "N65",
            "N66",
            "N67",
            "N68",
            "N69",
            "N70",
            "N71",
            "N72",
            "N73",
            "N74",
            "N75",
            "N76",
            "N77",
            "N78",
            "N79",
            "N80",
            "N81",
            "N82",
            "N83",
            "N84",
            "N85",
            "N86",
            "N87",
            "N88",
            "N89",
            "N90",
            "N91",
            "N92",
            "N93",
            "N94",
            "N95",
            "N96",
            "N97",
            "N98",
            "N99",
            "NA",
            "NAR",
            "NCL",
            "NEW",
            "NF",
            "NIL",
            "NIU",
            "NL",
            "NM3",
            "NMI",
            "NMP",
            "NPT",
            "NT",
            "NU",
            "NX",
            "OA",
            "ODE",
            "OHM",
            "ON",
            "ONZ",
            "OPM",
            "OT",
            "OZA",
            "OZI",
            "P1",
            "P10",
            "P11",
            "P12",
            "P13",
            "P14",
            "P15",
            "P16",
            "P17",
            "P18",
            "P19",
            "P2",
            "P20",
            "P21",
            "P22",
            "P23",
            "P24",
            "P25",
            "P26",
            "P27",
            "P28",
            "P29",
            "P30",
            "P31",
            "P32",
            "P33",
            "P34",
            "P35",
            "P36",
            "P37",
            "P38",
            "P39",
            "P40",
            "P41",
            "P42",
            "P43",
            "P44",
            "P45",
            "P46",
            "P47",
            "P48",
            "P49",
            "P5",
            "P50",
            "P51",
            "P52",
            "P53",
            "P54",
            "P55",
            "P56",
            "P57",
            "P58",
            "P59",
            "P60",
            "P61",
            "P62",
            "P63",
            "P64",
            "P65",
            "P66",
            "P67",
            "P68",
            "P69",
            "P70",
            "P71",
            "P72",
            "P73",
            "P74",
            "P75",
            "P76",
            "P77",
            "P78",
            "P79",
            "P80",
            "P81",
            "P82",
            "P83",
            "P84",
            "P85",
            "P86",
            "P87",
            "P88",
            "P89",
            "P90",
            "P91",
            "P92",
            "P93",
            "P94",
            "P95",
            "P96",
            "P97",
            "P98",
            "P99",
            "PAL",
            "PD",
            "PFL",
            "PGL",
            "PI",
            "PLA",
            "PO",
            "PQ",
            "PR",
            "PS",
            "PTD",
            "PTI",
            "PTL",
            "PTN",
            "Q10",
            "Q11",
            "Q12",
            "Q13",
            "Q14",
            "Q15",
            "Q16",
            "Q17",
            "Q18",
            "Q19",
            "Q20",
            "Q21",
            "Q22",
            "Q23",
            "Q24",
            "Q25",
            "Q26",
            "Q27",
            "Q28",
            "Q29",
            "Q30",
            "Q31",
            "Q32",
            "Q33",
            "Q34",
            "Q35",
            "Q36",
            "Q37",
            "Q38",
            "Q39",
            "Q40",
            "Q3",
            "QA",
            "QAN",
            "QB",
            "QR",
            "QTD",
            "QTI",
            "QTL",
            "QTR",
            "R1",
            "R9",
            "RH",
            "RM",
            "ROM",
            "RP",
            "RPM",
            "RPS",
            "RT",
            "S3",
            "S4",
            "SAN",
            "SCO",
            "SCR",
            "SEC",
            "SET",
            "SG",
            "SIE",
            "SM3",
            "SMI",
            "SQ",
            "SQR",
            "SR",
            "STC",
            "STI",
            "STK",
            "STL",
            "STN",
            "STW",
            "SW",
            "SX",
            "SYR",
            "T0",
            "T3",
            "TAH",
            "TAN",
            "TI",
            "TIC",
            "TIP",
            "TKM",
            "TMS",
            "TNE",
            "TP",
            "TPI",
            "TPR",
            "TQD",
            "TRL",
            "TST",
            "TTS",
            "U1",
            "U2",
            "UB",
            "UC",
            "VA",
            "VLT",
            "VP",
            "W2",
            "WA",
            "WB",
            "WCD",
            "WE",
            "WEB",
            "WEE",
            "WG",
            "WHR",
            "WM",
            "WSD",
            "WTT",
            "X1",
            "YDK",
            "YDQ",
            "YRD",
            "Z11",
            "ZP",
            "ZZ",
            "X1A",
            "X1B",
            "X1D",
            "X1F",
            "X1G",
            "X1W",
            "X2C",
            "X3A",
            "X3H",
            "X43",
            "X44",
            "X4A",
            "X4B",
            "X4C",
            "X4D",
            "X4F",
            "X4G",
            "X4H",
            "X5H",
            "X5L",
            "X5M",
            "X6H",
            "X6P",
            "X7A",
            "X7B",
            "X8A",
            "X8B",
            "X8C",
            "XAA",
            "XAB",
            "XAC",
            "XAD",
            "XAE",
            "XAF",
            "XAG",
            "XAH",
            "XAI",
            "XAJ",
            "XAL",
            "XAM",
            "XAP",
            "XAT",
            "XAV",
            "XB4",
            "XBA",
            "XBB",
            "XBC",
            "XBD",
            "XBE",
            "XBF",
            "XBG",
            "XBH",
            "XBI",
            "XBJ",
            "XBK",
            "XBL",
            "XBM",
            "XBN",
            "XBO",
            "XBP",
            "XBQ",
            "XBR",
            "XBS",
            "XBT",
            "XBU",
            "XBV",
            "XBW",
            "XBX",
            "XBY",
            "XBZ",
            "XCA",
            "XCB",
            "XCC",
            "XCD",
            "XCE",
            "XCF",
            "XCG",
            "XCH",
            "XCI",
            "XCJ",
            "XCK",
            "XCL",
            "XCM",
            "XCN",
            "XCO",
            "XCP",
            "XCQ",
            "XCR",
            "XCS",
            "XCT",
            "XCU",
            "XCV",
            "XCW",
            "XCX",
            "XCY",
            "XCZ",
            "XDA",
            "XDB",
            "XDC",
            "XDG",
            "XDH",
            "XDI",
            "XDJ",
            "XDK",
            "XDL",
            "XDM",
            "XDN",
            "XDP",
            "XDR",
            "XDS",
            "XDT",
            "XDU",
            "XDV",
            "XDW",
            "XDX",
            "XDY",
            "XEC",
            "XED",
            "XEE",
            "XEF",
            "XEG",
            "XEH",
            "XEI",
            "XEN",
            "XFB",
            "XFC",
            "XFD",
            "XFE",
            "XFI",
            "XFL",
            "XFO",
            "XFP",
            "XFR",
            "XFT",
            "XFW",
            "XFX",
            "XGB",
            "XGI",
            "XGL",
            "XGR",
            "XGU",
            "XGY",
            "XGZ",
            "XHA",
            "XHB",
            "XHC",
            "XHG",
            "XHN",
            "XHR",
            "XIA",
            "XIB",
            "XIC",
            "XID",
            "XIE",
            "XIF",
            "XIG",
            "XIH",
            "XIK",
            "XIL",
            "XIN",
            "XIZ",
            "XJB",
            "XJC",
            "XJG",
            "XJR",
            "XJT",
            "XJY",
            "XKG",
            "XKI",
            "XLE",
            "XLG",
            "XLT",
            "XLU",
            "XLV",
            "XLZ",
            "XMA",
            "XMB",
            "XMC",
            "XME",
            "XMR",
            "XMS",
            "XMT",
            "XMW",
            "XMX",
            "XNA",
            "XNE",
            "XNF",
            "XNG",
            "XNS",
            "XNT",
            "XNU",
            "XNV",
            "XOA",
            "XOB",
            "XOC",
            "XOD",
            "XOE",
            "XOF",
            "XOK",
            "XOT",
            "XOU",
            "XP2",
            "XPA",
            "XPB",
            "XPC",
            "XPD",
            "XPE",
            "XPF",
            "XPG",
            "XPH",
            "XPI",
            "XPJ",
            "XPK",
            "XPL",
            "XPN",
            "XPO",
            "XPP",
            "XPR",
            "XPT",
            "XPU",
            "XPV",
            "XPX",
            "XPY",
            "XPZ",
            "XQA",
            "XQB",
            "XQC",
            "XQD",
            "XQF",
            "XQG",
            "XQH",
            "XQJ",
            "XQK",
            "XQL",
            "XQM",
            "XQN",
            "XQP",
            "XQQ",
            "XQR",
            "XQS",
            "XRD",
            "XRG",
            "XRJ",
            "XRK",
            "XRL",
            "XRO",
            "XRT",
            "XRZ",
            "XSA",
            "XSB",
            "XSC",
            "XSD",
            "XSE",
            "XSH",
            "XSI",
            "XSK",
            "XSL",
            "XSM",
            "XSO",
            "XSP",
            "XSS",
            "XST",
            "XSU",
            "XSV",
            "XSW",
            "XSX",
            "XSY",
            "XSZ",
            "XT1",
            "XTB",
            "XTC",
            "XTD",
            "XTE",
            "XTG",
            "XTI",
            "XTK",
            "XTL",
            "XTN",
            "XTO",
            "XTR",
            "XTS",
            "XTT",
            "XTU",
            "XTV",
            "XTW",
            "XTY",
            "XTZ",
            "XUC",
            "XUN",
            "XVA",
            "XVG",
            "XVI",
            "XVK",
            "XVL",
            "XVO",
            "XVP",
            "XVQ",
            "XVN",
            "XVR",
            "XVS",
            "XVY",
            "XWA",
            "XWB",
            "XWC",
            "XWD",
            "XWF",
            "XWG",
            "XWH",
            "XWJ",
            "XWK",
            "XWL",
            "XWM",
            "XWN",
            "XWP",
            "XWQ",
            "XWR",
            "XWS",
            "XWT",
            "XWU",
            "XWV",
            "XWW",
            "XWX",
            "XWY",
            "XWZ",
            "XXA",
            "XXB",
            "XXC",
            "XXD",
            "XXF",
            "XXG",
            "XXH",
            "XXJ",
            "XXK",
            "XYA",
            "XYB",
            "XYC",
            "XYD",
            "XYF",
            "XYG",
            "XYH",
            "XYJ",
            "XYK",
            "XYL",
            "XYM",
            "XYN",
            "XYP",
            "XYQ",
            "XYR",
            "XYS",
            "XYT",
            "XYV",
            "XYW",
            "XYX",
            "XYY",
            "XYZ",
            "XZA",
            "XZB",
            "XZC",
            "XZD",
            "XZF",
            "XZG",
            "XZH",
            "XZJ",
            "XZK",
            "XZL",
            "XZM",
            "XZN",
            "XZP",
            "XZQ",
            "XZR",
            "XZS",
            "XZT",
            "XZU",
            "XZV",
            "XZW",
            "XZX",
            "XZY",
            "XZZ",
            "04",
            "05",
            "08",
            "16",
            "17",
            "18",
            "19",
            "26",
            "29",
            "30",
            "31",
            "32",
            "36",
            "43",
            "44",
            "45",
            "46",
            "47",
            "48",
            "53",
            "54",
            "62",
            "63",
            "64",
            "66",
            "69",
            "71",
            "72",
            "73",
            "76",
            "78",
            "84",
            "90",
            "92",
            "93",
            "94",
            "95",
            "96",
            "97",
            "98",
            "1A",
            "1B",
            "1C",
            "1D",
            "1E",
            "1F",
            "1G",
            "1H",
            "1J",
            "1K",
            "1L",
            "1M",
            "1X",
            "2V",
            "2W",
            "3E",
            "3G",
            "3H",
            "3I",
            "4A",
            "4B",
            "4E",
            "5C",
            "5F",
            "5G",
            "5H",
            "5I",
            "5K",
            "5P",
            "5Q",
            "A1",
            "A25",
            "A50",
            "A51",
            "A52",
            "A57",
            "A58",
            "A60",
            "A61",
            "A62",
            "A63",
            "A64",
            "A65",
            "A66",
            "A67",
            "A77",
            "A78",
            "A79",
            "A80",
            "A81",
            "A82",
            "A83",
            "AJ",
            "AM",
            "AP",
            "AR",
            "ARE",
            "ATT",
            "AV",
            "AW",
            "B0",
            "B2",
            "B36",
            "B37",
            "B38",
            "B39",
            "B40",
            "B5",
            "B51",
            "B6",
            "B65",
            "B9",
            "BD",
            "BE",
            "BG",
            "BH",
            "BJ",
            "BK",
            "BL",
            "BO",
            "BR",
            "BT",
            "BW",
            "BX",
            "BZ",
            "C1",
            "C2",
            "C4",
            "C5",
            "C6",
            "C77",
            "C98",
            "CA",
            "CH",
            "CJ",
            "CK",
            "CL",
            "CO",
            "CQ",
            "CR",
            "CS",
            "CT",
            "CU",
            "CV",
            "CY",
            "CZ",
            "D14",
            "D28",
            "D35",
            "D37",
            "D38",
            "D39",
            "D40",
            "D64",
            "D66",
            "D67",
            "D7",
            "D70",
            "D71",
            "D72",
            "D75",
            "D76",
            "D79",
            "D8",
            "D9",
            "D90",
            "D92",
            "D96",
            "D97",
            "D98",
            "D99",
            "DC",
            "DE",
            "DI",
            "DQ",
            "DR",
            "DRM",
            "DS",
            "DU",
            "DX",
            "DY",
            "E2",
            "E3",
            "E5",
            "EC",
            "EP",
            "EV",
            "F1",
            "F9",
            "FB",
            "FD",
            "FE",
            "FG",
            "FM",
            "G7",
            "GC",
            "GD",
            "GH",
            "GK",
            "GN",
            "GRT",
            "GT",
            "GW",
            "GY",
            "GZ",
            "H1",
            "H2",
            "HAR",
            "HD",
            "HE",
            "HF",
            "HI",
            "HJ",
            "HK",
            "HL",
            "HN",
            "HO",
            "HP",
            "HS",
            "HT",
            "HY",
            "IC",
            "IF",
            "II",
            "IL",
            "IM",
            "IP",
            "IT",
            "JB",
            "JG",
            "JO",
            "JR",
            "K5",
            "KD",
            "KF",
            "KG",
            "KS",
            "KTM",
            "LC",
            "LE",
            "LI",
            "LJ",
            "LX",
            "M0",
            "MA",
            "MF",
            "MK",
            "MQ",
            "MT",
            "MV",
            "N2",
            "NB",
            "NBB",
            "NC",
            "ND",
            "NE",
            "NG",
            "NH",
            "NI",
            "NJ",
            "NN",
            "NPL",
            "NPR",
            "NQ",
            "NR",
            "NRL",
            "NTT",
            "NV",
            "NY",
            "OP",
            "OZ",
            "P0",
            "P3",
            "P4",
            "P6",
            "P7",
            "P8",
            "P9",
            "PA",
            "PB",
            "PE",
            "PF",
            "PG",
            "PK",
            "PL",
            "PM",
            "PN",
            "PT",
            "PU",
            "PV",
            "PW",
            "PY",
            "PZ",
            "QD",
            "QH",
            "QK",
            "QT",
            "R4",
            "RA",
            "RD",
            "RG",
            "RK",
            "RL",
            "RN",
            "RO",
            "RS",
            "RU",
            "S5",
            "S6",
            "S7",
            "S8",
            "SA",
            "SD",
            "SE",
            "SHT",
            "SK",
            "SL",
            "SN",
            "SO",
            "SP",
            "SS",
            "SST",
            "ST",
            "SV",
            "T1",
            "T4",
            "T5",
            "T6",
            "T7",
            "T8",
            "TA",
            "TC",
            "TD",
            "TE",
            "TF",
            "TJ",
            "TK",
            "TL",
            "TN",
            "TQ",
            "TR",
            "TS",
            "TSD",
            "TSH",
            "TT",
            "TU",
            "TV",
            "TW",
            "TY",
            "UA",
            "UD",
            "UE",
            "UF",
            "UH",
            "UM",
            "VI",
            "VQ",
            "VS",
            "W4",
            "WH",
            "WI",
            "WR",
            "WW",
            "YL",
            "YT",
            "Z1",
            "Z2",
            "Z3",
            "Z4",
            "Z5",
            "Z6",
            "Z8"
          ],
          "default": "C62"
        },
        "allowanceCharge": {
          "title": "allowanceCharge",
          "description": "DEPRECATED. Use allowanceCharges. The discount or surcharge on this item. Should be negative for discounts",
          "type": "number",
          "deprecated": true
        },
        "allowanceCharges": {
          "title": "Allowance Charges",
          "description": "An array of allowances and charges.",
          "type": "array",
          "items": {
            "$ref": "#/$defs/LineAllowanceCharge"
          },
          "minItems": 0
        },
        "amountExcludingVat": {
          "title": "amountExcludingVat",
          "description": "The amount excluding tax. Should equal price.priceAmount x quantity / price.baseQuantity + line-level allowanceCharges. Price-level discounts are already included in priceAmount.",
          "type": "number"
        },
        "amountExcludingTax": {
          "title": "amountExcludingTax",
          "description": "The amount excluding tax. EXPERIMENTAL for sending. Should equal price.priceAmount x quantity / price.baseQuantity + line-level allowanceCharges. Price-level discounts are already included in priceAmount.",
          "type": "number"
        },
        "amountIncludingTax": {
          "title": "amountIncludingTax",
          "description": "The amount including tax. Can only be used for \"priceMode\": \"price_mode_gross\". Use either this property or amountExcludingTax (amountExcludingVat).",
          "type": "number"
        },
        "tax": {
          "allOf": [
            {
              "$ref": "#/$defs/Tax"
            },
            {
              "title": "Tax",
              "description": "DEPRECATED. Use taxesDutiesFees. The tax for this invoice line.",
              "deprecated": true
            }
          ],
          "deprecated": true
        },
        "taxesDutiesFees": {
          "title": "Taxes, Duties and Fees",
          "description": "An array of taxes, duties and fees for this invoice line. Multiple taxesDutiesFees items is allowed only for IN (India) and US (USA) taxes. All other countries can only have a single Tax item in this array.",
          "type": "array",
          "items": {
            "$ref": "#/$defs/Tax"
          },
          "minItems": 0
        },
        "accountingCost": {
          "title": "Accounting Cost",
          "description": "The buyer's accounting cost centre for this invoice line, expressed as text.",
          "type": "string",
          "minLength": 1
        },
        "references": {
          "title": "References",
          "description": "An array of references to other documents or codes. Note that many syntaxes do not support multiple references of the same type in which case they will be concatenated with ','. Also, not all syntaxes support all documentTypes.",
          "type": "array",
          "items": {
            "$ref": "#/$defs/Reference"
          },
          "minItems": 0
        },
        "additionalItemProperties": {
          "title": "Additional Item Properties",
          "description": "An array of additional item properties.",
          "type": "array",
          "items": {
            "$ref": "#/$defs/AdditionalItemProperty"
          },
          "minItems": 0
        },
        "itemType": {
          "title": "Item Type",
          "description": "Whether the invoiced item concerns goods (G), services (S) or both (B) (BTAE-13). Only used when the sender country is AE (PINT-AE). Maps to UBL CommodityClassification/CommodityCode. When G or B, an item classification code with documentIdListId 'HS' is required in the references array (documentType 'item_classification_code'). When S or B, a serviceAccountingCode is required. See <<country_ae>>.",
          "type": "string",
          "enum": [
            "G",
            "S",
            "B"
          ]
        },
        "natureCode": {
          "title": "Nature Code",
          "description": "The type of goods or services subject to the reverse charge mechanism (BTAE-09). Only used when the sender country is AE (PINT-AE), where it is mandatory for lines with tax category 'reverse_charge'. Maps to UBL CommodityClassification/NatureCode. Values must be from the UAE GoodsType / RCM code list (DL8.48.8.2, DL8.48.8.1, DL8.48.3.1, DL8.48.3.2, DL8.48.3.3). See <<country_ae>>.",
          "type": "string",
          "enum": [
            "DL8.48.8.2",
            "DL8.48.8.1",
            "DL8.48.3.1",
            "DL8.48.3.2",
            "DL8.48.3.3"
          ]
        },
        "serviceAccountingCode": {
          "title": "Service Accounting Code",
          "description": "The service accounting code (SAC) of the invoiced service (BTAE-17). Only used when the sender country is AE (PINT-AE), where it is mandatory when itemType is S or B. Maps to UBL AdditionalItemIdentification with schemeID 'SAC'. See <<country_ae>>.",
          "type": "string",
          "minLength": 1,
          "maxLength": 64
        },
        "notes": {
          "title": "Notes",
          "description": "An array of notes attached to this invoice line. Used for the French e-invoicing reform (FR-FE EXT-FR-FE-183) and equivalent constructs in other syntaxes.",
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "sellersItemIdentification": {
          "title": "Sellers Item Identification",
          "description": "DEPRECATED. Use the references array with 'line_sellers_item_identification' documentType. The ID the seller assigned to this item.",
          "type": "string",
          "minLength": 1,
          "deprecated": true
        },
        "buyersItemIdentification": {
          "title": "Buyers Item Identification",
          "description": "DEPRECATED. Use the references array with 'line_buyers_item_identification' documentType. The ID the buyer assigned to this item.",
          "type": "string",
          "minLength": 1,
          "deprecated": true
        },
        "standardItemIdentification": {
          "title": "Standard Item Identification",
          "description": "DEPRECATED. Use 'line_standard_item_identification'. Standardized ID for the item.",
          "type": "string",
          "minLength": 1,
          "deprecated": true
        },
        "standardItemIdentificationSchemeId": {
          "title": "Standard Item Identification Scheme",
          "description": "DEPRECATED. Use the references array with 'line_standard_item_identification' documentType. The scheme for the standardized ID for the item.",
          "type": "string",
          "minLength": 1,
          "default": "GTIN",
          "deprecated": true
        },
        "standardItemIdentificationSchemeAgencyId": {
          "title": "Standard Item Identification Scheme Agency",
          "description": "DEPRECATED. Use the references array with 'line_standard_item_identification' documentType. The scheme agency for the standardized ID for the item.",
          "type": "string",
          "minLength": 1,
          "default": "9",
          "deprecated": true
        },
        "note": {
          "title": "Note",
          "description": "DEPRECATED. Use notes instead. A note to add to the document line.",
          "type": "string",
          "deprecated": true
        }
      }
    },
    "InvoiceResponseClarification": {
      "title": "Invoice Response Clarification",
      "description": "A clarification for why a received invoice was rejected (RE) or under query (UQ) and what action to take.",
      "type": "object",
      "properties": {
        "clarificationCodeType": {
          "title": "Clarification Code Type",
          "description": "The type of the clarification: \"OPStatusReason\" for a status reason (why the invoice has this status), \"OPStatusAction\" for a requested action. The clarificationCode must belong to the code list of this type. For invoices received through the French (fr-dgfip) workflow this field is mandatory for every clarification that carries a clarificationCode, and responses CA, UQ and RE require at least one clarification of type OPStatusReason.",
          "type": "string",
          "enum": [
            "OPStatusReason",
            "OPStatusAction"
          ]
        },
        "clarificationCode": {
          "title": "Clarification Code",
          "description": "The code for the clarification. It must be valid for the clarificationCodeType: reason codes (OPStatusReason) are NON, REF, LEG, REC, QUA, DEL, PRI, QTY, ITM, PAY, UNR, FIN, PPD and OTH; action codes (OPStatusAction) are NOA, PIN, NIN, CNF, CNP, CNA and OTH. PPD can only be used with responseCode PD, and PPD/OTH require a clarification text. For details see https://docs.peppol.eu/poacc/upgrade-3/codelist/OPStatusReason/ and https://docs.peppol.eu/poacc/upgrade-3/codelist/OPStatusAction/. For invoices received through the French (fr-dgfip) workflow, the reason code is mapped to the corresponding French CDAR motif (MDT-113) in the Peppol-delivered CDAR; for RE responses only, that motif is also reported to the PPF.",
          "type": "string",
          "enum": [
            "NON",
            "REF",
            "LEG",
            "REC",
            "QUA",
            "DEL",
            "PRI",
            "QTY",
            "ITM",
            "PAY",
            "UNR",
            "FIN",
            "PPD",
            "OTH",
            "NOA",
            "PIN",
            "NIN",
            "CNF",
            "CNP",
            "CNA"
          ]
        },
        "clarification": {
          "title": "Clarification",
          "description": "A textual description of the clarification. Mandatory when clarificationCode is PPD or OTH.",
          "type": "string"
        },
        "conditions": {
          "title": "Conditions",
          "description": "A list of conditions that triggered the error. This is only included for receiving in webhooks. You cannot currently send these conditions.",
          "type": "array",
          "items": {
            "$ref": "#/$defs/InvoiceResponseCondition"
          },
          "minItems": 0
        }
      }
    },
    "InvoiceResponseCondition": {
      "title": "Invoice Response Condition",
      "description": "Specifies an error in the received invoice.",
      "type": "object",
      "properties": {
        "fieldCode": {
          "title": "Field Code",
          "description": "The code of the field with the error. Find the element here: https://docs.peppol.eu/poacc/billing/3.0/syntax/ubl-invoice/ and then get the field's Business term.",
          "type": "string"
        },
        "fieldValue": {
          "title": "Field value",
          "description": "The (error) value of the field.",
          "type": "string"
        }
      },
      "required": [
        "fieldCode",
        "fieldValue"
      ]
    },
    "InvoiceeParty": {
      "title": "Invoicee Party",
      "description": "The party that is being invoiced when different from the buyer. Used in the French e-invoicing reform (FR-FE EXT-FR-FE-BG-04). Maps to UBL AccountingCustomerParty/Party/ServiceProviderParty/Party and CII InvoiceeTradeParty.",
      "type": "object",
      "properties": {
        "party": {
          "$ref": "#/$defs/Party"
        },
        "publicIdentifiers": {
          "title": "Public identifiers",
          "description": "A list of legal and tax identifiers for this party.",
          "type": "array",
          "items": {
            "$ref": "#/$defs/PublicIdentifier"
          }
        }
      },
      "required": [
        "party"
      ]
    },
    "InvoicerParty": {
      "title": "Invoicer Party",
      "description": "The party that issues the invoice on behalf of the seller. Used in the French e-invoicing reform (FR-FE EXT-FR-FE-BG-05). Maps to UBL AccountingSupplierParty/Party/ServiceProviderParty/Party and CII InvoicerTradeParty.",
      "type": "object",
      "properties": {
        "party": {
          "$ref": "#/$defs/Party"
        },
        "publicIdentifiers": {
          "title": "Public identifiers",
          "description": "A list of legal and tax identifiers for this party.",
          "type": "array",
          "items": {
            "$ref": "#/$defs/PublicIdentifier"
          }
        }
      },
      "required": [
        "party"
      ]
    },
    "LineAllowanceCharge": {
      "title": "Allowance or Charge",
      "type": "object",
      "properties": {
        "amountExcludingTax": {
          "title": "Amount Excluding Tax",
          "description": "The amount for the allowance or charge, excluding tax.",
          "type": "number"
        },
        "baseAmountExcludingTax": {
          "title": "Base Amount Excluding Tax",
          "description": "The base amount for the allowance or charge, excluding tax.",
          "type": "number"
        },
        "reason": {
          "title": "Reason",
          "description": "The reason for the allowance or charge, free text. Defaults to 'Mutually Agreed' if neither reason nor reasonCode are provided.",
          "type": "string"
        },
        "reasonCode": {
          "title": "Reason Code",
          "description": "The reason code for the allowance or charge",
          "type": "string"
        }
      },
      "required": [
        "amountExcludingTax"
      ]
    },
    "LineDelivery": {
      "type": "object",
      "properties": {
        "deliveryLocation": {
          "type": "object",
          "properties": {
            "id": {
              "title": "Identifier",
              "description": "The location identifier.",
              "type": "string",
              "minLength": 2
            },
            "schemeId": {
              "title": "Identifier Scheme ID",
              "description": "The schemeId of the location identifier (e.g. '0088')",
              "type": "string"
            },
            "requestedDeliveryPeriod": {
              "title": "Requested Delivery Period",
              "description": "The requested delivery period. If not present, will be taken from the document level. If that is not present, this field is mandatory.",
              "type": "string",
              "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2} - [0-9]{4}-[0-9]{2}-[0-9]{2}$"
            }
          }
        }
      }
    },
    "Metadata": {
      "title": "Metadata",
      "description": "Metadata about the document, used in the UI and reporting.",
      "type": "object",
      "properties": {
        "documentNumber": {
          "title": "Document Number",
          "description": "The number of the document. For UBL documents, this is the Invoice/ID or CreditNote/ID.",
          "type": "string"
        },
        "documentDate": {
          "title": "Document Date",
          "description": "The date of the document. For UBL documents, this is the Invoice/IssueDate or CreditNote/IssueDate.",
          "type": "string",
          "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
        },
        "receiverName": {
          "title": "Receiver Name",
          "description": "The name of the receiver of the document. For UBL documents, this is the Invoice/AccountingCustomerParty/PartyName/Name or CreditNote/AccountingCustomerParty/PartyName/Name.",
          "type": "string",
          "minLength": 2,
          "maxLength": 128
        },
        "receiverCountry": {
          "title": "Receiver Country",
          "description": "The country of the receiver of the document in ISO 3166-1 Alpha-2 format. For UBL documents, this is the Invoice/AccountingCustomerParty/PostalAddress/Country/IdentificationCode or CreditNote/AccountingCustomerParty/PostalAddress/Country/IdentificationCode.",
          "type": "string",
          "pattern": "^[A-Z0-9]{2}$"
        },
        "payloadType": {
          "title": "Payload Type",
          "description": "The type of payload.",
          "type": "string",
          "enum": [
            "Invoice",
            "CreditNote",
            "InvoiceResponse",
            "Order",
            "OrderResponse",
            "DespatchAdvice",
            "OrderBalance",
            "OrderChange",
            "OrderCancellation",
            "Other"
          ]
        }
      },
      "required": [
        "documentNumber",
        "documentDate",
        "receiverName",
        "receiverCountry",
        "payloadType"
      ]
    },
    "NetworkSettings": {
      "title": "Network Settings",
      "description": "Settings for an additional routing network.",
      "type": "object",
      "properties": {
        "scheme": {
          "title": "enabled",
          "description": "Whether or not the network is enabled",
          "type": "boolean"
        },
        "mock": {
          "title": "Mock",
          "description": "Whether or not to mock the network, if possible.",
          "type": "boolean",
          "default": false
        }
      },
      "required": [
        "enabled"
      ]
    },
    "OrderLine": {
      "title": "Order line",
      "type": "object",
      "properties": {
        "lineId": {
          "title": "Invoice Line ID",
          "description": "The id for this invoice line.",
          "type": "string",
          "minLength": 1
        },
        "quantity": {
          "title": "Quantity",
          "description": "The number of items (may be fractional).",
          "type": "number",
          "default": 1.0
        },
        "quantityUnitCode": {
          "title": "Quantity Unit Code",
          "description": "The unit of measure that applies to the quantity. Codes for unit of packaging from UNECE Recommendation No. 21 can be used in accordance with the descriptions in the \"Intro\" section of UN/ECE Recommendation 20, Revision 11 (2015): The 2 character alphanumeric code values in UNECE Recommendation 21 shall be used. To avoid duplication with existing code values in UNECE Recommendation No. 20, each code value from UNECE Recommendation 21 shall be prefixed with an “X”, resulting in a 3 alphanumeric code when used as a unit of measure. Note that the following additionally allowed codes are deprecated and will be converted to C62: 04, 05, 08, 16, 17, 18, 19, 26, 29, 30, 31, 32, 36, 43, 44, 45, 46, 47, 48, 53, 54, 62, 63, 64, 66, 69, 71, 72, 73, 76, 78, 84, 90, 92, 93, 94, 95, 96, 97, 98, 1A, 1B, 1C, 1D, 1E, 1F, 1G, 1H, 1J, 1K, 1L, 1M, 1X, 2V, 2W, 3E, 3G, 3H, 3I, 4A, 4B, 4E, 5C, 5F, 5G, 5H, 5I, 5K, 5P, 5Q, A1, A25, A50, A51, A52, A57, A58, A60, A61, A62, A63, A64, A65, A66, A67, A77, A78, A79, A80, A81, A82, A83, AJ, AM, AP, AR, ARE, ATT, AV, AW, B0, B2, B36, B37, B38, B39, B40, B5, B51, B6, B65, B9, BD, BE, BG, BH, BJ, BK, BL, BO, BR, BT, BW, BX, BZ, C1, C2, C4, C5, C6, C77, C98, CA, CH, CJ, CK, CL, CO, CQ, CR, CS, CT, CU, CV, CY, CZ, D14, D28, D35, D37, D38, D39, D40, D64, D66, D67, D7, D70, D71, D72, D75, D76, D79, D8, D9, D90, D92, D96, D97, D98, D99, DC, DE, DI, DQ, DR, DRM, DS, DU, DX, DY, E2, E3, E5, EC, EP, EV, F1, F9, FB, FD, FE, FG, FM, G7, GC, GD, GH, GK, GN, GRT, GT, GW, GY, GZ, H1, H2, HAR, HD, HE, HF, HI, HJ, HK, HL, HN, HO, HP, HS, HT, HY, IC, IF, II, IL, IM, IP, IT, JB, JG, JO, JR, K5, KD, KF, KG, KS, KTM, LC, LE, LI, LJ, LX, M0, MA, MF, MK, MQ, MT, MV, N2, NB, NBB, NC, ND, NE, NG, NH, NI, NJ, NN, NPL, NPR, NQ, NR, NRL, NTT, NV, NY, OP, OZ, P0, P3, P4, P6, P7, P8, P9, PA, PB, PE, PF, PG, PK, PL, PM, PN, PT, PU, PV, PW, PY, PZ, QD, QH, QK, QT, R4, RA, RD, RG, RK, RL, RN, RO, RS, RU, S5, S6, S7, S8, SA, SD, SE, SHT, SK, SL, SN, SO, SP, SS, SST, ST, SV, T1, T4, T5, T6, T7, T8, TA, TC, TD, TE, TF, TJ, TK, TL, TN, TQ, TR, TS, TSD, TSH, TT, TU, TV, TW, TY, UA, UD, UE, UF, UH, UM, VI, VQ, VS, W4, WH, WI, WR, WW, YL, YT, Z1, Z2, Z3, Z4, Z5, Z6, Z8",
          "type": "string",
          "enum": [
            "10",
            "11",
            "13",
            "14",
            "15",
            "20",
            "21",
            "22",
            "23",
            "24",
            "25",
            "27",
            "28",
            "33",
            "34",
            "35",
            "37",
            "38",
            "40",
            "41",
            "56",
            "57",
            "58",
            "59",
            "60",
            "61",
            "74",
            "77",
            "80",
            "81",
            "85",
            "87",
            "89",
            "91",
            "1I",
            "2A",
            "2B",
            "2C",
            "2G",
            "2H",
            "2I",
            "2J",
            "2K",
            "2L",
            "2M",
            "2N",
            "2P",
            "2Q",
            "2R",
            "2U",
            "2X",
            "2Y",
            "2Z",
            "3B",
            "3C",
            "4C",
            "4G",
            "4H",
            "4K",
            "4L",
            "4M",
            "4N",
            "4O",
            "4P",
            "4Q",
            "4R",
            "4T",
            "4U",
            "4W",
            "4X",
            "5A",
            "5B",
            "5E",
            "5J",
            "A10",
            "A11",
            "A12",
            "A13",
            "A14",
            "A15",
            "A16",
            "A17",
            "A18",
            "A19",
            "A2",
            "A20",
            "A21",
            "A22",
            "A23",
            "A24",
            "A26",
            "A27",
            "A28",
            "A29",
            "A3",
            "A30",
            "A31",
            "A32",
            "A33",
            "A34",
            "A35",
            "A36",
            "A37",
            "A38",
            "A39",
            "A4",
            "A40",
            "A41",
            "A42",
            "A43",
            "A44",
            "A45",
            "A47",
            "A48",
            "A49",
            "A5",
            "A53",
            "A54",
            "A55",
            "A56",
            "A59",
            "A6",
            "A68",
            "A69",
            "A7",
            "A70",
            "A71",
            "A73",
            "A74",
            "A75",
            "A76",
            "A8",
            "A84",
            "A85",
            "A86",
            "A87",
            "A88",
            "A89",
            "A9",
            "A90",
            "A91",
            "A93",
            "A94",
            "A95",
            "A96",
            "A97",
            "A98",
            "A99",
            "AA",
            "AB",
            "ACR",
            "ACT",
            "AD",
            "AE",
            "AH",
            "AI",
            "AK",
            "AL",
            "AMH",
            "AMP",
            "ANN",
            "APZ",
            "AQ",
            "AS",
            "ASM",
            "ASU",
            "ATM",
            "AWG",
            "AY",
            "AZ",
            "B1",
            "B10",
            "B11",
            "B12",
            "B13",
            "B14",
            "B15",
            "B16",
            "B17",
            "B18",
            "B19",
            "B20",
            "B21",
            "B22",
            "B23",
            "B24",
            "B25",
            "B26",
            "B27",
            "B28",
            "B29",
            "B3",
            "B30",
            "B31",
            "B32",
            "B33",
            "B34",
            "B35",
            "B4",
            "B41",
            "B42",
            "B43",
            "B44",
            "B45",
            "B46",
            "B47",
            "B48",
            "B49",
            "B50",
            "B52",
            "B53",
            "B54",
            "B55",
            "B56",
            "B57",
            "B58",
            "B59",
            "B60",
            "B61",
            "B62",
            "B63",
            "B64",
            "B66",
            "B67",
            "B68",
            "B69",
            "B7",
            "B70",
            "B71",
            "B72",
            "B73",
            "B74",
            "B75",
            "B76",
            "B77",
            "B78",
            "B79",
            "B8",
            "B80",
            "B81",
            "B82",
            "B83",
            "B84",
            "B85",
            "B86",
            "B87",
            "B88",
            "B89",
            "B90",
            "B91",
            "B92",
            "B93",
            "B94",
            "B95",
            "B96",
            "B97",
            "B98",
            "B99",
            "BAR",
            "BB",
            "BFT",
            "BHP",
            "BIL",
            "BLD",
            "BLL",
            "BP",
            "BPM",
            "BQL",
            "BTU",
            "BUA",
            "BUI",
            "C0",
            "C10",
            "C11",
            "C12",
            "C13",
            "C14",
            "C15",
            "C16",
            "C17",
            "C18",
            "C19",
            "C20",
            "C21",
            "C22",
            "C23",
            "C24",
            "C25",
            "C26",
            "C27",
            "C28",
            "C29",
            "C3",
            "C30",
            "C31",
            "C32",
            "C33",
            "C34",
            "C35",
            "C36",
            "C37",
            "C38",
            "C39",
            "C40",
            "C41",
            "C42",
            "C43",
            "C44",
            "C45",
            "C46",
            "C47",
            "C48",
            "C49",
            "C50",
            "C51",
            "C52",
            "C53",
            "C54",
            "C55",
            "C56",
            "C57",
            "C58",
            "C59",
            "C60",
            "C61",
            "C62",
            "C63",
            "C64",
            "C65",
            "C66",
            "C67",
            "C68",
            "C69",
            "C7",
            "C70",
            "C71",
            "C72",
            "C73",
            "C74",
            "C75",
            "C76",
            "C78",
            "C79",
            "C8",
            "C80",
            "C81",
            "C82",
            "C83",
            "C84",
            "C85",
            "C86",
            "C87",
            "C88",
            "C89",
            "C9",
            "C90",
            "C91",
            "C92",
            "C93",
            "C94",
            "C95",
            "C96",
            "C97",
            "C99",
            "CCT",
            "CDL",
            "CEL",
            "CEN",
            "CG",
            "CGM",
            "CKG",
            "CLF",
            "CLT",
            "CMK",
            "CMQ",
            "CMT",
            "CNP",
            "CNT",
            "COU",
            "CTG",
            "CTM",
            "CTN",
            "CUR",
            "CWA",
            "CWI",
            "D03",
            "D04",
            "D1",
            "D10",
            "D11",
            "D12",
            "D13",
            "D15",
            "D16",
            "D17",
            "D18",
            "D19",
            "D2",
            "D20",
            "D21",
            "D22",
            "D23",
            "D24",
            "D25",
            "D26",
            "D27",
            "D29",
            "D30",
            "D31",
            "D32",
            "D33",
            "D34",
            "D36",
            "D41",
            "D42",
            "D43",
            "D44",
            "D45",
            "D46",
            "D47",
            "D48",
            "D49",
            "D5",
            "D50",
            "D51",
            "D52",
            "D53",
            "D54",
            "D55",
            "D56",
            "D57",
            "D58",
            "D59",
            "D6",
            "D60",
            "D61",
            "D62",
            "D63",
            "D65",
            "D68",
            "D69",
            "D73",
            "D74",
            "D77",
            "D78",
            "D80",
            "D81",
            "D82",
            "D83",
            "D85",
            "D86",
            "D87",
            "D88",
            "D89",
            "D91",
            "D93",
            "D94",
            "D95",
            "DAA",
            "DAD",
            "DAY",
            "DB",
            "DD",
            "DEC",
            "DG",
            "DJ",
            "DLT",
            "DMA",
            "DMK",
            "DMO",
            "DMQ",
            "DMT",
            "DN",
            "DPC",
            "DPR",
            "DPT",
            "DRA",
            "DRI",
            "DRL",
            "DT",
            "DTN",
            "DWT",
            "DZN",
            "DZP",
            "E01",
            "E07",
            "E08",
            "E09",
            "E10",
            "E12",
            "E14",
            "E15",
            "E16",
            "E17",
            "E18",
            "E19",
            "E20",
            "E21",
            "E22",
            "E23",
            "E25",
            "E27",
            "E28",
            "E30",
            "E31",
            "E32",
            "E33",
            "E34",
            "E35",
            "E36",
            "E37",
            "E38",
            "E39",
            "E4",
            "E40",
            "E41",
            "E42",
            "E43",
            "E44",
            "E45",
            "E46",
            "E47",
            "E48",
            "E49",
            "E50",
            "E51",
            "E52",
            "E53",
            "E54",
            "E55",
            "E56",
            "E57",
            "E58",
            "E59",
            "E60",
            "E61",
            "E62",
            "E63",
            "E64",
            "E65",
            "E66",
            "E67",
            "E68",
            "E69",
            "E70",
            "E71",
            "E72",
            "E73",
            "E74",
            "E75",
            "E76",
            "E77",
            "E78",
            "E79",
            "E80",
            "E81",
            "E82",
            "E83",
            "E84",
            "E85",
            "E86",
            "E87",
            "E88",
            "E89",
            "E90",
            "E91",
            "E92",
            "E93",
            "E94",
            "E95",
            "E96",
            "E97",
            "E98",
            "E99",
            "EA",
            "EB",
            "EQ",
            "F01",
            "F02",
            "F03",
            "F04",
            "F05",
            "F06",
            "F07",
            "F08",
            "F10",
            "F11",
            "F12",
            "F13",
            "F14",
            "F15",
            "F16",
            "F17",
            "F18",
            "F19",
            "F20",
            "F21",
            "F22",
            "F23",
            "F24",
            "F25",
            "F26",
            "F27",
            "F28",
            "F29",
            "F30",
            "F31",
            "F32",
            "F33",
            "F34",
            "F35",
            "F36",
            "F37",
            "F38",
            "F39",
            "F40",
            "F41",
            "F42",
            "F43",
            "F44",
            "F45",
            "F46",
            "F47",
            "F48",
            "F49",
            "F50",
            "F51",
            "F52",
            "F53",
            "F54",
            "F55",
            "F56",
            "F57",
            "F58",
            "F59",
            "F60",
            "F61",
            "F62",
            "F63",
            "F64",
            "F65",
            "F66",
            "F67",
            "F68",
            "F69",
            "F70",
            "F71",
            "F72",
            "F73",
            "F74",
            "F75",
            "F76",
            "F77",
            "F78",
            "F79",
            "F80",
            "F81",
            "F82",
            "F83",
            "F84",
            "F85",
            "F86",
            "F87",
            "F88",
            "F89",
            "F90",
            "F91",
            "F92",
            "F93",
            "F94",
            "F95",
            "F96",
            "F97",
            "F98",
            "F99",
            "FAH",
            "FAR",
            "FBM",
            "FC",
            "FF",
            "FH",
            "FIT",
            "FL",
            "FOT",
            "FP",
            "FR",
            "FS",
            "FTK",
            "FTQ",
            "G01",
            "G04",
            "G05",
            "G06",
            "G08",
            "G09",
            "G10",
            "G11",
            "G12",
            "G13",
            "G14",
            "G15",
            "G16",
            "G17",
            "G18",
            "G19",
            "G2",
            "G20",
            "G21",
            "G23",
            "G24",
            "G25",
            "G26",
            "G27",
            "G28",
            "G29",
            "G3",
            "G30",
            "G31",
            "G32",
            "G33",
            "G34",
            "G35",
            "G36",
            "G37",
            "G38",
            "G39",
            "G40",
            "G41",
            "G42",
            "G43",
            "G44",
            "G45",
            "G46",
            "G47",
            "G48",
            "G49",
            "G50",
            "G51",
            "G52",
            "G53",
            "G54",
            "G55",
            "G56",
            "G57",
            "G58",
            "G59",
            "G60",
            "G61",
            "G62",
            "G63",
            "G64",
            "G65",
            "G66",
            "G67",
            "G68",
            "G69",
            "G70",
            "G71",
            "G72",
            "G73",
            "G74",
            "G75",
            "G76",
            "G77",
            "G78",
            "G79",
            "G80",
            "G81",
            "G82",
            "G83",
            "G84",
            "G85",
            "G86",
            "G87",
            "G88",
            "G89",
            "G90",
            "G91",
            "G92",
            "G93",
            "G94",
            "G95",
            "G96",
            "G97",
            "G98",
            "G99",
            "GB",
            "GBQ",
            "GDW",
            "GE",
            "GF",
            "GFI",
            "GGR",
            "GIA",
            "GIC",
            "GII",
            "GIP",
            "GJ",
            "GL",
            "GLD",
            "GLI",
            "GLL",
            "GM",
            "GO",
            "GP",
            "GQ",
            "GRM",
            "GRN",
            "GRO",
            "GV",
            "GWH",
            "H03",
            "H04",
            "H05",
            "H06",
            "H07",
            "H08",
            "H09",
            "H10",
            "H11",
            "H12",
            "H13",
            "H14",
            "H15",
            "H16",
            "H18",
            "H19",
            "H20",
            "H21",
            "H22",
            "H23",
            "H24",
            "H25",
            "H26",
            "H27",
            "H28",
            "H29",
            "H30",
            "H31",
            "H32",
            "H33",
            "H34",
            "H35",
            "H36",
            "H37",
            "H38",
            "H39",
            "H40",
            "H41",
            "H42",
            "H43",
            "H44",
            "H45",
            "H46",
            "H47",
            "H48",
            "H49",
            "H50",
            "H51",
            "H52",
            "H53",
            "H54",
            "H55",
            "H56",
            "H57",
            "H58",
            "H59",
            "H60",
            "H61",
            "H62",
            "H63",
            "H64",
            "H65",
            "H66",
            "H67",
            "H68",
            "H69",
            "H70",
            "H71",
            "H72",
            "H73",
            "H74",
            "H75",
            "H76",
            "H77",
            "H79",
            "H80",
            "H81",
            "H82",
            "H83",
            "H84",
            "H85",
            "H87",
            "H88",
            "H89",
            "H90",
            "H91",
            "H92",
            "H93",
            "H94",
            "H95",
            "H96",
            "H98",
            "H99",
            "HA",
            "HBA",
            "HBX",
            "HC",
            "HDW",
            "HEA",
            "HGM",
            "HH",
            "HIU",
            "HKM",
            "HLT",
            "HM",
            "HMQ",
            "HMT",
            "HPA",
            "HTZ",
            "HUR",
            "IA",
            "IE",
            "INH",
            "INK",
            "INQ",
            "ISD",
            "IU",
            "IV",
            "J10",
            "J12",
            "J13",
            "J14",
            "J15",
            "J16",
            "J17",
            "J18",
            "J19",
            "J2",
            "J20",
            "J21",
            "J22",
            "J23",
            "J24",
            "J25",
            "J26",
            "J27",
            "J28",
            "J29",
            "J30",
            "J31",
            "J32",
            "J33",
            "J34",
            "J35",
            "J36",
            "J38",
            "J39",
            "J40",
            "J41",
            "J42",
            "J43",
            "J44",
            "J45",
            "J46",
            "J47",
            "J48",
            "J49",
            "J50",
            "J51",
            "J52",
            "J53",
            "J54",
            "J55",
            "J56",
            "J57",
            "J58",
            "J59",
            "J60",
            "J61",
            "J62",
            "J63",
            "J64",
            "J65",
            "J66",
            "J67",
            "J68",
            "J69",
            "J70",
            "J71",
            "J72",
            "J73",
            "J74",
            "J75",
            "J76",
            "J78",
            "J79",
            "J81",
            "J82",
            "J83",
            "J84",
            "J85",
            "J87",
            "J90",
            "J91",
            "J92",
            "J93",
            "J95",
            "J96",
            "J97",
            "J98",
            "J99",
            "JE",
            "JK",
            "JM",
            "JNT",
            "JOU",
            "JPS",
            "JWL",
            "K1",
            "K10",
            "K11",
            "K12",
            "K13",
            "K14",
            "K15",
            "K16",
            "K17",
            "K18",
            "K19",
            "K2",
            "K20",
            "K21",
            "K22",
            "K23",
            "K26",
            "K27",
            "K28",
            "K3",
            "K30",
            "K31",
            "K32",
            "K33",
            "K34",
            "K35",
            "K36",
            "K37",
            "K38",
            "K39",
            "K40",
            "K41",
            "K42",
            "K43",
            "K45",
            "K46",
            "K47",
            "K48",
            "K49",
            "K50",
            "K51",
            "K52",
            "K53",
            "K54",
            "K55",
            "K58",
            "K59",
            "K6",
            "K60",
            "K61",
            "K62",
            "K63",
            "K64",
            "K65",
            "K66",
            "K67",
            "K68",
            "K69",
            "K70",
            "K71",
            "K73",
            "K74",
            "K75",
            "K76",
            "K77",
            "K78",
            "K79",
            "K80",
            "K81",
            "K82",
            "K83",
            "K84",
            "K85",
            "K86",
            "K87",
            "K88",
            "K89",
            "K90",
            "K91",
            "K92",
            "K93",
            "K94",
            "K95",
            "K96",
            "K97",
            "K98",
            "K99",
            "KA",
            "KAT",
            "KB",
            "KBA",
            "KCC",
            "KDW",
            "KEL",
            "KGM",
            "KGS",
            "KHY",
            "KHZ",
            "KI",
            "KIC",
            "KIP",
            "KJ",
            "KJO",
            "KL",
            "KLK",
            "KLX",
            "KMA",
            "KMH",
            "KMK",
            "KMQ",
            "KMT",
            "KNI",
            "KNM",
            "KNS",
            "KNT",
            "KO",
            "KPA",
            "KPH",
            "KPO",
            "KPP",
            "KR",
            "KSD",
            "KSH",
            "KT",
            "KTN",
            "KUR",
            "KVA",
            "KVR",
            "KVT",
            "KW",
            "KWH",
            "KWO",
            "KWT",
            "KX",
            "L10",
            "L11",
            "L12",
            "L13",
            "L14",
            "L15",
            "L16",
            "L17",
            "L18",
            "L19",
            "L2",
            "L20",
            "L21",
            "L23",
            "L24",
            "L25",
            "L26",
            "L27",
            "L28",
            "L29",
            "L30",
            "L31",
            "L32",
            "L33",
            "L34",
            "L35",
            "L36",
            "L37",
            "L38",
            "L39",
            "L40",
            "L41",
            "L42",
            "L43",
            "L44",
            "L45",
            "L46",
            "L47",
            "L48",
            "L49",
            "L50",
            "L51",
            "L52",
            "L53",
            "L54",
            "L55",
            "L56",
            "L57",
            "L58",
            "L59",
            "L60",
            "L63",
            "L64",
            "L65",
            "L66",
            "L67",
            "L68",
            "L69",
            "L70",
            "L71",
            "L72",
            "L73",
            "L74",
            "L75",
            "L76",
            "L77",
            "L78",
            "L79",
            "L80",
            "L81",
            "L82",
            "L83",
            "L84",
            "L85",
            "L86",
            "L87",
            "L88",
            "L89",
            "L90",
            "L91",
            "L92",
            "L93",
            "L94",
            "L95",
            "L96",
            "L98",
            "L99",
            "LA",
            "LAC",
            "LBR",
            "LBT",
            "LD",
            "LEF",
            "LF",
            "LH",
            "LK",
            "LM",
            "LN",
            "LO",
            "LP",
            "LPA",
            "LR",
            "LS",
            "LTN",
            "LTR",
            "LUB",
            "LUM",
            "LUX",
            "LY",
            "M1",
            "M10",
            "M11",
            "M12",
            "M13",
            "M14",
            "M15",
            "M16",
            "M17",
            "M18",
            "M19",
            "M20",
            "M21",
            "M22",
            "M23",
            "M24",
            "M25",
            "M26",
            "M27",
            "M29",
            "M30",
            "M31",
            "M32",
            "M33",
            "M34",
            "M35",
            "M36",
            "M37",
            "M38",
            "M39",
            "M4",
            "M40",
            "M41",
            "M42",
            "M43",
            "M44",
            "M45",
            "M46",
            "M47",
            "M48",
            "M49",
            "M5",
            "M50",
            "M51",
            "M52",
            "M53",
            "M55",
            "M56",
            "M57",
            "M58",
            "M59",
            "M60",
            "M61",
            "M62",
            "M63",
            "M64",
            "M65",
            "M66",
            "M67",
            "M68",
            "M69",
            "M7",
            "M70",
            "M71",
            "M72",
            "M73",
            "M74",
            "M75",
            "M76",
            "M77",
            "M78",
            "M79",
            "M80",
            "M81",
            "M82",
            "M83",
            "M84",
            "M85",
            "M86",
            "M87",
            "M88",
            "M89",
            "M9",
            "M90",
            "M91",
            "M92",
            "M93",
            "M94",
            "M95",
            "M96",
            "M97",
            "M98",
            "M99",
            "MAH",
            "MAL",
            "MAM",
            "MAR",
            "MAW",
            "MBE",
            "MBF",
            "MBR",
            "MC",
            "MCU",
            "MD",
            "MGM",
            "MHZ",
            "MIK",
            "MIL",
            "MIN",
            "MIO",
            "MIU",
            "MLD",
            "MLT",
            "MMK",
            "MMQ",
            "MMT",
            "MND",
            "MON",
            "MPA",
            "MQH",
            "MQS",
            "MSK",
            "MTK",
            "MTQ",
            "MTR",
            "MTS",
            "MVA",
            "MWH",
            "N1",
            "N10",
            "N11",
            "N12",
            "N13",
            "N14",
            "N15",
            "N16",
            "N17",
            "N18",
            "N19",
            "N20",
            "N21",
            "N22",
            "N23",
            "N24",
            "N25",
            "N26",
            "N27",
            "N28",
            "N29",
            "N3",
            "N30",
            "N31",
            "N32",
            "N33",
            "N34",
            "N35",
            "N36",
            "N37",
            "N38",
            "N39",
            "N40",
            "N41",
            "N42",
            "N43",
            "N44",
            "N45",
            "N46",
            "N47",
            "N48",
            "N49",
            "N50",
            "N51",
            "N52",
            "N53",
            "N54",
            "N55",
            "N56",
            "N57",
            "N58",
            "N59",
            "N60",
            "N61",
            "N62",
            "N63",
            "N64",
            "N65",
            "N66",
            "N67",
            "N68",
            "N69",
            "N70",
            "N71",
            "N72",
            "N73",
            "N74",
            "N75",
            "N76",
            "N77",
            "N78",
            "N79",
            "N80",
            "N81",
            "N82",
            "N83",
            "N84",
            "N85",
            "N86",
            "N87",
            "N88",
            "N89",
            "N90",
            "N91",
            "N92",
            "N93",
            "N94",
            "N95",
            "N96",
            "N97",
            "N98",
            "N99",
            "NA",
            "NAR",
            "NCL",
            "NEW",
            "NF",
            "NIL",
            "NIU",
            "NL",
            "NM3",
            "NMI",
            "NMP",
            "NPT",
            "NT",
            "NU",
            "NX",
            "OA",
            "ODE",
            "OHM",
            "ON",
            "ONZ",
            "OPM",
            "OT",
            "OZA",
            "OZI",
            "P1",
            "P10",
            "P11",
            "P12",
            "P13",
            "P14",
            "P15",
            "P16",
            "P17",
            "P18",
            "P19",
            "P2",
            "P20",
            "P21",
            "P22",
            "P23",
            "P24",
            "P25",
            "P26",
            "P27",
            "P28",
            "P29",
            "P30",
            "P31",
            "P32",
            "P33",
            "P34",
            "P35",
            "P36",
            "P37",
            "P38",
            "P39",
            "P40",
            "P41",
            "P42",
            "P43",
            "P44",
            "P45",
            "P46",
            "P47",
            "P48",
            "P49",
            "P5",
            "P50",
            "P51",
            "P52",
            "P53",
            "P54",
            "P55",
            "P56",
            "P57",
            "P58",
            "P59",
            "P60",
            "P61",
            "P62",
            "P63",
            "P64",
            "P65",
            "P66",
            "P67",
            "P68",
            "P69",
            "P70",
            "P71",
            "P72",
            "P73",
            "P74",
            "P75",
            "P76",
            "P77",
            "P78",
            "P79",
            "P80",
            "P81",
            "P82",
            "P83",
            "P84",
            "P85",
            "P86",
            "P87",
            "P88",
            "P89",
            "P90",
            "P91",
            "P92",
            "P93",
            "P94",
            "P95",
            "P96",
            "P97",
            "P98",
            "P99",
            "PAL",
            "PD",
            "PFL",
            "PGL",
            "PI",
            "PLA",
            "PO",
            "PQ",
            "PR",
            "PS",
            "PTD",
            "PTI",
            "PTL",
            "PTN",
            "Q10",
            "Q11",
            "Q12",
            "Q13",
            "Q14",
            "Q15",
            "Q16",
            "Q17",
            "Q18",
            "Q19",
            "Q20",
            "Q21",
            "Q22",
            "Q23",
            "Q24",
            "Q25",
            "Q26",
            "Q27",
            "Q28",
            "Q29",
            "Q30",
            "Q31",
            "Q32",
            "Q33",
            "Q34",
            "Q35",
            "Q36",
            "Q37",
            "Q38",
            "Q39",
            "Q40",
            "Q3",
            "QA",
            "QAN",
            "QB",
            "QR",
            "QTD",
            "QTI",
            "QTL",
            "QTR",
            "R1",
            "R9",
            "RH",
            "RM",
            "ROM",
            "RP",
            "RPM",
            "RPS",
            "RT",
            "S3",
            "S4",
            "SAN",
            "SCO",
            "SCR",
            "SEC",
            "SET",
            "SG",
            "SIE",
            "SM3",
            "SMI",
            "SQ",
            "SQR",
            "SR",
            "STC",
            "STI",
            "STK",
            "STL",
            "STN",
            "STW",
            "SW",
            "SX",
            "SYR",
            "T0",
            "T3",
            "TAH",
            "TAN",
            "TI",
            "TIC",
            "TIP",
            "TKM",
            "TMS",
            "TNE",
            "TP",
            "TPI",
            "TPR",
            "TQD",
            "TRL",
            "TST",
            "TTS",
            "U1",
            "U2",
            "UB",
            "UC",
            "VA",
            "VLT",
            "VP",
            "W2",
            "WA",
            "WB",
            "WCD",
            "WE",
            "WEB",
            "WEE",
            "WG",
            "WHR",
            "WM",
            "WSD",
            "WTT",
            "X1",
            "YDK",
            "YDQ",
            "YRD",
            "Z11",
            "ZP",
            "ZZ",
            "X1A",
            "X1B",
            "X1D",
            "X1F",
            "X1G",
            "X1W",
            "X2C",
            "X3A",
            "X3H",
            "X43",
            "X44",
            "X4A",
            "X4B",
            "X4C",
            "X4D",
            "X4F",
            "X4G",
            "X4H",
            "X5H",
            "X5L",
            "X5M",
            "X6H",
            "X6P",
            "X7A",
            "X7B",
            "X8A",
            "X8B",
            "X8C",
            "XAA",
            "XAB",
            "XAC",
            "XAD",
            "XAE",
            "XAF",
            "XAG",
            "XAH",
            "XAI",
            "XAJ",
            "XAL",
            "XAM",
            "XAP",
            "XAT",
            "XAV",
            "XB4",
            "XBA",
            "XBB",
            "XBC",
            "XBD",
            "XBE",
            "XBF",
            "XBG",
            "XBH",
            "XBI",
            "XBJ",
            "XBK",
            "XBL",
            "XBM",
            "XBN",
            "XBO",
            "XBP",
            "XBQ",
            "XBR",
            "XBS",
            "XBT",
            "XBU",
            "XBV",
            "XBW",
            "XBX",
            "XBY",
            "XBZ",
            "XCA",
            "XCB",
            "XCC",
            "XCD",
            "XCE",
            "XCF",
            "XCG",
            "XCH",
            "XCI",
            "XCJ",
            "XCK",
            "XCL",
            "XCM",
            "XCN",
            "XCO",
            "XCP",
            "XCQ",
            "XCR",
            "XCS",
            "XCT",
            "XCU",
            "XCV",
            "XCW",
            "XCX",
            "XCY",
            "XCZ",
            "XDA",
            "XDB",
            "XDC",
            "XDG",
            "XDH",
            "XDI",
            "XDJ",
            "XDK",
            "XDL",
            "XDM",
            "XDN",
            "XDP",
            "XDR",
            "XDS",
            "XDT",
            "XDU",
            "XDV",
            "XDW",
            "XDX",
            "XDY",
            "XEC",
            "XED",
            "XEE",
            "XEF",
            "XEG",
            "XEH",
            "XEI",
            "XEN",
            "XFB",
            "XFC",
            "XFD",
            "XFE",
            "XFI",
            "XFL",
            "XFO",
            "XFP",
            "XFR",
            "XFT",
            "XFW",
            "XFX",
            "XGB",
            "XGI",
            "XGL",
            "XGR",
            "XGU",
            "XGY",
            "XGZ",
            "XHA",
            "XHB",
            "XHC",
            "XHG",
            "XHN",
            "XHR",
            "XIA",
            "XIB",
            "XIC",
            "XID",
            "XIE",
            "XIF",
            "XIG",
            "XIH",
            "XIK",
            "XIL",
            "XIN",
            "XIZ",
            "XJB",
            "XJC",
            "XJG",
            "XJR",
            "XJT",
            "XJY",
            "XKG",
            "XKI",
            "XLE",
            "XLG",
            "XLT",
            "XLU",
            "XLV",
            "XLZ",
            "XMA",
            "XMB",
            "XMC",
            "XME",
            "XMR",
            "XMS",
            "XMT",
            "XMW",
            "XMX",
            "XNA",
            "XNE",
            "XNF",
            "XNG",
            "XNS",
            "XNT",
            "XNU",
            "XNV",
            "XOA",
            "XOB",
            "XOC",
            "XOD",
            "XOE",
            "XOF",
            "XOK",
            "XOT",
            "XOU",
            "XP2",
            "XPA",
            "XPB",
            "XPC",
            "XPD",
            "XPE",
            "XPF",
            "XPG",
            "XPH",
            "XPI",
            "XPJ",
            "XPK",
            "XPL",
            "XPN",
            "XPO",
            "XPP",
            "XPR",
            "XPT",
            "XPU",
            "XPV",
            "XPX",
            "XPY",
            "XPZ",
            "XQA",
            "XQB",
            "XQC",
            "XQD",
            "XQF",
            "XQG",
            "XQH",
            "XQJ",
            "XQK",
            "XQL",
            "XQM",
            "XQN",
            "XQP",
            "XQQ",
            "XQR",
            "XQS",
            "XRD",
            "XRG",
            "XRJ",
            "XRK",
            "XRL",
            "XRO",
            "XRT",
            "XRZ",
            "XSA",
            "XSB",
            "XSC",
            "XSD",
            "XSE",
            "XSH",
            "XSI",
            "XSK",
            "XSL",
            "XSM",
            "XSO",
            "XSP",
            "XSS",
            "XST",
            "XSU",
            "XSV",
            "XSW",
            "XSY",
            "XSZ",
            "XT1",
            "XTB",
            "XTC",
            "XTD",
            "XTE",
            "XTG",
            "XTI",
            "XTK",
            "XTL",
            "XTN",
            "XTO",
            "XTR",
            "XTS",
            "XTT",
            "XTU",
            "XTV",
            "XTW",
            "XTY",
            "XTZ",
            "XUC",
            "XUN",
            "XVA",
            "XVG",
            "XVI",
            "XVK",
            "XVL",
            "XVO",
            "XVP",
            "XVQ",
            "XVN",
            "XVR",
            "XVS",
            "XVY",
            "XWA",
            "XWB",
            "XWC",
            "XWD",
            "XWF",
            "XWG",
            "XWH",
            "XWJ",
            "XWK",
            "XWL",
            "XWM",
            "XWN",
            "XWP",
            "XWQ",
            "XWR",
            "XWS",
            "XWT",
            "XWU",
            "XWV",
            "XWW",
            "XWX",
            "XWY",
            "XWZ",
            "XXA",
            "XXB",
            "XXC",
            "XXD",
            "XXF",
            "XXG",
            "XXH",
            "XXJ",
            "XXK",
            "XYA",
            "XYB",
            "XYC",
            "XYD",
            "XYF",
            "XYG",
            "XYH",
            "XYJ",
            "XYK",
            "XYL",
            "XYM",
            "XYN",
            "XYP",
            "XYQ",
            "XYR",
            "XYS",
            "XYT",
            "XYV",
            "XYW",
            "XYX",
            "XYY",
            "XYZ",
            "XZA",
            "XZB",
            "XZC",
            "XZD",
            "XZF",
            "XZG",
            "XZH",
            "XZJ",
            "XZK",
            "XZL",
            "XZM",
            "XZN",
            "XZP",
            "XZQ",
            "XZR",
            "XZS",
            "XZT",
            "XZU",
            "XZV",
            "XZW",
            "XZX",
            "XZY",
            "XZZ",
            "04",
            "05",
            "08",
            "16",
            "17",
            "18",
            "19",
            "26",
            "29",
            "30",
            "31",
            "32",
            "36",
            "43",
            "44",
            "45",
            "46",
            "47",
            "48",
            "53",
            "54",
            "62",
            "63",
            "64",
            "66",
            "69",
            "71",
            "72",
            "73",
            "76",
            "78",
            "84",
            "90",
            "92",
            "93",
            "94",
            "95",
            "96",
            "97",
            "98",
            "1A",
            "1B",
            "1C",
            "1D",
            "1E",
            "1F",
            "1G",
            "1H",
            "1J",
            "1K",
            "1L",
            "1M",
            "1X",
            "2V",
            "2W",
            "3E",
            "3G",
            "3H",
            "3I",
            "4A",
            "4B",
            "4E",
            "5C",
            "5F",
            "5G",
            "5H",
            "5I",
            "5K",
            "5P",
            "5Q",
            "A1",
            "A25",
            "A50",
            "A51",
            "A52",
            "A57",
            "A58",
            "A60",
            "A61",
            "A62",
            "A63",
            "A64",
            "A65",
            "A66",
            "A67",
            "A77",
            "A78",
            "A79",
            "A80",
            "A81",
            "A82",
            "A83",
            "AJ",
            "AM",
            "AP",
            "AR",
            "ARE",
            "ATT",
            "AV",
            "AW",
            "B0",
            "B2",
            "B36",
            "B37",
            "B38",
            "B39",
            "B40",
            "B5",
            "B51",
            "B6",
            "B65",
            "B9",
            "BD",
            "BE",
            "BG",
            "BH",
            "BJ",
            "BK",
            "BL",
            "BO",
            "BR",
            "BT",
            "BW",
            "BX",
            "BZ",
            "C1",
            "C2",
            "C4",
            "C5",
            "C6",
            "C77",
            "C98",
            "CA",
            "CH",
            "CJ",
            "CK",
            "CL",
            "CO",
            "CQ",
            "CR",
            "CS",
            "CT",
            "CU",
            "CV",
            "CY",
            "CZ",
            "D14",
            "D28",
            "D35",
            "D37",
            "D38",
            "D39",
            "D40",
            "D64",
            "D66",
            "D67",
            "D7",
            "D70",
            "D71",
            "D72",
            "D75",
            "D76",
            "D79",
            "D8",
            "D9",
            "D90",
            "D92",
            "D96",
            "D97",
            "D98",
            "D99",
            "DC",
            "DE",
            "DI",
            "DQ",
            "DR",
            "DRM",
            "DS",
            "DU",
            "DX",
            "DY",
            "E2",
            "E3",
            "E5",
            "EC",
            "EP",
            "EV",
            "F1",
            "F9",
            "FB",
            "FD",
            "FE",
            "FG",
            "FM",
            "G7",
            "GC",
            "GD",
            "GH",
            "GK",
            "GN",
            "GRT",
            "GT",
            "GW",
            "GY",
            "GZ",
            "H1",
            "H2",
            "HAR",
            "HD",
            "HE",
            "HF",
            "HI",
            "HJ",
            "HK",
            "HL",
            "HN",
            "HO",
            "HP",
            "HS",
            "HT",
            "HY",
            "IC",
            "IF",
            "II",
            "IL",
            "IM",
            "IP",
            "IT",
            "JB",
            "JG",
            "JO",
            "JR",
            "K5",
            "KD",
            "KF",
            "KG",
            "KS",
            "KTM",
            "LC",
            "LE",
            "LI",
            "LJ",
            "LX",
            "M0",
            "MA",
            "MF",
            "MK",
            "MQ",
            "MT",
            "MV",
            "N2",
            "NB",
            "NBB",
            "NC",
            "ND",
            "NE",
            "NG",
            "NH",
            "NI",
            "NJ",
            "NN",
            "NPL",
            "NPR",
            "NQ",
            "NR",
            "NRL",
            "NTT",
            "NV",
            "NY",
            "OP",
            "OZ",
            "P0",
            "P3",
            "P4",
            "P6",
            "P7",
            "P8",
            "P9",
            "PA",
            "PB",
            "PE",
            "PF",
            "PG",
            "PK",
            "PL",
            "PM",
            "PN",
            "PT",
            "PU",
            "PV",
            "PW",
            "PY",
            "PZ",
            "QD",
            "QH",
            "QK",
            "QT",
            "R4",
            "RA",
            "RD",
            "RG",
            "RK",
            "RL",
            "RN",
            "RO",
            "RS",
            "RU",
            "S5",
            "S6",
            "S7",
            "S8",
            "SA",
            "SD",
            "SE",
            "SHT",
            "SK",
            "SL",
            "SN",
            "SO",
            "SP",
            "SS",
            "SST",
            "ST",
            "SV",
            "T1",
            "T4",
            "T5",
            "T6",
            "T7",
            "T8",
            "TA",
            "TC",
            "TD",
            "TE",
            "TF",
            "TJ",
            "TK",
            "TL",
            "TN",
            "TQ",
            "TR",
            "TS",
            "TSD",
            "TSH",
            "TT",
            "TU",
            "TV",
            "TW",
            "TY",
            "UA",
            "UD",
            "UE",
            "UF",
            "UH",
            "UM",
            "VI",
            "VQ",
            "VS",
            "W4",
            "WH",
            "WI",
            "WR",
            "WW",
            "YL",
            "YT",
            "Z1",
            "Z2",
            "Z3",
            "Z4",
            "Z5",
            "Z6",
            "Z8"
          ],
          "default": "C62"
        },
        "itemPrice": {
          "title": "Item price",
          "description": "The price per item (may be fractional)",
          "type": "number",
          "default": 1.0
        },
        "baseQuantity": {
          "title": "Base Quantity",
          "description": "The number of items the price is for.",
          "type": "number",
          "default": 1.0
        },
        "amountExcludingTax": {
          "title": "amountExcludingTax",
          "description": "The amount excluding tax. Should equal quantity x itemPrice + allowanceCharge.",
          "type": "number"
        },
        "allowanceCharges": {
          "title": "Allowance Charges",
          "description": "An array of allowance charges.",
          "type": "array",
          "items": {
            "$ref": "#/$defs/LineAllowanceCharge"
          },
          "minItems": 0
        },
        "allowPartialDelivery": {
          "title": "Allow Partial Delivery",
          "description": "Whether or not the line items must be delivered in a single shipment.",
          "type": "boolean",
          "default": false
        },
        "accountingCost": {
          "title": "Accounting Cost",
          "description": "The buyer's accounting cost centre for this line.",
          "type": "string",
          "minLength": 1
        },
        "delivery": {
          "allOf": [
            {
              "$ref": "#/$defs/LineDelivery"
            },
            {
              "title": "Delivery",
              "description": "The delivery information for the line."
            }
          ]
        },
        "description": {
          "title": "Description",
          "description": "The description for this line.",
          "type": "string",
          "minLength": 1,
          "maxLength": 255
        },
        "name": {
          "title": "Name",
          "description": "A short name for this line.",
          "type": "string",
          "minLength": 1,
          "maxLength": 255
        },
        "references": {
          "title": "References",
          "description": "An array of references to other documents or codes. Note that many syntaxes do not support multiple references of the same type in which case they will be concatenated with ','. Also, not all syntaxes support all documentTypes.",
          "type": "array",
          "items": {
            "$ref": "#/$defs/Reference"
          },
          "minItems": 0
        },
        "taxesDutiesFees": {
          "title": "Taxes, Duties and Fees",
          "description": "An array of taxes, duties and fees for this invoice line. Multiple taxesDutiesFees items is allowed only for IN (India) and US (USA) taxes. All other countries can only have a single Tax item in this array.",
          "type": "array",
          "items": {
            "$ref": "#/$defs/Tax"
          },
          "minItems": 0
        },
        "additionalItemProperties": {
          "title": "Additional Item Properties",
          "description": "An array of additional item properties.",
          "type": "array",
          "items": {
            "$ref": "#/$defs/AdditionalItemProperty"
          },
          "minItems": 0
        },
        "lotNumberIds": {
          "title": "Lot Number Ids",
          "description": "An identifier for the production lot which the line items come from.",
          "type": "array",
          "items": {
            "type": "string",
            "maxLength": 128
          },
          "minItems": 0
        },
        "note": {
          "title": "Note",
          "description": "A note to add to the line",
          "type": "string",
          "maxLength": 255
        }
      },
      "required": [
        "lineId",
        "quantity",
        "quantityUnitCode",
        "amountExcludingTax"
      ]
    },
    "Party": {
      "title": "Party",
      "description": "A party that can receive or send invoices",
      "type": "object",
      "properties": {
        "companyName": {
          "title": "Company name",
          "description": "The name of the company transporting the invoice",
          "type": "string",
          "minLength": 2
        },
        "registrationName": {
          "title": "Registration name",
          "description": "The registration name of the company transporting the invoice",
          "type": "string"
        },
        "additionalLegalInformation": {
          "title": "Additional Legal Information",
          "description": "Additional legal information relevant for the Seller.",
          "type": "string",
          "maxLength": 512
        },
        "classificationCode": {
          "title": "Classification Code",
          "description": "The classification code of the company transporting the invoice. This currently is used only for the Malaysia LHDNM application in selfBillingMode. In that case, it becomes the MSIC of the sender of the purchase invoice.",
          "type": "string",
          "pattern": "^[0-9]{5}$"
        },
        "registrationAuthorityName": {
          "title": "Registration Authority Name",
          "description": "The name of the authority that issued the legal registration identifier (BTAE-11). Only used when the sender country is AE (PINT-AE), where it is mandatory when the party's legal registration identifier is a commercial/trade license (publicIdentifier scheme AE:TL). Maps to the schemeAgencyName attribute of UBL PartyLegalEntity/CompanyID. See <<country_ae>>.",
          "type": "string",
          "minLength": 1,
          "maxLength": 255
        },
        "passportIssuingCountry": {
          "title": "Passport Issuing Country",
          "description": "The country that issued the passport used as the party's legal registration identifier (BTAE-19). Only used when the sender country is AE (PINT-AE), where it is mandatory when the party's legal registration identifier is a passport (publicIdentifier scheme AE:PAS). Format: ISO 3166-1 alpha-2 country code or the Peppol extension 1A; membership is enforced in Rails validation via CodeLists::Iso3166Alpha2. Maps to the schemeAgencyName attribute of UBL PartyLegalEntity/CompanyID. See <<country_ae>>.",
          "type": "string",
          "pattern": "^(?:[A-Z]{2}|1A)$"
        },
        "address": {
          "$ref": "#/$defs/Address"
        },
        "contact": {
          "$ref": "#/$defs/Contact"
        }
      }
    },
    "PayeeParty": {
      "title": "Payee Party",
      "description": "The party to whom the invoice will be paid. Use this only if necessary, for instance in case of factoring (payment is to the factoring company), bankruptcy (payment is to the bankruptcy estate) or in other special cases.",
      "type": "object",
      "properties": {
        "party": {
          "$ref": "#/$defs/Party"
        },
        "publicIdentifiers": {
          "title": "Public identifiers",
          "description": "A list of legal and tax identifiers for this party.",
          "type": "array",
          "items": {
            "$ref": "#/$defs/PublicIdentifier"
          }
        }
      },
      "required": [
        "party"
      ]
    },
    "PayerParty": {
      "title": "Payer Party",
      "description": "The party that pays the invoice when different from the buyer. Used in the French e-invoicing reform (FR-FE EXT-FR-FE-BG-02). Maps to UBL PaymentMeans/PaymentMandate/PayerParty and CII PayerTradeParty.",
      "type": "object",
      "properties": {
        "party": {
          "$ref": "#/$defs/Party"
        },
        "publicIdentifiers": {
          "title": "Public identifiers",
          "description": "A list of legal and tax identifiers for this party.",
          "type": "array",
          "items": {
            "$ref": "#/$defs/PublicIdentifier"
          }
        }
      },
      "required": [
        "party"
      ]
    },
    "PaymentMeans": {
      "title": "PaymentMeans",
      "description": "A PaymentMeans is a way to pay the invoice.",
      "type": "object",
      "properties": {
        "code": {
          "title": "Code",
          "description": "How the invoice has been / will be paid. The code determines which type of PaymentMeans is used and which fields are mandatory.\n++++\n<ul>    <li>        <strong>cash</strong><br/>        The invoice was/is paid in cash.<br/>    </li>    <li>        <strong>bank_cheque</strong><br/>        The invoice was/is paid via a bank cheque.<br/>    </li>    <li>        <strong>cashiers_cheque</strong><br/>        The invoice was/is paid via a cashiers cheque.<br/>    </li>    <li>        <strong>credit_transfer, sepa_credit_transfer</strong><br/>        The amount is to be transfered into a bank account. Relevant additional fields:<br/>        <ul>            <li>                <strong>account</strong><br/>                The account number. For New Zealand, this should hold the full 16 digit bank account number. <strong>Mandatory</strong>.            </li>            <li>                <strong>branche_code</strong><br/>                In case of an IBAN, the account alone number is sufficient. In other cases, like a BBAN, a BIC code or other additional identifier is required. For Australia, the BSB goes here. Optional.            </li>            <li>                <strong>holder</strong><br/>                The account holder name. Optional.            </li>        </ul>        Note that using 'sepa_credit_transfer' will result in the PaymentMeansCode of '58' being used in UBL documents. Otherwise, the more generic '30' will be used.    </li>    <li>        <strong>debit_transfer</strong><br/>        Used for CreditNotes. The amount is to be transfered by the sender of the document into the bank account of the receiver of the document. Relevant additional fields:<br/>        <ul>            <li>                <strong>account</strong><br/>                The account number. For New Zealand, this should hold the full 16 digit bank account number. <strong>Mandatory</strong>.            </li>            <li>                <strong>branche_code</strong><br/>                In case of an IBAN, the account alone number is sufficient. In other cases, like a BBAN, a BIC code or other additional identifier is required. For Australia, the BSB goes here. Optional.            </li>        </ul>    </li>    <li>        <strong>direct_debit, sepa_direct_debit</strong><br/>        Direct debit. Relevant additional fields:<br/>        <ul>            <li>                <strong>account</strong><br/>                Deprecated. Legacy account number. Still accepted. When payer_account and payee_account are both absent, this keeps the previous direct debit behavior.            </li>            <li>                <strong>payer_account</strong><br/>                The account number from which the funds will be debited. Optional.            </li>            <li>                <strong>payee_account</strong><br/>                The supplier account number to which the funds will be credited. Optional.            </li>            <li>                At least one of account, payer_account, or payee_account is required.            </li>            <li>                <strong>mandate</strong><br/>                The direct debit mandate id. Mandatory.            </li>            <li>                <strong>holder</strong><br/>                The account holder name. Optional.            </li>        </ul>        Note that using 'sepa_direct_debit' will result in the PaymentMeansCode of '59' being used in UBL documents. Otherwise, the more generic '49' will be used.    </li>    <li>        <strong>card, credit_card, bank_card (credit_card, bank_card are deprecated)</strong><br/>        E.g. credit or debit card. Relevant additional fields:<br/>        <ul>            <li>                <strong>account</strong><br/>                The card number, but never more than the last four digits. <strong>Mandatory</strong>.            </li>            <li>                <strong>holder</strong><br/>                The account holder name. Optional.            </li>            <li>                <strong>network</strong><br/>                The payment network, e.g. VISA, SEPA. Optional, but recommended since a default of \"N/A\" may be used if not provided.            </li>        </ul>    </li>    <li>        <strong>online_payment_service</strong><br/>        An online payment service has been or will be used. Relevant additional fields:<br/>        <ul>            <li>                <strong>network</strong><br/>                The payment network, e.g. PayPal. <strong>Mandatory unless url is provided</strong>.            </li>            <li>                <strong>url</strong><br/>                The URL to execute the payment. <strong>Mandatory unless network is provided</strong>.            </li>        </ul>        It is possible to provide both url and network. Note that for UBL, in countries where this payment means is not allowed, this will translate into an AdditionalDocumentReference.Attachment.ExternalReference element.    </li>    <li>        <strong>standing_agreement</strong><br/>        The payment means has been agreed out of band. Relevant additional fields: none.    </li>    <li>        <strong>aunz_npp_payid, aunz_npp (aunz_npp is deprecated)</strong><br/>        Australia/New Zealand New Payments Platform. Relevant additional fields:<br/>        <ul>            <li>                <strong>account</strong><br/>                PayID. May be an email address, ABN, mobile phone number etc. <strong>Mandatory</strong>.            </li>        </ul>    </li>    <li>        <strong>aunz_npp_payto</strong><br/>        Australia/New Zealand New Payments Platform. Relevant additional fields:<br/>        <ul>            <li>                <strong>account</strong><br/>                Account number. <strong>Mandatory</strong>.            </li>            <li>                <strong>mandate</strong><br/>                Mandate/direct debit authority reference/PayTo Agreement. <strong>Mandatory</strong>.            </li>        </ul>    </li>    <li>        <strong>aunz_bpay</strong><br/>        Australia/New Zealand New Payments Platform. Relevant additional fields:<br/>        <ul>            <li>                <strong>account</strong><br/>                Biller code. <strong>Mandatory</strong>.            </li>            <li>                <strong>holder</strong><br/>                The account holder name. Optional.            </li>        </ul>    </li>    <li>        <strong>aunz_postbillpay</strong><br/>        Australia/New Zealand New Payments Platform. Relevant additional fields:<br/>        <ul>            <li>                <strong>account</strong><br/>                Biller code. <strong>Mandatory.</strong>.            </li>            <li>                <strong>holder</strong><br/>                The account holder name. Optional.            </li>        </ul>    </li>    <li>        <strong>aunz_uri</strong><br/>        Australia/New Zealand URI. Relevant additional fields:<br/>        <ul>            <li>                <strong>account</strong><br/>                Payment URI. <strong>Mandatory.</strong>.            </li>            <li>                <strong>holder</strong><br/>                The account holder name. Optional.            </li>        </ul>    </li>    <li>        <strong>se_bankgiro</strong><br/>        Swedish Bankgiro. Relevant additional fields:<br/>        <ul>            <li>                <strong>account</strong><br/>                The account number from which the funds will be debited, 7 or 8 digits. <strong>Mandatory</strong>.            </li>            <li>                <strong>holder</strong><br/>                The account holder name. Optional.            </li>        </ul>        <br/>    </li>    <li>        <strong>se_plusgiro</strong><br/>        Swedish Plusgiro. Relevant additional fields:<br/>        <ul>            <li>                <strong>account</strong><br/>                The account number from which the funds will be debited, 2 - 8 digits. <strong>Mandatory</strong>.            </li>            <li>                <strong>holder</strong><br/>                The account holder name. Optional.            </li>        </ul>        <br/>    </li>    <li>        <strong>sg_giro</strong><br/>        Singapore GIRO-system (direct debit). Relevant additional fields: none.    </li>    <li>        <strong>sg_card</strong><br/>        Singapore CreditCard payment. Relevant additional fields: none.    </li>    <li>        <strong>sg_paynow</strong><br/>        Singapore PayNow Corporate.  Relevant additional fields:<br/>        <ul>            <li>                <strong>account</strong><br/>                The UEN, format: UENxxxxxxxxxx. <strong>Mandatory</strong>.            </li>        </ul>    </li>    <li>        <strong>it_mav</strong><br/>        Italy MAV payment.    </li>    <li>        <strong>it_pagopa</strong><br/>        Italy PagoPA payment.    </li></ul>\n++++\n",
          "type": "string",
          "enum": [
            "credit_transfer",
            "sepa_credit_transfer",
            "debit_transfer",
            "direct_debit",
            "sepa_direct_debit",
            "card",
            "bank_card",
            "credit_card",
            "online_payment_service",
            "cash",
            "bank_cheque",
            "cashiers_cheque",
            "standing_agreement",
            "aunz_npp",
            "aunz_npp_payid",
            "aunz_npp_payto",
            "aunz_bpay",
            "aunz_postbillpay",
            "aunz_uri",
            "se_bankgiro",
            "se_plusgiro",
            "sg_giro",
            "sg_card",
            "sg_paynow",
            "it_mav",
            "it_pagopa",
            "nl_ga_beneficiary",
            "nl_ga_gaccount",
            "undefined"
          ]
        },
        "account": {
          "title": "Account number",
          "description": "The account number. Deprecated for direct_debit and sepa_direct_debit. Use payer_account and payee_account. When those are absent, account keeps the legacy direct debit behavior.",
          "type": "string"
        },
        "payer_account": {
          "title": "Payer account",
          "description": "The debtor account number. Used only for direct_debit and sepa_direct_debit. Optional on its own. At least one of account, payer_account, or payee_account is required.",
          "type": "string"
        },
        "payee_account": {
          "title": "Payee account",
          "description": "The supplier account number. Used only for direct_debit and sepa_direct_debit. Optional on its own. At least one of account, payer_account, or payee_account is required.",
          "type": "string"
        },
        "branche_code": {
          "title": "Branch code",
          "description": "The bank branch code. Not required for IBAN numbers. Often referred to as Swift or Bic code.",
          "type": "string"
        },
        "holder": {
          "title": "Account holder",
          "description": "The name of the account holder.",
          "type": "string"
        },
        "network": {
          "title": "Network",
          "description": "The name of the card network, e.g. VISA.",
          "type": "string"
        },
        "mandate": {
          "title": "Mandate",
          "description": "The direct debit mandate code.",
          "type": "string"
        },
        "sepa_creditor_reference": {
          "title": "SEPA Creditor Reference",
          "description": "The SEPA creditor reference.",
          "type": "string"
        },
        "paymentId": {
          "title": "Payment Id",
          "description": "The payment id that you will use to match the payment against the invoice.",
          "type": "string"
        },
        "amount": {
          "title": "Amount",
          "description": "The amount to be paid for this category. Only used for Dutch G-Account invoices. The amount nl_ga_beneficiary + amount nl_ga_gaccount must add up to the amountExcludingVat",
          "type": "number"
        }
      },
      "required": [
        "code"
      ]
    },
    "PaymentTerm": {
      "title": "PaymentTerm",
      "description": "A PaymentTerm is a single term for the payment terms. Each term consists of the number of days within which the invoice must be settled and a discount percentage that applies if the invoice is settled within those days. If the amount to be calculated is based only on part of the amount due, the base amount for calculating the cash discount or late-payment interest must be specified as the baseAmount.",
      "type": "object",
      "properties": {
        "settlementDays": {
          "title": "Days",
          "description": "The number of days within which the invoice must be settled for the term to apply.",
          "type": "integer"
        },
        "discountPercentage": {
          "title": "Percentage",
          "description": "The discount percentage that applies if the invoice is settled within the required number of days. Provide only one of discountPercentage or surchargePercentage.",
          "type": "number"
        },
        "surchargePercentage": {
          "title": "Percentage",
          "description": "The surcharge percentage that applies if the invoice is settled after the required number of days. Provide only one of discountPercentage or surchargePercentage.",
          "type": "number"
        },
        "baseAmount": {
          "title": "Base Amount",
          "description": "The base amount on which the discount percentage is applied.",
          "type": "number"
        },
        "note": {
          "title": "Note",
          "description": "The note for this payment term.",
          "type": "string",
          "maxLength": 1024
        }
      },
      "required": [
        "settlementDays"
      ]
    },
    "PaymentTerms": {
      "title": "Payment Terms",
      "description": "The payment terms of the document. Note that not all syntaxes support payment terms, so in some syntaxes they will converted into a payment terms note and it is even possible that they have to be omitted completely, for instance in many eReporting syntaxes (where they don't play a role anyway).\n++++\n<br/>\n++++\nProvide either the note or the terms, but not both.",
      "type": "object",
      "properties": {
        "note": {
          "title": "Payment Terms Note",
          "description": "The note for the payment terms.",
          "type": "string"
        },
        "terms": {
          "title": "Payment Terms Terms",
          "description": "The terms for the payment terms.",
          "type": "array",
          "items": {
            "$ref": "#/$defs/PaymentTerm"
          }
        }
      }
    },
    "PrepaidPayment": {
      "title": "PrepaidPayment",
      "description": "A PrepaidPayment is a single prepaid payment. Each prepaid payment consists of at least the amount of the payment.",
      "type": "object",
      "properties": {
        "amount": {
          "title": "Amount",
          "description": "The amount of the payment.",
          "type": "number"
        },
        "date": {
          "title": "Date",
          "description": "The date on which the payment was made.",
          "type": "string",
          "format": "date"
        },
        "time": {
          "title": "Time",
          "description": "The time at which the payment was made.",
          "type": "string",
          "pattern": "^[0-9]{2}:[0-9]{2}:[0-9]{2}$"
        },
        "timeZone": {
          "title": "Time Zone",
          "description": "The time zone at which the payment was made. Format: ±zzzz, where ±zzzz is the difference from UTC, e.g. +0100 or -0900 etc. Mandatory if time is provided.",
          "type": "string",
          "pattern": "^[+-]\\d{4}$"
        },
        "reference": {
          "title": "Reference",
          "description": "The reference of the payment.",
          "type": "string",
          "minLength": 1,
          "maxLength": 128
        }
      },
      "required": [
        "amount"
      ]
    },
    "PublicIdentifier": {
      "title": "Public identifier",
      "description": "A public identifier for this customer.",
      "type": "object",
      "properties": {
        "scheme": {
          "title": "Scheme",
          "description": "The scheme of the identifier. See <<_receiver_identifiers_list>> for a list.",
          "type": "string",
          "minLength": 3
        },
        "id": {
          "title": "Identifier",
          "description": "The actual identifier.",
          "type": "string",
          "minLength": 1
        }
      },
      "required": [
        "scheme",
        "id"
      ]
    },
    "RawDocumentData": {
      "title": "Raw Document Data",
      "description": "A document to send, in base64 encoded format.",
      "type": "object",
      "properties": {
        "parse": {
          "title": "Parse",
          "description": "DEPRECATED. Will be ignored.",
          "type": "boolean",
          "default": true,
          "deprecated": true
        },
        "parseStrategy": {
          "title": "Parse Strategy",
          "description": "How to parse the document.",
          "type": "string",
          "enum": [
            "ubl",
            "cii",
            "idoc",
            "setu14"
          ]
        },
        "document": {
          "title": "Document",
          "description": "The base64 encoded version of the document.",
          "type": "string",
          "minLength": 5
        }
      },
      "required": [
        "document"
      ]
    },
    "ReceiverParty": {
      "allOf": [
        {
          "$ref": "#/$defs/Party"
        },
        {
          "title": "Receiver",
          "description": "The receiver of the document."
        }
      ]
    },
    "Reference": {
      "title": "Reference",
      "description": "A reference to a document.",
      "type": "object",
      "properties": {
        "documentType": {
          "title": "Document Type",
          "description": "The type of the referenced document. The following types are supported:\n++++\n<ul>    <li>        <b>purchase_order</b> (document level, Invoice)        <p>A reference to an order for this document, assigned by the buyer. Note that this often is a key field, since many receivers of invoices will use this field to automatically match the invoice to an order they placed. Many receivers refuse invoices that cannot be automatically matched, in particular government agencies. So it is highly recommended to fill this field whenever possible.</p>    </li>    <li>        <b>billing</b> (document level, Invoice)        <p>A reference to a billing document. For instance, credit notes may refer to an invoice they are a credit note for.</p>    </li>    <li>        <b>billing_uuid</b> (document level, Invoice)        <p>DEPRECATED. Use the billingUuid property of the 'billing' reference. A UUID reference to a billing document. For instance, credit notes may refer to an invoice they are a credit note for.</p>    </li>    <li>        <b>advance_invoice</b> (document level, Invoice)        <p>A reference to an advance invoice that a settlement invoice settles. Used for Polish KSeF settlement invoices (faktura rozliczeniowa, ROZ), with one entry per advance invoice (FakturaZaliczkowa). When sending, provide documentId set to the advance invoice's KSeF number when available or otherwise the seller invoice number. When receiving, one entry is emitted per FakturaZaliczkowa, with documentId set to the KSeF number when available (also kept in documentUuid) or otherwise the seller invoice number.</p>    </li>    <li>        <b>sales_order</b> (document level, Invoice + Order)        <p>A reference to an order for this document, assigned by the seller.</p>    </li>    <li>        <b>buyer_reference</b> (document level, Invoice, Order)        <p>The buyer's reference. Used for internal routing by the receiver. For orders, this becomes the customer reference which the receiver of the order should put back in the buyer reference field in the invoice.</p>    </li>    <li>        <b>additional</b> (document level, Invoice, Order)        <p>An additional reference. For UBL, this translates into an AdditionalDocumentReference without a EmbeddedDocumentBinaryObject. For the latter, use the attachments array.</p>    </li>    <li>        <b>contract</b> (document level, Invoice + Order)        <p>A reference to a contract or framework agreement that this document relates to.</p>    </li>    <li>        <b>despatch_advice</b> (document level, Invoice)        <p>A reference to a despatch advice for this document. In the FatturaPA, this is what will become the DDT.</p>    </li>    <li>        <b>originator</b> (document level, Invoice + Order)        <p>A reference to an originator document for this invoice.</p>    </li>    <li>        <b>receipt</b> (document level, Invoice)        <p>A reference to a receipt document for this document.</p>    </li>    <li>        <b>project</b> (document level, Invoice)        <p>A reference to a project document for this document.</p>    </li>    <li>        <b>quotation</b> (document level, Order)        <p>A reference to a quotation document for this document.</p>    </li>    <li>        <b>replaced_order</b> (document level, Order)        <p>A reference to the initial order that was rejected and a new order is issued.        </p>    </li>    <li>        <b>payment_url</b> (document level, Invoice)        <p>A to a payment URL for the invoice.</p>    </li>    <li>        <b>item_classification_code</b> (line level)        <p>A reference to a commodity classification / item classification code for this line. Note that in combination with the documentIdListId these can be used for Malaysia LHDNM to provide the product classification code (documentIdListId=CLASS) and the product tariff code (documentIdListId=PTC)</p>    </li>    <li>        <b>item_commodity_code</b> (line level)        <p>A reference to a commodity classification / commodity code for this line.</p>    </li>    <li>        <b>item_specification</b> (line level)        <p>A referece to an item specification document</p>    </li>    <li>        <b>line_document_reference</b> (line level)        <p>A reference to another document for this line.</p>    </li>    <li>        <b>line_standard_item_identification</b> (line level)        <p>A standard item identification.</p>    </li>    <li>        <b>line_sellers_item_identification</b> (line level)        <p>The seller's item identification.</p>    </li>    <li>        <b>line_buyers_item_identification</b> (line level)        <p>The buyer's item identification.</p>    </li>    <li>        <b>line_purchase_order</b> (line level)        <p>A reference to an order for this line, assigned by the buyer. Note not all outgoing document formats support this, so they may end up concatenated at the invoice level.</p>    </li>    <li>        <b>line_billing</b> (line level)        <p>A reference to a previous invoice that this invoice line corrects (FR-FE EXT-FR-FE-136/137/138/139). Use documentId for the previous invoice number, documentTypeCode for the type code, issueDate for the previous invoice issue date and lineId for the line in the previous invoice.</p>    </li>    <li>        <b>line_despatch_document</b> (line level)        <p>A reference to a despatch document (BL) for this invoice line (FR-FE). Use documentId for the despatch document identifier and lineId for the line in the despatch document. In UBL the documentId is taken from Invoice/InvoiceLine/DespatchLineReference/DocumentReference/ID with Invoice/DespatchDocumentReference/ID as fallback. In CII the documentId is taken from IncludedSupplyChainTradeLineItem/SpecifiedLineTradeDelivery/DespatchAdviceReferencedDocument/IssuerAssignedID with ApplicableHeaderTradeDelivery/DespatchAdviceReferencedDocument/IssuerAssignedID as fallback.</p>    </li>    <li>        <b>line_receipt_document</b> (line level)        <p>A reference to a receipt document (BR) for this invoice line (FR-FE). Use documentId for the receipt document identifier and lineId for the line in the receipt document. In UBL the documentId is taken from Invoice/InvoiceLine/ReceiptLineReference/DocumentReference/ID with Invoice/ReceiptDocumentReference/ID as fallback. In CII the documentId is taken from IncludedSupplyChainTradeLineItem/SpecifiedLineTradeDelivery/ReceivingAdviceReferencedDocument/IssuerAssignedID with ApplicableHeaderTradeDelivery/ReceivingAdviceReferencedDocument/IssuerAssignedID as fallback.</p>    </li></ul>\n++++\n",
          "type": "string",
          "enum": [
            "purchase_order",
            "replaced_order",
            "buyer_reference",
            "billing",
            "billing_uuid",
            "advance_invoice",
            "sales_order",
            "contract",
            "despatch_advice",
            "originator",
            "receipt",
            "project",
            "quotation",
            "payment_url",
            "additional",
            "certified_exporter_authorization",
            "free_trade_agreement",
            "my_customs_form_1_9",
            "my_customs_form_2",
            "item_classification_code",
            "item_commodity_code",
            "item_specification",
            "line_document_reference",
            "line_standard_item_identification",
            "line_sellers_item_identification",
            "line_buyers_item_identification",
            "line_purchase_order",
            "line_billing",
            "line_despatch_document",
            "line_receipt_document"
          ]
        },
        "documentTypeCode": {
          "title": "Document Type Code",
          "description": "The code of the referenced document type. Used for documentType = 'line_document_reference', and for the FR-FE extensions documentType = 'contract' (EXT-FR-FE-01, allowed values for FR-DGFiP: 'CONTRAT', 'MARCHE') and documentType = 'line_billing' (EXT-FR-FE-137). UNCL1001 codes may be sent either prefixed ('uncl1001_<code>') or as bare digits.",
          "type": "string",
          "pattern": "^(uncl1001_[0-9]{1,3}|[0-9]{1,3}|CONTRAT|MARCHE)$"
        },
        "documentId": {
          "title": "DocumentId",
          "description": "The id of the referenced document.",
          "type": "string"
        },
        "documentUuid": {
          "title": "DocumentUuid",
          "description": "The UUID of the referenced document.",
          "type": "string"
        },
        "documentIdSchemeId": {
          "title": "DocumentId Scheme Id",
          "description": "The scheme id of the id of the referenced document.",
          "type": "string"
        },
        "documentIdSchemeAgencyId": {
          "title": "DocumentId SchemeAgencyId",
          "description": "The the agency id of the scheme id of the id of the referenced document.",
          "type": "string"
        },
        "documentIdSchemeVersionId": {
          "title": "DocumentId SchemeVersionId",
          "description": "The version id of the scheme id of the id of the referenced document.",
          "type": "string"
        },
        "documentIdListId": {
          "title": "DocumentId ListId",
          "description": "The list id of the id of the referenced document.",
          "type": "string"
        },
        "documentIdListAgencyId": {
          "title": "DocumentId ListAgencyId",
          "description": "The agency id of the list id of the id of the referenced document.",
          "type": "string"
        },
        "documentIdListVersionId": {
          "title": "DocumentId ListVersionId",
          "description": "The version id of the list id of the id of the referenced document.",
          "type": "string"
        },
        "lineId": {
          "title": "LineId",
          "description": "The line in the referenced document.",
          "type": "string"
        },
        "issueDate": {
          "title": "Issue Date",
          "description": "The issue date of the referenced document.",
          "type": "string",
          "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}$"
        },
        "documentDescription": {
          "title": "Document Description",
          "description": "A description for the referenced document.",
          "type": "string",
          "minLength": 2,
          "maxLength": 1024
        }
      },
      "required": [
        "documentType"
      ]
    },
    "Routing": {
      "title": "Recipient ids",
      "description": "The different ways to send the invoice to the recipient. The publicIdentifiers are used to send via the Peppol network, if the recipient is not registered on the Peppol network, the invoice will be sent to the email addresses in the emails property. This property is only mandatory when sending the invoice data using the <<_openapi_invoice>> property, not when sending using the <<_openapi_invoicedata>> property, in which case this information will be extracted from the <<_openapi_invoicedata>> object. If you do specify an <<_openapi_invoicerecipient>> object and an <<_openapi_invoicedata>> object, the data from the two will be merged.",
      "type": "object",
      "properties": {
        "eIdentifiers": {
          "allOf": [
            {
              "$ref": "#/$defs/EIdentifiers"
            },
            {
              "title": "Electronic Identifiers",
              "description": "The electronic identifiers for this invoice recipient. These are the identifiers used on the Peppol and DBNAlliance networks."
            }
          ]
        },
        "networks": {
          "title": "Networks",
          "description": "Any additional networks to consider for routing",
          "type": "array",
          "items": {
            "$ref": "#/$defs/RoutingNetwork"
          },
          "minItems": 1
        },
        "emails": {
          "title": "Fallback email",
          "description": "The email addresses the invoice should be sent to if none of the other identifiers can be used",
          "type": "array",
          "items": {
            "title": "Email",
            "description": "The email address the invoice should be sent to",
            "type": "string",
            "format": "email"
          }
        },
        "clearWithoutSending": {
          "title": "Clear Without Sending",
          "description": "If you wish to send the document yourself in a Y-flow, use this flag. Wait for the 'cleared' webhook and use the <<_openapi_show_document_submission_evidence_by_type>> endpoint to retrieve the clearing evidence. This will include a sendable document.",
          "type": "boolean",
          "default": false
        }
      }
    },
    "RoutingIdentifier": {
      "title": "Routing Identifier",
      "description": "An electronic routing identifier.",
      "type": "object",
      "properties": {
        "scheme": {
          "title": "Scheme",
          "description": "The scheme of the identifier. See <<_receiver_identifiers_list>> for a list.",
          "type": "string",
          "minLength": 3
        },
        "id": {
          "title": "Identifier",
          "description": "The actual identifier.",
          "type": "string",
          "minLength": 1
        },
        "role": {
          "title": "Role",
          "description": "The role of the identifier. Only used for B2G sending to ES.",
          "type": "string",
          "enum": [
            "es_01_fiscal",
            "es_02_receptor",
            "es_03_pagador"
          ]
        }
      },
      "required": [
        "scheme",
        "id"
      ]
    },
    "RoutingNetwork": {
      "title": "Routing Network",
      "description": "An additional network to consider for routing.",
      "type": "object",
      "properties": {
        "scheme": {
          "title": "application",
          "description": "The name of the network",
          "type": "string",
          "minLength": 3
        },
        "settings": {
          "allOf": [
            {
              "$ref": "#/$defs/NetworkSettings"
            },
            {
              "title": "Settings",
              "description": "The settings for the network."
            }
          ]
        }
      },
      "required": [
        "application",
        "settings"
      ]
    },
    "SalesAgentParty": {
      "title": "Sales Agent Party",
      "description": "An agent acting on behalf of the seller. Used in the French e-invoicing reform (FR-FE EXT-FR-FE-BG-03). Maps to UBL AccountingSupplierParty/Party/AgentParty and CII SalesAgentTradeParty.",
      "type": "object",
      "properties": {
        "party": {
          "$ref": "#/$defs/Party"
        },
        "publicIdentifiers": {
          "title": "Public identifiers",
          "description": "A list of legal and tax identifiers for this party.",
          "type": "array",
          "items": {
            "$ref": "#/$defs/PublicIdentifier"
          }
        }
      },
      "required": [
        "party"
      ]
    },
    "SellerSupplierParty": {
      "title": "Supplier",
      "description": "The party sending the order.",
      "type": "object",
      "properties": {
        "party": {
          "$ref": "#/$defs/SenderParty"
        },
        "publicIdentifiers": {
          "title": "Public identifiers",
          "description": "A list of legal and tax identifiers for this customer.",
          "type": "array",
          "items": {
            "$ref": "#/$defs/PublicIdentifier"
          }
        }
      },
      "required": [
        "party",
        "publicIdentifiers"
      ]
    },
    "SendableDocument": {
      "title": "Sendable Document",
      "description": "The document to send.",
      "type": "object",
      "properties": {
        "documentType": {
          "title": "Document Type",
          "description": "The type of document to be sent.",
          "type": "string",
          "enum": [
            "enveloped_data",
            "invoice",
            "invoice_response",
            "cdar",
            "ppf_cdar",
            "invoice_report",
            "order",
            "fr_e_report",
            "payment_received_notification",
            "duplicate_detection"
          ]
        },
        "invoice": {
          "allOf": [
            {
              "$ref": "#/$defs/Invoice"
            },
            {
              "description": "An invoice or creditnote."
            }
          ]
        },
        "invoiceResponse": {
          "allOf": [
            {
              "$ref": "#/$defs/DocumentInvoiceResponse"
            },
            {
              "description": "An invoice response."
            }
          ]
        },
        "invoiceReport": {
          "$ref": "#/$defs/DocumentInvoiceReport"
        },
        "paymentReceivedNotification": {
          "type": "object",
          "description": "A French payment received notification (lifecycle status 212 Encaissee). Provide the referenced invoice submission via the top-level forDocumentSubmissionGuid field. Use mode=auto when the invoice was paid in full: the per-VAT-rate breakdown is derived from the referenced invoice. Use mode=manual for a partial payment: you supply the amounts actually received per VAT rate, since only you know how the payment was allocated.",
          "properties": {
            "mode": {
              "title": "Mode",
              "description": "auto: report the full invoiced amount, split per VAT rate from the referenced invoice. manual: report the taxSubtotals provided here.",
              "type": "string",
              "enum": [
                "auto",
                "manual"
              ]
            },
            "paymentDate": {
              "title": "Payment Date",
              "description": "Only for mode=manual, and rejected with mode=auto. The date the payment was received, used as the date of the 212 status. Format: yyyy-mm-dd. It may precede the invoice (a down payment) but not be in the future. Defaults to the submission date.",
              "type": "string",
              "format": "date"
            },
            "currency": {
              "allOf": [
                {
                  "$ref": "#/$defs/CurrencyCode"
                },
                {
                  "description": "Only for mode=manual, and rejected with mode=auto. Optional, and only for making the currency of the amounts explicit: the amounts have to reconcile with the referenced invoice, so the currency must be the one of that invoice, which is also the default."
                }
              ]
            },
            "taxSubtotals": {
              "title": "Tax Subtotals",
              "description": "Only for mode=manual, where it is mandatory, and rejected with mode=auto. One entry per VAT rate the payment is allocated to. The sum of the amountIncludingVat may not exceed the total of the referenced invoice, nor, per VAT rate, what that invoice has at the rate. Each notification is checked on its own: what earlier notifications reported for the same invoice is not added up, so it is up to the sender not to report more than the invoice total overall.",
              "type": "array",
              "minItems": 1,
              "items": {
                "title": "Payment Tax Subtotal",
                "type": "object",
                "properties": {
                  "percentage": {
                    "title": "Percentage Tax",
                    "description": "The VAT percentage the amount was received for. Must be one of the VAT percentages of the referenced invoice, which is checked when the stored payload of that invoice is still available.",
                    "type": "number"
                  },
                  "amountIncludingVat": {
                    "title": "Amount Including VAT",
                    "description": "The amount actually received for this VAT rate, VAT included. Negative for a refund.",
                    "type": "number"
                  },
                  "remainingAmountIncludingVat": {
                    "title": "Remaining Amount Including VAT",
                    "description": "Optional. The amount still to be paid for this VAT rate, VAT included, reported as remaining to pay (RAP).",
                    "type": "number"
                  },
                  "currency": {
                    "allOf": [
                      {
                        "$ref": "#/$defs/CurrencyCode"
                      },
                      {
                        "description": "The currency of the amounts of this entry. Must be the currency of the referenced invoice, which is also the default."
                      }
                    ]
                  }
                },
                "required": [
                  "percentage",
                  "amountIncludingVat"
                ]
              }
            }
          },
          "required": [
            "mode"
          ]
        },
        "duplicateDetection": {
          "type": "object",
          "description": "France only. Reports that a received French invoice is a duplicate. Provide the received invoice via the top-level forDocumentGuid field. Storecove then sends the mandatory lifecycle status 213 Rejetée, motif DOUBLON, to the seller's platform and, for an invoice received on the regulated flow, to the PPF, and rejects the receive. Required when documentType is duplicate_detection.",
          "properties": {
            "detected": {
              "title": "Detected",
              "description": "Must be true: the received invoice is a duplicate.",
              "type": "boolean",
              "enum": [
                true
              ]
            }
          },
          "required": [
            "detected"
          ]
        },
        "frEReport": {
          "allOf": [
            {
              "$ref": "#/$defs/frEReport"
            },
            {
              "description": "French DGFiP e-reporting (F10) payload. Required when documentType is fr_e_report."
            }
          ]
        },
        "order": {
          "allOf": [
            {
              "$ref": "#/$defs/DocumentOrder"
            },
            {
              "description": "An order.."
            }
          ]
        },
        "rawDocumentData": {
          "$ref": "#/$defs/RawDocumentData"
        },
        "envelopedData": {
          "$ref": "#/$defs/EnvelopedData"
        }
      },
      "required": [
        "documentType"
      ]
    },
    "SenderParty": {
      "title": "Sender Party",
      "description": "A party that can send documents",
      "type": "object",
      "properties": {
        "contact": {
          "$ref": "#/$defs/Contact"
        }
      }
    },
    "Shipment": {
      "type": "object",
      "properties": {
        "shippingMarks": {
          "title": "Shipping Marks",
          "description": "A text that the buyer requests to be printed on the packing labels. Used only for DocumentOrder.",
          "type": "string",
          "maxLength": 128
        },
        "originAddress": {
          "allOf": [
            {
              "$ref": "#/$defs/Address"
            },
            {
              "title": "Origin Address",
              "description": "The address from which the shipment is being sent. Currently supports country only."
            }
          ]
        },
        "allowanceCharges": {
          "title": "Allowance Charges",
          "description": "A list of charges",
          "type": "array",
          "items": {
            "$ref": "#/$defs/AllowanceCharge"
          }
        }
      }
    },
    "Tax": {
      "type": "object",
      "properties": {
        "amount": {
          "title": "Amount of Tax",
          "description": "The amount of tax. Mandatory if taxSystem == 'tax_line_amounts'. However, it is best to use taxSystem tax_line_percentages and provide only the percentage, not the actual amount. The amount is then provided at the invoice level, in the taxSubtotals element.",
          "type": "number"
        },
        "percentage": {
          "title": "Percentage Tax",
          "description": "The percentage Tax. This should be a valid Tax percentage in the country at the time of the issueDate of this invoice. Mandatory if taxSystem == 'tax_line_percentages'",
          "type": "number"
        },
        "country": {
          "$ref": "#/$defs/Country"
        },
        "acknowledgeThirdCountryTax": {
          "title": "Acknowledge Third Country Tax",
          "description": "When specifying a tax country other than that of the sender or the receiver, this flag must be set. This is to prevent accidental errors.",
          "type": "boolean",
          "default": false
        },
        "category": {
          "title": "Tax category",
          "description": "The allowed values depend on the country of the tax:\n++++\n<ul>    <li>        AE:        <ul>            <li>standard (5%)</li>            <li>standard_additional(5%)</li>            <li>reverse_charge (0%)</li>            <li>zero_rated (0%)</li>            <li>exempt (0%)</li>            <li>export (0%)</li>            <li>outside_scope (0%)</li>        </ul>    </li>    <li>        AU:        <ul>            <li>standard (10%, 5.5%)</li>            <li>zero_rated (0%)</li>            <li>exempt (0%)</li>            <li>export (0%)</li>            <li>outside_scope (0%)</li>        </ul>    </li>    <li>        EU:        <ul>            <li>standard (percentages country dependent)</li>            <li>zero_rated (0%)</li>            <li>reverse_charge (0%)</li>            <li>intra_community (0%)</li>            <li>exempt (0%)</li>            <li>export (0%)</li>            <li>outside_scope (0%)</li>        </ul>    </li>    <li>        EU/IT:        <ul>            <li>standard</li>            <li>zero_rated (0%)</li>            <li>reverse_charge (0%)</li>            <li>intra_community (0%)</li>            <li>exempt (0%)</li>            <li>export (0%)</li>            <li>outside_scope (0%)</li>            <li>bollo_virtuale (only at the invoice level and with mandatory amount: €2.00)</li>        </ul>    </li>    <li>        EU/PL:        <ul>            <li>standard (23%, 22%, 8%, 7%, 5%, 4%, 3%). A standard rate whose tax country is another member state is the OSS rate for B2C (FA(3) P_12_XII).</li>            <li>zero_rated (0%) ⮕ FA(3) \"0 KR\"</li>            <li>reverse_charge (0%). Buyer PL:VAT is domestic reverse charge (FA(3) \"oo\"). Buyer VAT in another member state is FA(3) \"np II\". Buyer VAT outside the EU is FA(3) \"np I\".</li>            <li>intra_community (0%) ⮕ FA(3) \"0 WDT\"</li>            <li>exempt (0%) ⮕ FA(3) \"zw\"</li>            <li>export (0%) ⮕ FA(3) \"0 EX\"</li>            <li>foreign_place_of_supply (0%) ⮕ FA(3) \"np I\"</li>        </ul>    </li>    <li>        IN:        <ul>            <li>igst (28%, 18%, 12%, 5%, 3%, 0.25%)</li>            <li>sgst (14%, 9%, 6%, 2.5%, 1.5%)</li>            <li>cgst (14%, 9%, 6%, 2.5%, 1.5%)</li>            <li>cess (any percentage)</li>            <li>state_cess (any percentage)</li>            <li>reverse_charge (0%)</li>            <li>exempt (0%)</li>            <li>export (0%)</li>            <li>outside_scope (0%)</li>            <li>zero_rated (0%)</li>        </ul>    </li>    <li>        JP:        <ul>            <li>standard (10%, 8%)</li>            <li>exempt (0%)</li>            <li>export (0%)</li>            <li>outside_scope (0%)</li>        </ul>    </li>    <li>        MX:        <ul>            <li>standard (16%)</li>            <li>exempt (0%)</li>            <li>export (0%)</li>            <li>outside_scope (0%)</li>            <li>ieps</li>            <li>wht</li>        </ul>    </li>    <li>        MY:        <ul>            <li>sales (5%, 10%) ⮕ LHDNM '01', Peppol 'T'            <li>sales_zero (0%) ⮕ LHDNM '01', Peppol 'E'            <li>sales_exempt (5%, 10%) ⮕ LHDNM 'E', Peppol 'E'            <li>service (6%, 8%) ⮕ LHDNM '02', Peppol 'T'            <li>service_zero (0%) ⮕ LHDNM '02', Peppol 'E'            <li>service_exempt (6%, 8%) ⮕ LHDNM 'E', Peppol 'E'            <li>tourism (any amount) ⮕ LHDNM '03', Peppol 'T'            <li>high_value_goods (any percentage) ⮕ LHDNM '04', Peppol 'T'            <li>low_value_goods (10%) ⮕ LHDNM '05', Peppol 'T'            <li>zero_rated (0%) ⮕ LHDNM '06', Peppol 'E'            <li>exempt (0%) ⮕ LHDNM 'E', Peppol 'E'            <li>export (0%) ⮕ LHDNM 'E', Peppol 'E'            <li>outside_scope (0%) ⮕ LHDNM '06', Peppol 'O'        </ul>    </li>    <li>        NZ:        <ul>            <li>standard (15%)</li>            <li>zero_rated (0%)</li>            <li>exempt (0%)</li>            <li>export (0%)</li>            <li>outside_scope (0%)</li>        </ul>    </li>    <li>        SG:        <table>            <tr>                <th>category</th>                <th>percentage</th>                <th>sales invoice</th>                <th>purchase invoice</th>            </tr>            <tr>                <td>standard</td>                <td>9%</td>                <td>SR</td>                <td>TX</td>            </tr>            <tr>                <td>outside_scope</td>                <td>0%</td>                <td>OS</td>                <td>OP</td>            </tr>            <tr>                <td>zero_rated</td>                <td>0%</td>                <td>ZR</td>                <td>ZP</td>            </tr>            <tr>                <td>not_registered</td>                <td>0%</td>                <td>NG</td>                <td>NR</td>            </tr>            <tr>                <td>deemed_supply</td>                <td>9%</td>                <td>DS</td>                <td></td>            </tr>            <tr>                <td>srca_c</td>                <td>9%</td>                <td>SRCA-C</td>                <td>TXCA</td>            </tr>            <tr>                <td>srovr_rs</td>                <td>9%</td>                <td>SROVR-RS</td>                <td></td>            </tr>            <tr>                <td>srovr_lvg</td>                <td>9%</td>                <td>SROVR-LVG</td>                <td></td>            </tr>            <tr>                <td>srlvg</td>                <td>9%</td>                <td>SRLVG</td>                <td></td>            </tr>            <tr>                <td>srca_s</td>                <td>0%</td>                <td>SRCA-S</td>                <td></td>            </tr>            <tr>                <td>regulation33_exempt</td>                <td>0%</td>                <td>ES33</td>                <td>EP</td>            </tr>            <tr>                <td>nonregulation33_exempt</td>                <td>0%</td>                <td>ESN33</td>                <td>EP</td>            </tr>            <tr>                <td>export</td>                <td>0%</td>                <td>ZR</td>                <td></td>            </tr>            <tr>                <td>not_applicable</td>                <td>0%</td>                <td>NA</td>                <td>TXNA</td>            </tr>            <tr>                <td>standard_ca (experimental)</td>                <td>9%</td>                <td></td>                <td>TXCA</td>            </tr>            <tr>                <td>standard_na (experimental)</td>                <td>9%</td>                <td></td>                <td>TXNA</td>            </tr>            <tr>                <td>standard_re (experimental)</td>                <td>9%</td>                <td></td>                <td>TX-RE</td>            </tr>            <tr>                <td>standard_n33 (experimental)</td>                <td>9%</td>                <td></td>                <td>TX-N33</td>            </tr>            <tr>                <td>standard_33 (experimental)</td>                <td>9%</td>                <td></td>                <td>TX-ESS</td>            </tr>            <tr>                <td>import_service (experimental)</td>                <td>9%</td>                <td></td>                <td>TXRC-TS</td>            </tr>            <tr>                <td>import_33_service (experimental)</td>                <td>9%</td>                <td></td>                <td>TXRC-ESS</td>            </tr>            <tr>                <td>import_n33_service (experimental)</td>                <td>9%</td>                <td></td>                <td>TXRC-N33</td>            </tr>            <tr>                <td>import_reverse_charge_service (experimental)</td>                <td>9%</td>                <td></td>                <td>TXRC-RE</td>            </tr>            <tr>                <td>import_goods (experimental)</td>                <td>9%</td>                <td></td>                <td>IM</td>            </tr>            <tr>                <td>import_33_goods (experimental)</td>                <td>9%</td>                <td></td>                <td>IM-ESS</td>            </tr>            <tr>                <td>import_n33_goods (experimental)</td>                <td>9%</td>                <td></td>                <td>IM-N33</td>            </tr>            <tr>                <td>import_reverse_charge_goods (experimental)</td>                <td>9%</td>                <td></td>                <td>IM-RE</td>            </tr>            <tr>                <td>import_mes (experimental)</td>                <td>9%</td>                <td></td>                <td>ME</td>            </tr>            <tr>                <td>import_gst_ds (experimental)</td>                <td>9%</td>                <td></td>                <td>IGDS</td>            </tr>            <tr>                <td>blocked (experimental)</td>                <td>9%</td>                <td></td>                <td>BL</td>            </tr>            <tr>                <td>exempt_purchase (experimental)</td>                <td>0%</td>                <td></td>                <td>EP</td>            </tr>        </table>        <p>When a received invoice is reported to IRAS with documentType invoice_report, each sales GST category of the received invoice is replaced by the code in the purchase invoice column; purchase categories already on the received invoice are kept. Categories without a purchase invoice code (deemed_supply, srovr_rs, srovr_lvg, srlvg, srca_s, export) cannot be reported this way: the request is rejected with a 422 and the invoice must be reported as a self-billing invoice (selfBillingMode true) with the purchase categories instead.</p>    </li>    <li>        US:        <ul>            <li>standard (any percentage)</li>            <li>exempt (0%)</li>            <li>export (0%)</li>            <li>outside_scope (0%)</li>        </ul>    </li></ul>\n++++",
          "type": "string",
          "enum": [
            "standard",
            "zero_rated",
            "reverse_charge",
            "intra_community",
            "exempt",
            "export",
            "outside_scope",
            "regulation33_exempt",
            "nonregulation33_exempt",
            "deemed_supply",
            "srca_s",
            "srca_c",
            "not_registered",
            "igst",
            "cgst",
            "sgst",
            "cess",
            "state_cess",
            "srovr",
            "srovr_rs",
            "srovr_lvg",
            "srlvg",
            "bollo_virtuale",
            "exempt_it_n1",
            "foreign_place_of_supply",
            "sales",
            "service",
            "tourism",
            "high_value_goods",
            "low_value_goods",
            "sales_zero",
            "service_zero",
            "not_applicable",
            "sales_exempt",
            "service_exempt",
            "standard_ca",
            "standard_na",
            "standard_re",
            "standard_n33",
            "standard_33",
            "import_service",
            "import_33_service",
            "import_n33_service",
            "import_reverse_charge_service",
            "import_goods",
            "import_33_goods",
            "import_n33_goods",
            "import_reverse_charge_goods",
            "import_mes",
            "import_gst_ds",
            "blocked",
            "exempt_purchase",
            "standard_additional",
            "ieps",
            "wht"
          ]
        },
        "type": {
          "title": "Tax Type",
          "description": "The type of tax. This field is only used for receiving. For sending, the type is automatically determined from the country code and should not be supplied.",
          "type": "string",
          "enum": [
            "VAT",
            "GST"
          ]
        }
      },
      "required": [
        "country"
      ]
    },
    "TaxAuthority": {
      "title": "Tax Authority",
      "description": "Information relating to a tax authority.",
      "type": "object",
      "properties": {
        "uuid": {
          "title": "UUID",
          "description": "The uuid assigned by the tax authority upon validation.",
          "type": "string",
          "minLength": 3
        },
        "uri": {
          "title": "URI",
          "description": "A URI (deep link) to the document with the tax authority.",
          "type": "string",
          "minLength": 3
        },
        "validatedAt": {
          "title": "Validated At",
          "description": "The datetime when the document was validated by the tax authority.",
          "type": "string",
          "minLength": 3
        }
      }
    },
    "TaxSubtotal": {
      "title": "Tax Subtotal",
      "description": "The total amount of tax of this type in the invoice.",
      "type": "object",
      "properties": {
        "taxableAmount": {
          "title": "Taxable Amount",
          "description": "The amount on which the tax is levied. For Malaysian LHDNM sales_exempt and service_exempt categories, this is the Amount Exempted from Tax.",
          "type": "number"
        },
        "taxAmount": {
          "title": "The amount of tax levied",
          "description": "The amount of tax.",
          "type": "number"
        },
        "percentage": {
          "title": "Percentage Tax",
          "description": "The tax percentage. This should be a valid tax percentage in the country at the time of the taxpointDate of this invoice.",
          "type": "number"
        },
        "category": {
          "title": "Tax category",
          "description": "The tax category. For a description see <<_openapi_tax>>",
          "type": "string",
          "enum": [
            "standard",
            "zero_rated",
            "reverse_charge",
            "intra_community",
            "exempt",
            "export",
            "outside_scope",
            "regulation33_exempt",
            "nonregulation33_exempt",
            "deemed_supply",
            "srca_s",
            "srca_c",
            "not_registered",
            "igst",
            "cgst",
            "sgst",
            "cess",
            "state_cess",
            "srovr",
            "srovr_rs",
            "srovr_lvg",
            "srlvg",
            "bollo_virtuale",
            "exempt_it_n1",
            "foreign_place_of_supply",
            "sales",
            "service",
            "tourism",
            "high_value_goods",
            "low_value_goods",
            "sales_zero",
            "service_zero",
            "not_applicable",
            "sales_exempt",
            "service_exempt",
            "standard_ca",
            "standard_na",
            "standard_re",
            "standard_n33",
            "standard_33",
            "import_service",
            "import_33_service",
            "import_n33_service",
            "import_reverse_charge_service",
            "import_goods",
            "import_33_goods",
            "import_n33_goods",
            "import_reverse_charge_goods",
            "import_mes",
            "import_gst_ds",
            "blocked",
            "exempt_purchase",
            "standard_additional",
            "ieps",
            "wht"
          ]
        },
        "country": {
          "allOf": [
            {
              "$ref": "#/$defs/Country"
            },
            {
              "description": "The country levying the tax."
            }
          ]
        },
        "taxExemptionReasonCode": {
          "title": "Tax Exemption Reason Code",
          "description": "The VAT exemption reason code for this tax subtotal. For Peppol BIS Billing 3.0 this should be a valid VATEX code.",
          "type": "string"
        },
        "taxExemptionReason": {
          "title": "Tax Exemption Reason",
          "description": "The VAT exemption reason text for this tax subtotal. For Malaysian LHDNM, this is the Details of Tax Exemption (for example the buyer's SST exemption certificate number or a gazette order) and is mandatory when tax exemption applies.",
          "type": "string"
        }
      },
      "required": [
        "taxAmount",
        "country"
      ]
    },
    "frEReport": {
      "title": "French e-reporting (F10)",
      "description": "E-reporting payload for France (DGFiP). Send with document.documentType \"fr_e_report\". The platform submits the report (FFE1025A) in the fr-dgfip workflow. Both camelCase frEReport and snake fr_e_report keys are accepted in the request body; the public schema uses frEReport. G6.29: exactly one of transactionReport (TB-2) or paymentReport (TB-3) must be present — not both, not neither (enforced at submission time; not expressible in OpenAPI 2.0). See also the France appendix in the API documentation.",
      "type": "object",
      "properties": {
        "typeCode": {
          "type": "string",
          "title": "Report type",
          "description": "e.g. IN (initial) or RE (rectificative).",
          "minLength": 1
        },
        "documentId": {
          "type": "string",
          "title": "Report document id",
          "description": "Identifier for this report instance.",
          "minLength": 1
        },
        "issueDate": {
          "title": "Report issue date",
          "description": "Format: yyyy-mm-dd.",
          "type": "string",
          "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}$"
        },
        "issueTime": {
          "title": "Report issue time",
          "description": "Format: hh:mm:ss (24-hour).",
          "type": "string",
          "pattern": "^[0-9]{2}:[0-9]{2}:[0-9]{2}$"
        },
        "timeZone": {
          "title": "Report issue timezone",
          "description": "Format: ±zzzz, where ±zzzz is the difference from UTC, e.g. +0100 or -0900. Applies to the report issue time (and, where relevant, the issue date context for processing).",
          "type": "string",
          "pattern": "^[+-]\\d{4}$"
        },
        "declarantParty": {
          "$ref": "#/$defs/frEReportDeclarantParty"
        },
        "transactionReport": {
          "$ref": "#/$defs/frEReportTransactionReport"
        },
        "paymentReport": {
          "$ref": "#/$defs/frEReportPaymentReport"
        }
      },
      "required": [
        "typeCode",
        "documentId",
        "issueDate",
        "issueTime",
        "timeZone",
        "declarantParty"
      ],
      "additionalProperties": true
    },
    "frEReportB2bCrossBorderInvoice": {
      "type": "object",
      "title": "B2B cross-border invoice line in a transaction report",
      "description": "Structured like a full invoice: identifiers, parties, taxSubtotals, and invoice lines.",
      "properties": {
        "invoiceNumber": {
          "type": "string"
        },
        "frCadreDeFacturation": {
          "title": "FR Cadre de Facturation",
          "description": "The French invoicing context (Cadre de Facturation) for this cross-border B2B line in a Flux 10 transaction report. Maps to Invoice/BusinessProcess/ID. Allowed values are the Flux 10 G1.02 list (Annexe 7). Optional; when omitted the platform emits B1. Do not send F1-only values (S3, B8, S8, M8).",
          "type": "string",
          "enum": [
            "B1",
            "S1",
            "M1",
            "B2",
            "S2",
            "M2",
            "B4",
            "S4",
            "M4",
            "S5",
            "S6",
            "B7",
            "S7"
          ]
        },
        "issueDate": {
          "title": "Invoice issue date",
          "description": "Format: yyyy-mm-dd.",
          "type": "string",
          "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}$"
        },
        "dueDate": {
          "title": "Due date",
          "description": "Format: yyyy-mm-dd.",
          "type": "string",
          "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}$"
        },
        "documentCurrency": {
          "type": "string"
        },
        "amountIncludingVat": {
          "type": "number"
        },
        "taxSubtotals": {
          "type": "array",
          "items": {
            "type": "object",
            "additionalProperties": true
          }
        },
        "accountingSupplierParty": {
          "$ref": "#/$defs/AccountingSupplierParty"
        },
        "accountingCustomerParty": {
          "$ref": "#/$defs/AccountingCustomerParty"
        },
        "invoiceLines": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/InvoiceLine"
          }
        },
        "references": {
          "type": "array",
          "description": "For credit notes (negative amountIncludingVat): must contain a documentType='billing' entry with both documentId and issueDate pointing to the original invoice being corrected (F10 schematron G1.32b, fatal; issueDate is mandatory, not optional, for this header-level reference).",
          "items": {
            "$ref": "#/$defs/Reference"
          }
        }
      },
      "required": [
        "issueDate",
        "amountIncludingVat"
      ],
      "additionalProperties": true
    },
    "frEReportB2bPayment": {
      "type": "object",
      "title": "B2B payment line",
      "properties": {
        "invoiceNumber": {
          "type": "string"
        },
        "issueDate": {
          "title": "Invoice issue date",
          "description": "Format: yyyy-mm-dd.",
          "type": "string",
          "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}$"
        },
        "paymentDate": {
          "title": "Payment date",
          "description": "Format: yyyy-mm-dd.",
          "type": "string",
          "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}$"
        },
        "amount": {
          "type": "number"
        },
        "currency": {
          "type": "string"
        },
        "paymentMeansCode": {
          "type": "string"
        },
        "taxSubtotals": {
          "type": "array",
          "items": {
            "type": "object",
            "additionalProperties": true
          }
        }
      },
      "additionalProperties": true
    },
    "frEReportB2cPayment": {
      "type": "object",
      "title": "B2C payment aggregate",
      "description": "Payment-report aggregate for B2C: the platform uses `date` and `taxSubtotal` to build the submitted report. Put `currency` and per-rate amounts on each `taxSubtotal` line; a top-level `currency` (if present) is not used for the France payment XML. Do not use the B2C *transaction* aggregate field set here (`vatPaymentOption`, `category`, `amountExcludingVat`, `amountIncludingVat`, `transactionsCount`, transaction-style `taxSubtotals`); those are only for `b2cTransactions` rows.",
      "properties": {
        "date": {
          "title": "Payment aggregate date",
          "description": "Format: yyyy-mm-dd.",
          "type": "string",
          "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}$"
        },
        "currency": {
          "type": "string",
          "description": "Optional. Not read by the payment-aggregate mapping; set `currency` on each `taxSubtotal` row for output."
        },
        "taxSubtotal": {
          "type": "array",
          "items": {
            "type": "object",
            "additionalProperties": true
          }
        }
      },
      "additionalProperties": true
    },
    "frEReportB2cTransaction": {
      "type": "object",
      "title": "B2C aggregate in France",
      "properties": {
        "date": {
          "title": "Transaction date",
          "description": "Format: yyyy-mm-dd.",
          "type": "string",
          "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}$"
        },
        "currency": {
          "type": "string"
        },
        "vatPaymentOption": {
          "type": "string"
        },
        "category": {
          "type": "string",
          "title": "Transaction category",
          "description": "Flux 10 CategoryCode (Annexe 7 G1.68). Required; omitting it or sending a blank/unknown value makes PPF reject the archive as IRR_SYNTAX.",
          "enum": [
            "TLB1",
            "TPS1",
            "TNT1",
            "TMA1"
          ]
        },
        "amountExcludingVat": {
          "type": "number"
        },
        "amountIncludingVat": {
          "type": "number"
        },
        "transactionsCount": {
          "type": "integer",
          "minimum": 0
        },
        "taxSubtotals": {
          "type": "array",
          "items": {
            "type": "object",
            "additionalProperties": true
          }
        }
      },
      "required": [
        "date",
        "category"
      ],
      "additionalProperties": true
    },
    "frEReportDeclarantParty": {
      "type": "object",
      "title": "Declarant (issuer of the e-report)",
      "properties": {
        "party": {
          "$ref": "#/$defs/frEReportParty"
        },
        "publicIdentifiers": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/PublicIdentifier"
          },
          "minItems": 1
        }
      },
      "required": [
        "publicIdentifiers"
      ],
      "additionalProperties": true
    },
    "frEReportParty": {
      "type": "object",
      "title": "Party (minimal)",
      "description": "Legal name and address fields as used in e-reporting samples.",
      "properties": {
        "companyName": {
          "type": "string"
        }
      },
      "additionalProperties": true
    },
    "frEReportPaymentReport": {
      "type": "object",
      "title": "Payment report (B2B and B2C payments)",
      "properties": {
        "period": {
          "title": "Reporting period",
          "description": "The period the payment report covers. Format: yyyy-mm-dd - yyyy-mm-dd.",
          "type": "string",
          "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2} - [0-9]{4}-[0-9]{2}-[0-9]{2}$"
        },
        "b2biPayments": {
          "type": "array",
          "description": "Payments for B2B / cross-border invoices in scope.",
          "items": {
            "$ref": "#/$defs/frEReportB2bPayment"
          }
        },
        "b2cPayments": {
          "type": "array",
          "description": "B2C payment aggregates. Each item supplies the payment `date` and a `taxSubtotal` list (per-rate amounts and currency; see the shared converter). Other keys are ignored.",
          "items": {
            "$ref": "#/$defs/frEReportB2cPayment"
          }
        }
      },
      "required": [
        "period"
      ],
      "additionalProperties": true
    },
    "frEReportTransactionReport": {
      "type": "object",
      "title": "Transaction report (B2B cross-border invoices and B2C aggregates)",
      "properties": {
        "period": {
          "title": "Reporting period",
          "description": "The period the transaction report covers. Format: yyyy-mm-dd - yyyy-mm-dd.",
          "type": "string",
          "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2} - [0-9]{4}-[0-9]{2}-[0-9]{2}$"
        },
        "b2biInvoices": {
          "type": "array",
          "description": "B2B cross-border invoices to report (sales and received cross-border lines as in the DGFiP test cases).",
          "items": {
            "$ref": "#/$defs/frEReportB2bCrossBorderInvoice"
          }
        },
        "b2cTransactions": {
          "type": "array",
          "description": "Aggregated B2C transactions in France for the period.",
          "items": {
            "$ref": "#/$defs/frEReportB2cTransaction"
          }
        }
      },
      "required": [
        "period"
      ],
      "additionalProperties": true
    }
  }
}