Invoice

Changes to generic fields

  • recipient.address.state is required.

Malaysia-specific fields

type Invoice {
  // ...generic invoice fields
  lines: [
    { 
      // ...other line item fields
      itemCode: string;
      vat: {
        // ...other line item vat fields
        exemptReason?: string;
      }
    }
  ];
 
  // Recipient is required for regular invoices and not allowed for self-billed invoice
recipient: {
  address: {
		state: string;
  	};
    peppolId: {
      endpointId: string;
    };
    contact?: {
      //...other fields
      phone: string;
    };
    sstRegistrationNumber?: string;
    identification: {
      type: 'ARMY' | 'BRN' | 'NRIC' | 'Passport';
      value: string;
    };
  };

  // Sender is required for self-billed invoices only
  sender: {
    peppolId: {
      endpointId: string;
    };
    contact?: {
      //...other fields
      phone: string;
    };
    sstRegistrationNumber?: string;
    identification: {
      type: 'ARMY' | 'BRN' | 'NRIC' | 'Passport';
      value: string;
    };
  };

  customInfo: {
    mys: {
      customsRef?: string;
    };
  };
  selfBilling: string;
};
NameTypeRequiredDescription
recipient.address.statestringYesState code (2 digits) as outlined on Malaysia state code list
selfBillingbooleanNoIndicate if an invoice is being self billed.

When sending self billed invoices, the sender will be required and replace the recipient.
lines[].itemCodestringYesLine item code (3 character) as outlined on Malaysia item code list
lines[].vat.codestringYesA value from an enumerated list of types:
01: Sales Tax,
02: Service Tax',
03: Tourism Tax',
04: High-Value Goods Tax',
05: Sales Tax on Low Value Goods',
06: Outside of scope',
E: Exempt'
lines[].vat.exemptReasonstringConditionalIf VAT amount is 0, an exemption reason is required
customInfo.mys.customsRefstringConditionalUnique identifier assigned on the Declaration of Goods imported
recipient.sstRegistrationstringConditionalSST registration number of the Buyers that are SST-registered. The input of special characters is not allowed, except for dash (-) and semicolon (;). A maximum of two SST registration numbers is allowed.
recipient.identification.typestringYesARMY: For Malaysian individuals MyKad / MyTentera identification number (12 characters).
BRN: For Businesses. Business registration number (20 characters).
NRIC: For MyPR and MyKAS use NRIC scheme (12 characters).
Passport: For Non-Malaysian individual. Passport number / MyPR / MyKAS identification number (12 characters).
recipient.identification.valuestringYesIdentification number based on type
recipient.peppolId.endpointIdstringYesPeppol ID of the recipient (eg. iso6523-actorid-upis::0230:uat-eezi-12345)

Example CSV file

Invoice - Malaysia.csv