Jordan

Credit note

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.
type CreditNote {
  // ...all generic credit note fields
  lines: InvoiceLine[];
  invoiceRefs: string[],
  // ...everything from recipient
  recipient: {
    taxIdType: JordanTaxIDTypes;
    isPerson: boolean;
    contact: {
      email?: string;
      phone?: string;
    }
  },
  customInfo: {
    jor: {
      invoiceSubType: 'LocalGeneralSalesInvoice';
      creditReason: string;
      paymentMeans: {
        code: string;
      }
    }
  }
}

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;
  }];
}

Field information

Name

Type

Required

Description

invoiceRefs

string

Yes

An array of existing invoices

lines[].description

string

Yes

Description of the goods or service

lines[].unit

string

Yes

A value from an enumerated list as outlined on Units of Measure

lines[].quantity

number

Yes

Quantity of the good or service

lines[].itemCode

string

Yes

Product unique identifier (e.g., barcode)

lines[].vat.type

string

Yes

A value from an enumerated list of types:
"fixed"
"percent"

lines[].vat.code

string

Yes

A value from an enumerated list as outlined on VAT code classification

lines[].vat.amount

number

Yes

Line item Tax amount when lines[].vat.type = 'percent' Can be one of 0, 4, 8 or 16

lines[].additionalTaxes.code

string

Conditional

Required when adding additional taxes. A value from an enumerated list as outlined on VAT code classification

lines[].additionalTaxes.type

string

Conditional

Required when adding additional taxes. A value from an enumerated list of types:
"fixed"
"percent"

lines[].additionalTaxes.amount

string

Conditional

Required when adding additional taxes and lines[].additionalTaxes.type = 'fixed. Additional tax amount

lines[].additionalTaxes.percent

string

Conditional

Required when adding additional taxes and lines[].additionalTaxes.type = 'percentage. Additional tax amount

lines[].vat.exemptReason

string

Conditional

If the line VAT amount is 0, an exemption reason is required.

lines[].vat.exemptReasonCode

string

Conditional

If 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.amount

number

Yes

Unit price of the good or service

recipient.contact.email

string

No

Recipient email address

recipient.contact.phone

string

No

Recipient phone number

recipient.taxIdType

string

Yes

A value from an enumerated list as outlined on Jordan Tax ID types

recipient.isPerson

boolean

Yes

  • true:* recipient.taxIdType = 'NAT'
  • false:* recipient.taxIdType not 'NAT'

customInfo.jor.invoiceSubType

string

Yes

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

customInfo.jor.creditReason

string

Yes

Reason for credit.

customInfo.jor.paymnetMeans.code

string

Yes

Here are the possible values:

  • 1* = Instrument not defined
  • 10* = In cash
  • 30* = Credit Transfer
  • 42* = Payment to bank account
  • 48* = Bank card
  • ZZZ* = Mutually defined