Invoice

Changes to generic fields

  • recipient.address.line1 is required.
  • recipient.address.city is required.
  • recipient.address.country is required.
  • recipient.address.postalCode is required.
  • organisation.address.state is required.

Jordan-specific fields

type Invoice {
  // ...everything from Generic invoice
  lines: InvoiceLine[];
  // ...everything from recipient
  recipient: {
    taxIdType: JordanTaxIDTypes;
    isPerson: boolean;
    contact: {
      email?: string;
      phone?: string;
    },
    contract: {
      authority: string;
      reference: string;
      type: string;
      customerCode: string;
      companyRegNumber: string;
    }
  },
  customInfo: {
    jor: {
      invoiceSubType: 'LocalGeneralSalesInvoice';
    }
  }
}

type InvoiceLine {
  description: string;
  unit: Unit;
  itemCode: string;
  quantity?: number;
  vat: {
    type: 'fixed' | 'percent';
    code: TaxCode;
    // If type='percent, amount can be one of:
    amount: 0 | 4 | 8 | 16;
    // ...other line item vat fields
    exemptReason?: string;
    exemptReasonCode?: JordanExemptionReasonCodes;
  };
  price: {
    amount: number;
  };
  additionalTaxes: [{
    code: string;
    type: string;
    percent: string;
    amount: string;
  }];
}
NameTypeRequiredDescription
invoiceRefsstringYesAn array of existing invoices
lines[].descriptionstringYesDescription of the goods or service
lines[].unitstringYesA value from an enumerated list as outlined on Units of Measure
lines[].itemCodestringYesProduct unique identifier (e.g., barcode)
lines[].quantitynumberYesQuantity of the good or service
lines[].vat.typestringYesA value from an enumerated list of types:
"fixed"
"percent"
lines[].vat.codestringYesA value from an enumerated list as outlined on VAT code classification
lines[].vat.amountnumberYesLine item Tax amount when lines[].vat.type = 'percent' Can be one of 0, 4, 8 or 16
lines[].additionalTaxes.codestringConditionalRequired when adding additional taxes. A value from an enumerated list as outlined on VAT code classification
lines[].additionalTaxes.typestringConditionalRequired when adding additional taxes. A value from an enumerated list of types:
"fixed"
"percent"
lines[].additionalTaxes.amountstringConditionalRequired when adding additional taxes and lines[].additionalTaxes.type = 'fixed. Additional tax amount
lines[].additionalTaxes.percentstringConditionalRequired when adding additional taxes and lines[].additionalTaxes.type = 'percentage. Additional tax amount
lines[].vat.exemptReasonstringConditionalIf the line VAT amount is 0, an exemption reason is required.
lines[].vat.exemptReasonCodestringConditionalIf the line VAT amount is 0, a value is required. Here are the possible values:
JO-Zero-Rated:Zero rated - The good or service is exempted
Out-Of-Tax: Out of tax - The good or service is a zero rating tax
lines[].price.amountnumberYesUnit price of the good or service
recipient.contact.emailstringNoRecipient email address
recipient.contact.phonestringNoRecipient phone number
recipient.contract.authoritystringNoRecipient contract authority
recipient.contract.referencestringNoRecipient contract reference
recipient.contract.typestringNoRecipient contract type
recipient.contract.customerCodestringNoRecipient contract customer code
recipient.contract.companyRegNumberstringNoRecipient contract company registration number
recipient.taxIdTypestringYesA value from an enumerated list as outlined on Jordan Tax ID types
recipient.isPersonbooleanYestrue: recipient.taxIdType = 'NAT'
false: recipient.taxIdType not 'NAT'
customInfo.jor.invoiceSubTypestringYes Here are the possible values:
LocalGeneralSalesInvoice: Local – General Sales Tax Invoice - currently only supported value
ExportIncomeBill: Export – Income Bill
ExportGeneralSalesInvoice: Export – General Sales Tax Invoice
AreaDevGeneralSalesInvoice: Development Area – General Sales Tax Invoice
LocalSpecialSalesInvoice: Local – Special Sales Tax Invoice
ExportSpecialSalesInvoice: Export – Special Sales Tax Invoice
AreaDevSpecialSalesInvoice: Development Area – Special Sales Tax Invoice