{
  "$defs": {
    "Charge": {
      "description": "Charge represents a surchange applied to the complete document independent from the individual lines.",
      "properties": {
        "amount": {
          "$ref": "https://gobl.org/draft-0/num/amount",
          "calculated": true,
          "description": "Amount to apply (calculated if percent present)",
          "title": "Amount"
        },
        "base": {
          "$ref": "https://gobl.org/draft-0/num/amount",
          "description": "Base represents the value used as a base for percent calculations.\nIf not already provided, we'll take the invoices sum before\ndiscounts.",
          "title": "Base"
        },
        "code": {
          "description": "Code for why was this charge applied?",
          "title": "Reason Code",
          "type": "string"
        },
        "i": {
          "calculated": true,
          "description": "Line number inside the list of charges (calculated).",
          "title": "Index",
          "type": "integer"
        },
        "key": {
          "$ref": "https://gobl.org/draft-0/cbc/key",
          "description": "Key for grouping or identifying charges for tax purposes.",
          "title": "Key"
        },
        "meta": {
          "$ref": "https://gobl.org/draft-0/cbc/meta",
          "description": "Additional semi-structured information.",
          "title": "Meta"
        },
        "percent": {
          "$ref": "https://gobl.org/draft-0/num/percentage",
          "description": "Percentage to apply to the invoice's Sum",
          "title": "Percent"
        },
        "reason": {
          "description": "Text description as to why the charge was applied",
          "title": "Reason",
          "type": "string"
        },
        "ref": {
          "description": "Code to used to refer to the this charge",
          "title": "Reference",
          "type": "string"
        },
        "taxes": {
          "$ref": "https://gobl.org/draft-0/tax/set",
          "description": "List of taxes to apply to the charge",
          "title": "Taxes"
        },
        "uuid": {
          "description": "Universally Unique Identifier.",
          "format": "uuid",
          "title": "UUID",
          "type": "string"
        }
      },
      "required": [
        "i",
        "amount"
      ],
      "type": "object"
    },
    "Delivery": {
      "description": "Delivery covers the details of the destination for the products described in the invoice body.",
      "properties": {
        "date": {
          "$ref": "https://gobl.org/draft-0/cal/date",
          "description": "When the goods should be expected.",
          "title": "Date"
        },
        "identities": {
          "description": "Identities is used to define specific codes or IDs that may be used to\nidentify the delivery.",
          "items": {
            "$ref": "https://gobl.org/draft-0/org/identity"
          },
          "title": "Identities",
          "type": "array"
        },
        "meta": {
          "$ref": "https://gobl.org/draft-0/cbc/meta",
          "description": "Additional custom data.",
          "title": "Meta"
        },
        "period": {
          "$ref": "https://gobl.org/draft-0/cal/period",
          "description": "Period of time in which to expect delivery if a specific date is not available.",
          "title": "Period"
        },
        "receiver": {
          "$ref": "https://gobl.org/draft-0/org/party",
          "description": "The party who will receive delivery of the goods defined in the invoice and is not responsible for taxes.",
          "title": "Receiver"
        }
      },
      "type": "object"
    },
    "Discount": {
      "description": "Discount represents an allowance applied to the complete document independent from the individual lines.",
      "properties": {
        "amount": {
          "$ref": "https://gobl.org/draft-0/num/amount",
          "calculated": true,
          "description": "Amount to apply (calculated if percent present).",
          "title": "Amount"
        },
        "base": {
          "$ref": "https://gobl.org/draft-0/num/amount",
          "description": "Base represents the value used as a base for percent calculations.\nIf not already provided, we'll take the invoices sum.",
          "title": "Base"
        },
        "code": {
          "description": "Code for the reason this discount applied",
          "title": "Reason Code",
          "type": "string"
        },
        "i": {
          "calculated": true,
          "description": "Line number inside the list of discounts (calculated)",
          "title": "Index",
          "type": "integer"
        },
        "meta": {
          "$ref": "https://gobl.org/draft-0/cbc/meta",
          "description": "Additional semi-structured information.",
          "title": "Meta"
        },
        "percent": {
          "$ref": "https://gobl.org/draft-0/num/percentage",
          "description": "Percentage to apply to the invoice's Sum.",
          "title": "Percent"
        },
        "reason": {
          "description": "Text description as to why the discount was applied",
          "title": "Reason",
          "type": "string"
        },
        "ref": {
          "description": "Reference or ID for this Discount",
          "title": "Reference",
          "type": "string"
        },
        "taxes": {
          "$ref": "https://gobl.org/draft-0/tax/set",
          "description": "List of taxes to apply to the discount",
          "title": "Taxes"
        },
        "uuid": {
          "description": "Universally Unique Identifier.",
          "format": "uuid",
          "title": "UUID",
          "type": "string"
        }
      },
      "required": [
        "i",
        "amount"
      ],
      "type": "object"
    },
    "DocumentReference": {
      "description": "DocumentReference provides a link to a existing document.",
      "properties": {
        "code": {
          "description": "Source document's code or other identifier.",
          "title": "Code",
          "type": "string"
        },
        "series": {
          "description": "Series the reference document belongs to.",
          "title": "Series",
          "type": "string"
        },
        "url": {
          "description": "Link to the source document.",
          "format": "uri",
          "title": "URL",
          "type": "string"
        },
        "uuid": {
          "description": "Unique ID copied from the source document.",
          "format": "uuid",
          "title": "UUID",
          "type": "string"
        }
      },
      "type": "object"
    },
    "Invoice": {
      "description": "Invoice represents a payment claim for goods or services supplied under conditions agreed between the supplier and the customer.",
      "properties": {
        "charges": {
          "description": "Charges or surcharges applied to the complete invoice",
          "items": {
            "$ref": "#/$defs/Charge"
          },
          "title": "Charges",
          "type": "array"
        },
        "code": {
          "description": "Sequential code used to identify this invoice in tax declarations.",
          "pattern": "^([A-Za-z0-9][A-Za-z0-9 /\\._-]?)*[A-Za-z0-9]$",
          "title": "Code",
          "type": "string"
        },
        "complements": {
          "description": "Additional complementary objects that add relevant information to the invoice.",
          "items": {
            "$ref": "https://gobl.org/draft-0/schema/object"
          },
          "title": "Complements",
          "type": "array"
        },
        "currency": {
          "$ref": "https://gobl.org/draft-0/currency/code",
          "calculated": true,
          "description": "Currency for all invoice totals.",
          "title": "Currency"
        },
        "customer": {
          "$ref": "https://gobl.org/draft-0/org/party",
          "description": "Legal entity receiving the goods or services, may be empty in certain circumstances such as simplified invoices.",
          "title": "Customer"
        },
        "delivery": {
          "$ref": "#/$defs/Delivery",
          "description": "Specific details on delivery of the goods referenced in the invoice.",
          "title": "Delivery Details"
        },
        "discounts": {
          "description": "Discounts or allowances applied to the complete invoice",
          "items": {
            "$ref": "#/$defs/Discount"
          },
          "title": "Discounts",
          "type": "array"
        },
        "exchange_rates": {
          "description": "Exchange rates to be used when converting the invoices monetary values into other currencies.",
          "items": {
            "$ref": "https://gobl.org/draft-0/currency/exchange-rate"
          },
          "title": "Exchange Rates",
          "type": "array"
        },
        "issue_date": {
          "$ref": "https://gobl.org/draft-0/cal/date",
          "calculated": true,
          "description": "When the invoice was created.",
          "title": "Issue Date"
        },
        "lines": {
          "description": "List of invoice lines representing each of the items sold to the customer.",
          "items": {
            "$ref": "#/$defs/Line"
          },
          "title": "Lines",
          "type": "array"
        },
        "meta": {
          "$ref": "https://gobl.org/draft-0/cbc/meta",
          "description": "Additional semi-structured data that doesn't fit into the body of the invoice.",
          "title": "Meta"
        },
        "notes": {
          "description": "Unstructured information that is relevant to the invoice, such as correction or additional\nlegal details.",
          "items": {
            "$ref": "https://gobl.org/draft-0/cbc/note"
          },
          "title": "Notes",
          "type": "array"
        },
        "op_date": {
          "$ref": "https://gobl.org/draft-0/cal/date",
          "description": "Date when the operation defined by the invoice became effective.",
          "title": "Operation Date"
        },
        "ordering": {
          "$ref": "#/$defs/Ordering",
          "description": "Ordering details including document references and buyer or seller parties.",
          "title": "Ordering Details"
        },
        "outlays": {
          "description": "Expenses paid for by the supplier but invoiced directly to the customer.",
          "items": {
            "$ref": "#/$defs/Outlay"
          },
          "title": "Outlays",
          "type": "array"
        },
        "payment": {
          "$ref": "#/$defs/Payment",
          "description": "Information on when, how, and to whom the invoice should be paid.",
          "title": "Payment Details"
        },
        "preceding": {
          "description": "Key information regarding previous invoices and potentially details as to why they\nwere corrected.",
          "items": {
            "$ref": "#/$defs/Preceding"
          },
          "title": "Preceding Details",
          "type": "array"
        },
        "series": {
          "description": "Used as a prefix to group codes.",
          "pattern": "^([A-Za-z0-9][A-Za-z0-9 /\\._-]?)*[A-Za-z0-9]$",
          "title": "Series",
          "type": "string"
        },
        "supplier": {
          "$ref": "https://gobl.org/draft-0/org/party",
          "description": "The taxable entity supplying the goods or services.",
          "title": "Supplier"
        },
        "tax": {
          "$ref": "#/$defs/Tax",
          "description": "Special tax configuration for billing.",
          "title": "Tax"
        },
        "totals": {
          "$ref": "#/$defs/Totals",
          "calculated": true,
          "description": "Summary of all the invoice totals, including taxes (calculated).",
          "title": "Totals"
        },
        "type": {
          "$ref": "https://gobl.org/draft-0/cbc/key",
          "calculated": true,
          "description": "Type of invoice document subject to the requirements of the local tax regime.",
          "oneOf": [
            {
              "const": "standard",
              "description": "A regular commercial invoice document between a supplier and customer.",
              "title": "Standard"
            },
            {
              "const": "proforma",
              "description": "For a clients validation before sending a final invoice.",
              "title": "Proforma"
            },
            {
              "const": "corrective",
              "description": "Corrected invoice that completely *replaces* the preceding document.",
              "title": "Corrective"
            },
            {
              "const": "credit-note",
              "description": "Reflects a refund either partial or complete of the preceding document. A \ncredit note effectively *extends* the previous document.",
              "title": "Credit Note"
            },
            {
              "const": "debit-note",
              "description": "An additional set of charges to be added to the preceding document.",
              "title": "Debit Note"
            }
          ],
          "title": "Type"
        },
        "uuid": {
          "description": "Universally Unique Identifier.",
          "format": "uuid",
          "title": "UUID",
          "type": "string"
        },
        "value_date": {
          "$ref": "https://gobl.org/draft-0/cal/date",
          "description": "When the taxes of this invoice become accountable, if none set, the issue date is used.",
          "title": "Value Date"
        }
      },
      "required": [
        "type",
        "code",
        "issue_date",
        "currency",
        "supplier",
        "totals"
      ],
      "type": "object"
    },
    "Line": {
      "description": "Line is a single row in an invoice.",
      "properties": {
        "charges": {
          "description": "Charges applied to this line",
          "items": {
            "$ref": "#/$defs/LineCharge"
          },
          "title": "Charges",
          "type": "array"
        },
        "discounts": {
          "description": "Discounts applied to this line",
          "items": {
            "$ref": "#/$defs/LineDiscount"
          },
          "title": "Discounts",
          "type": "array"
        },
        "i": {
          "calculated": true,
          "description": "Line number inside the parent (calculated)",
          "title": "Index",
          "type": "integer"
        },
        "item": {
          "$ref": "https://gobl.org/draft-0/org/item",
          "description": "Details about what is being sold",
          "title": "Item"
        },
        "notes": {
          "description": "Set of specific notes for this line that may be required for\nclarification.",
          "items": {
            "$ref": "https://gobl.org/draft-0/cbc/note"
          },
          "title": "Notes",
          "type": "array"
        },
        "quantity": {
          "$ref": "https://gobl.org/draft-0/num/amount",
          "description": "Number of items",
          "title": "Quantity"
        },
        "sum": {
          "$ref": "https://gobl.org/draft-0/num/amount",
          "calculated": true,
          "description": "Result of quantity multiplied by the item's price (calculated)",
          "title": "Sum"
        },
        "taxes": {
          "$ref": "https://gobl.org/draft-0/tax/set",
          "description": "Map of taxes to be applied and used in the invoice totals",
          "title": "Taxes"
        },
        "total": {
          "$ref": "https://gobl.org/draft-0/num/amount",
          "calculated": true,
          "description": "Total line amount after applying discounts to the sum (calculated).",
          "title": "Total"
        },
        "uuid": {
          "description": "Universally Unique Identifier.",
          "format": "uuid",
          "title": "UUID",
          "type": "string"
        }
      },
      "required": [
        "i",
        "quantity",
        "item",
        "sum",
        "total"
      ],
      "type": "object"
    },
    "LineCharge": {
      "description": "LineCharge represents an amount added to the line, and will be applied before taxes.",
      "properties": {
        "amount": {
          "$ref": "https://gobl.org/draft-0/num/amount",
          "calculated": true,
          "description": "Fixed or resulting charge amount to apply (calculated if percent present).",
          "title": "Amount"
        },
        "code": {
          "description": "Reference code.",
          "title": "Code",
          "type": "string"
        },
        "percent": {
          "$ref": "https://gobl.org/draft-0/num/percentage",
          "description": "Percentage if fixed amount not applied",
          "title": "Percent"
        },
        "reason": {
          "description": "Text description as to why the charge was applied",
          "title": "Reason",
          "type": "string"
        }
      },
      "required": [
        "amount"
      ],
      "type": "object"
    },
    "LineDiscount": {
      "description": "LineDiscount represents an amount deducted from the line, and will be applied before taxes.",
      "properties": {
        "amount": {
          "$ref": "https://gobl.org/draft-0/num/amount",
          "calculated": true,
          "description": "Fixed discount amount to apply (calculated if percent present).",
          "title": "Value"
        },
        "code": {
          "description": "Reason code.",
          "title": "Code",
          "type": "string"
        },
        "percent": {
          "$ref": "https://gobl.org/draft-0/num/percentage",
          "description": "Percentage if fixed amount not applied",
          "title": "Percent"
        },
        "reason": {
          "description": "Text description as to why the discount was applied",
          "title": "Reason",
          "type": "string"
        }
      },
      "required": [
        "amount"
      ],
      "type": "object"
    },
    "Ordering": {
      "description": "Ordering provides additional information about the ordering process including references to other documents and alternative parties involved in the order-to-delivery process.",
      "properties": {
        "buyer": {
          "$ref": "https://gobl.org/draft-0/org/party",
          "description": "Party who is responsible for making the purchase, but is not responsible\nfor handling taxes.",
          "title": "Buyer"
        },
        "code": {
          "description": "Identifier assigned by the customer or buyer for internal routing purposes.",
          "title": "Code",
          "type": "string"
        },
        "contract": {
          "$ref": "#/$defs/DocumentReference",
          "description": "The identification of a contract.",
          "title": "Contract"
        },
        "despatch": {
          "$ref": "#/$defs/DocumentReference",
          "description": "Despatch advice.",
          "title": "Despatch Advice"
        },
        "identities": {
          "description": "Any additional Codes, IDs, SKUs, or other regional or custom\nidentifiers that may be used to identify the order.",
          "items": {
            "$ref": "https://gobl.org/draft-0/org/identity"
          },
          "title": "Identities",
          "type": "array"
        },
        "period": {
          "$ref": "https://gobl.org/draft-0/cal/period",
          "description": "Period of time that the invoice document refers to often used in addition to the details\nprovided in the individual line items.",
          "title": "Period"
        },
        "project": {
          "$ref": "#/$defs/DocumentReference",
          "description": "Project this invoice refers to.",
          "title": "Project"
        },
        "purchase": {
          "$ref": "#/$defs/DocumentReference",
          "description": "Purchase order issued by the customer or buyer.",
          "title": "Purchase Order"
        },
        "receiving": {
          "$ref": "#/$defs/DocumentReference",
          "description": "Receiving Advice.",
          "title": "Receiving Advice"
        },
        "sale": {
          "$ref": "#/$defs/DocumentReference",
          "description": "Sales order issued by the supplier or seller.",
          "title": "Sales Order"
        },
        "seller": {
          "$ref": "https://gobl.org/draft-0/org/party",
          "description": "Party who is selling the goods but is not responsible for taxes like the\nsupplier.",
          "title": "Seller"
        },
        "tender": {
          "$ref": "#/$defs/DocumentReference",
          "description": "Tender advice, the identification of the call for tender or lot the invoice relates to.",
          "title": "Tender Advice"
        }
      },
      "type": "object"
    },
    "Outlay": {
      "description": "Outlay represents a reimbursable expense that was paid for by the supplier and invoiced separately by the third party directly to the customer.",
      "properties": {
        "amount": {
          "$ref": "https://gobl.org/draft-0/num/amount",
          "description": "Amount paid by the supplier.",
          "title": "Amount"
        },
        "code": {
          "description": "Invoice number or other reference detail used to identify the outlay.",
          "title": "Code",
          "type": "string"
        },
        "date": {
          "$ref": "https://gobl.org/draft-0/cal/date",
          "description": "When was the outlay made.",
          "title": "Date"
        },
        "description": {
          "description": "Details on what the outlay was.",
          "title": "Description",
          "type": "string"
        },
        "i": {
          "calculated": true,
          "description": "Outlay number index inside the invoice for ordering (calculated).",
          "title": "Index",
          "type": "integer"
        },
        "series": {
          "description": "Series of the outlay invoice.",
          "title": "Series",
          "type": "string"
        },
        "supplier": {
          "$ref": "https://gobl.org/draft-0/org/party",
          "description": "Who was the supplier of the outlay",
          "title": "Supplier"
        },
        "uuid": {
          "description": "Universally Unique Identifier.",
          "format": "uuid",
          "title": "UUID",
          "type": "string"
        }
      },
      "required": [
        "i",
        "description",
        "amount"
      ],
      "type": "object"
    },
    "Payment": {
      "description": "Payment contains details as to how the invoice should be paid.",
      "properties": {
        "advances": {
          "description": "Any amounts that have been paid in advance and should be deducted from the amount due.",
          "items": {
            "$ref": "https://gobl.org/draft-0/pay/advance"
          },
          "title": "Advances",
          "type": "array"
        },
        "instructions": {
          "$ref": "https://gobl.org/draft-0/pay/instructions",
          "description": "Details on how payment should be made.",
          "title": "Instructions"
        },
        "payee": {
          "$ref": "https://gobl.org/draft-0/org/party",
          "description": "The party responsible for receiving payment of the invoice, if not the supplier.",
          "title": "Payee"
        },
        "terms": {
          "$ref": "https://gobl.org/draft-0/pay/terms",
          "description": "Payment terms or conditions.",
          "title": "Terms"
        }
      },
      "type": "object"
    },
    "Preceding": {
      "description": "Preceding allows for information to be provided about a previous invoice that this one will replace, subtract from, or add to.",
      "properties": {
        "code": {
          "description": "Code of the previous document.",
          "pattern": "^([A-Za-z0-9][A-Za-z0-9 /\\._-]?)*[A-Za-z0-9]$",
          "title": "Code",
          "type": "string"
        },
        "ext": {
          "$ref": "https://gobl.org/draft-0/tax/extensions",
          "description": "Extensions for region specific requirements.",
          "title": "Ext"
        },
        "issue_date": {
          "$ref": "https://gobl.org/draft-0/cal/date",
          "description": "The issue date of the previous document.",
          "title": "Issue Date"
        },
        "meta": {
          "$ref": "https://gobl.org/draft-0/cbc/meta",
          "description": "Additional semi-structured data that may be useful in specific regions",
          "title": "Meta"
        },
        "period": {
          "$ref": "https://gobl.org/draft-0/cal/period",
          "description": "Tax period in which the previous invoice had an effect required by some tax regimes and formats.",
          "title": "Period"
        },
        "reason": {
          "description": "Human readable description on why the preceding invoice is being replaced.",
          "title": "Reason",
          "type": "string"
        },
        "series": {
          "description": "Series identification code",
          "pattern": "^([A-Za-z0-9][A-Za-z0-9 /\\._-]?)*[A-Za-z0-9]$",
          "title": "Series",
          "type": "string"
        },
        "stamps": {
          "description": "Seals of approval from other organisations that may need to be listed.",
          "items": {
            "$ref": "https://gobl.org/draft-0/head/stamp"
          },
          "title": "Stamps",
          "type": "array"
        },
        "type": {
          "$ref": "https://gobl.org/draft-0/cbc/key",
          "description": "Type of the preceding document",
          "oneOf": [
            {
              "const": "standard",
              "description": "A regular commercial invoice document between a supplier and customer.",
              "title": "Standard"
            },
            {
              "const": "proforma",
              "description": "For a clients validation before sending a final invoice.",
              "title": "Proforma"
            },
            {
              "const": "corrective",
              "description": "Corrected invoice that completely *replaces* the preceding document.",
              "title": "Corrective"
            },
            {
              "const": "credit-note",
              "description": "Reflects a refund either partial or complete of the preceding document. A \ncredit note effectively *extends* the previous document.",
              "title": "Credit Note"
            },
            {
              "const": "debit-note",
              "description": "An additional set of charges to be added to the preceding document.",
              "title": "Debit Note"
            }
          ],
          "title": "Type"
        },
        "uuid": {
          "description": "Preceding document's UUID.",
          "format": "uuid",
          "title": "UUID",
          "type": "string"
        }
      },
      "required": [
        "code"
      ],
      "type": "object"
    },
    "Tax": {
      "description": "Tax defines a summary of the taxes which may be applied to an invoice.",
      "properties": {
        "meta": {
          "$ref": "https://gobl.org/draft-0/cbc/meta",
          "description": "Any additional data that may be required for processing, but should never\nbe relied upon by recipients.",
          "title": "Meta"
        },
        "prices_include": {
          "$ref": "https://gobl.org/draft-0/cbc/code",
          "description": "Category of the tax already included in the line item prices, especially\nuseful for B2C retailers with customers who prefer final prices inclusive of\ntax.",
          "title": "Prices Include"
        },
        "tags": {
          "description": "Special tax tags that apply to this invoice according to local requirements.",
          "items": {
            "$ref": "https://gobl.org/draft-0/cbc/key"
          },
          "title": "Tags",
          "type": "array"
        }
      },
      "type": "object"
    },
    "Totals": {
      "description": "Totals contains the summaries of all calculations for the invoice.",
      "properties": {
        "advance": {
          "$ref": "https://gobl.org/draft-0/num/amount",
          "description": "Total amount already paid in advance.",
          "title": "Advance"
        },
        "charge": {
          "$ref": "https://gobl.org/draft-0/num/amount",
          "description": "Sum of all document level charges",
          "title": "Charge"
        },
        "discount": {
          "$ref": "https://gobl.org/draft-0/num/amount",
          "description": "Sum of all document level discounts",
          "title": "Discount"
        },
        "due": {
          "$ref": "https://gobl.org/draft-0/num/amount",
          "description": "How much actually needs to be paid now.",
          "title": "Due"
        },
        "outlays": {
          "$ref": "https://gobl.org/draft-0/num/amount",
          "description": "Total paid in outlays that need to be reimbursed",
          "title": "Outlay Totals"
        },
        "payable": {
          "$ref": "https://gobl.org/draft-0/num/amount",
          "description": "Total amount to be paid after applying taxes and outlays.",
          "title": "Payable"
        },
        "rounding": {
          "$ref": "https://gobl.org/draft-0/num/amount",
          "description": "Rounding amount to apply to the invoice in case the total and payable\namounts don't quite match.",
          "title": "Rounding"
        },
        "sum": {
          "$ref": "https://gobl.org/draft-0/num/amount",
          "description": "Sum of all line item sums",
          "title": "Sum"
        },
        "tax": {
          "$ref": "https://gobl.org/draft-0/num/amount",
          "description": "Total amount of tax to apply to the invoice.",
          "title": "Tax"
        },
        "tax_included": {
          "$ref": "https://gobl.org/draft-0/num/amount",
          "description": "If prices include tax, this is the total tax included in the price.",
          "title": "Tax Included"
        },
        "taxes": {
          "$ref": "https://gobl.org/draft-0/tax/total",
          "description": "Summary of all the taxes included in the invoice.",
          "title": "Tax Totals"
        },
        "total": {
          "$ref": "https://gobl.org/draft-0/num/amount",
          "description": "Sum of all line sums minus the discounts, plus the charges, without tax.",
          "title": "Total"
        },
        "total_with_tax": {
          "$ref": "https://gobl.org/draft-0/num/amount",
          "description": "Grand total after all taxes have been applied.",
          "title": "Total with Tax"
        }
      },
      "required": [
        "sum",
        "total",
        "total_with_tax",
        "payable"
      ],
      "type": "object"
    }
  },
  "$id": "https://gobl.org/draft-0/bill/invoice",
  "$ref": "#/$defs/Invoice",
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}