India
India Invoice
Changes to generic fields
recipient.address.addressLine1
is required.recipient.address.addressLine2
is required.recipient.address.city
is required.recipient.address.state
is required.recipient.address.postalCode
is required.
India-specific fields
type Invoice {
// ...everything from invoice
recipient: RecipientIND;
lines: InvoiceLineIND[];
discount?: {
type: DiscountTypeIND;
value: string;
};
restrictions?: InvoiceRestrictionsIND;
purchaseOrder?: {
number: string;
issued: string;
linesIncluded?: number;
identityCode?: string;
};
customInfo: {
ind: {
supplyType: SupplyType;
recipientRepresentativeGSTIN: string;
recipientRepresentativeName: string;
recipientStateCode: string;
docNumber?: string;
};
}
type RecipientIND {
// ...everything from Recipient
code?: string;
identityNumber?: string;
email?: string;
mobile?: string;
address: AddressIND;
representative?: TaxRepresentativeIND;
}
type AddressIND {
// ...everything from Address
postalCode: string;
}
type TaxRepresentativeIND {
taxId?: string;
phone?: string;
email?: string;
}
type InvoiceLineIND {
// ...everting from InvoiceLine
serialNumber?: string;
service: string;
hsnCode: string;
unit: string;
}
type DiscountTypeIND =
// Standard Manufacturer
'SM' |
// Manufacturer's Goods
'MG';
type InvoiceRestrictionsIND {
article73: boolean;
}
type SupplyType =
// Business to Business
'B2B' |
// Business to Consumer
'B2C' |
// Export with Payment of Tax
'EXPWP' |
// Export without Payment of Tax
'EXPWOP' |
// Supply to SEZ with Payment of Tax
'SEZWP' |
// Supply to SEZ without Payment of Tax
'SEZWOP' |
// Deemed Export
'DEXP';
Name | Type | Required | Description |
---|---|---|---|
ref | string | Yes | Sequential number of document, max 16 characters |
recipient.code | string | No | Destination code for delivering - 7 characters (not necessary when ID number of recipient is included) |
recipient.identityNumber | string | No | ID number for delivering |
recipient.email | string | No | The customer's email address |
recipient.mobile | string | No | The customer's mobile number |
recipient.address.line1 | string | Yes | Address line 1 (Street address/PO Box/Company name). |
recipient.address.line2 | string | Yes | Address line 2 (Apartment/Suite/Unit/Building). |
recipient.address.city | string | Yes | City/District/Suburb/Town/Village. |
recipient.address.state | string | Yes | State/County/Province/Region. |
recipient.address.postalCode | string | Yes | ZIP or postal code |
recipient.representative.taxId | string | No | Taxpayer ID of tax representative |
recipient.representative.phone | string | No | Company phone of tax representative |
recipient.representative.email | string | No | Company email of tax representative |
lines[].serialNumber | string | No | Serial number of the item |
lines[].service | string | Yes | Specify whether the line item is a service or not. To indicate that the line item is a service, use "Yes", "Y", "True" or "1". This field is not case-sensitive. |
lines[].hsnCode | string | Yes | To enter applicable HSN / SAC Code of Goods / Service |
lines[].unit | string | Yes | To enter applicable HSN / SAC Code of Goods / Service |
discount.type | string | No | One of 'SM' | 'MG' |
discount.value | string | No | Discount amount |
restrictions.article73 | boolean | No | Restrictions that apply to MCK invoices |
purchaseOrder.number | string | No | Number of the purchase order associated with the invoice |
purchaseOrder.issued | string | No | Date of purchase order that led to invoice |
purchaseOrder.linesIncluded | number | No | Number of lines from purchase order which are included in invoice (unless all are included) |
purchaseOrder.identityCode | string | No | Identity code of the item from the purchase order contained in the invoice |
customInfo.ind.supplyType | string | Yes | This will be the code to identify type of supply. B2B: Business to Business, B2C: Business to Consumer, SEZWP: To SEZ with Payment, SEZWOP: To SEZ without Payment, EXPWP: Export with Payment, EXPWOP: Export without Payment, DEXP: Deemed Export One of 'B2B', 'B2C', 'EXPWP', 'EXPWOP', 'SEZWP', 'SEZWOP', 'DEXP' |
customInfo.ind.recipientRepresentativeGSTIN | string | Yes | GSTIN of the Recipient, if available. URP: In case of exports or if supplies are made to unregistered persons |
customInfo.ind.recipientRepresentativeName | string | Yes | Company name of tax representative |
customInfo.ind.recipientStateCode | string | Yes | Recipient State Code. |
customInfo.ind.docNumber | string | No | Sequential number of document |
Example CSV file
Updated 3 days ago