On 7 December 2020, new and enhanced APIs of
e-Invoice and
e-Way Bill systems are expected to be released (production). These APIs are already available on the sandbox for testing. In this article, we will elaborate on the implications of this modification.
How Will The Linking Of E-Way Bill APIs and IRN APIs Affect The Taxpayers?
Taxpayers will not be able to generate e-Way bills directly henceforth. The Web/Offline/API systems will be blocked for the taxpayers who are generating #IRN (e-Invoice). That means EWBs will have to be generated through the IRN APIs.
Note:
- These enhanced APIs will not affect the ongoing generation of IRN and other activities. However, the e-Way Bill schema will be mapped with the e-Invoice schema.
- For invoices that do not need an IRN, Taxpayers can generate the e-Way Bills directly (ex: Import/Job Work/Exhibition/Own Use etc.).
Changes In E-Way Bill
With the merger of the APIs:
- E-Way Bill (EWB) print will have the IRN, Acknowledgement number and date.
- Detailed EWB print will also have the IRN, Acknowledgement number and date. However, it will not have the Item details. Officers will be intimated to refer to the IRN copy for the item details.
Changes In ‘Generate IRN’ API
- Invoices (IRN requests) with Document Date from 1 October 2020 only will be accepted and processed for IRN generation. IRN requests belonging to previous dates will be rejected.
- The Item serial number (i.e. attribute ‘SlNo’) can be numeric-only.
- ‘Reverse Charges’ can be set as ‘Y’ in the case of B2B and SEZ invoices.
- In case the PIN code does not exist in the master database of the e-Invoicing system, but if the first 3 digits of the PIN code match with the respective State code (as per the PIN code-to-State mapping pattern defined by the postal department), then the IRN will be generated.
- In the case of Reverse charge and Export transactions (EXPWP), the total value of the item should match either with the tax values or the values without tax. That means the total value of an item can include or exclude the tax values as per the business requirements.
- The distance of transportation is validated against the auto-calculated PIN-PIN distance stored in the system. The allowed distance for transportation should be between +/- 10 % of the auto-calculated PIN-PIN distance. If the auto-calculated distance is less than 100 KMs, then the allowed distance for transportation should be between 1 and +10 % of the auto-calculated PIN-PIN distance.
Note:
- Recipient’s GSTIN should be registered and active on the date of preparation of the document by the supplier.
- IRN details can be fetched using the 'Get IRN' API within 3 days from the date of IRN generation.
Improvements In ‘Generate EWB By IRN’ API
- In case the PIN code does not exist in the master database of the e-Invoicing system, but if the first 3 digits of the PIN code match with the respective State code (as per the PIN code-to-State mapping pattern defined by the postal department), then the IRN will be generated.
- The distance of transportation is validated against the auto-calculated PIN-PIN distance stored in the system. The allowed distance for transportation should be between +/- 10 % of the auto-calculated PIN-PIN distance. If the auto-calculated distance is less than 100 KMs, then the allowed distance for transportation should be between 1 and +10 % of the auto-calculated PIN-PIN distance.
- If the distance of transportation is passed as 0 (zero), then the system will consider it as a request made by the taxpayer, to consider the auto-calculated PIN-PIN distance for the generation of e-Way Bill and generate the EWB along with the IRN. The actual distance is passed in "Info. Message" column for reference.
- If the dispatching address and/or shipping address have not been passed during the generation of the IRN, then the respective addresses can be passed here.
Mapping Of Notified Schema With API (IRN) Schema
Sr.No. |
(Published in GSTN Portal) |
(List Name.Object Name.Attribute Name) |
1 |
Basic Details |
1.0 |
Version |
Version |
1.1 |
IRN |
Irn |
1.2 |
Supply_Type_Code |
TranDtls.SupTyp |
1.3 |
Document_Type_Code |
DocDtls.Typ |
1.4 |
Document_Num |
DocDtls.No |
1.5 |
Document_Date |
DocDtls.Dt |
1.6 |
Additional_Currency_Code |
ExpDtls.ForCur |
1.7 |
Reverse_Charge |
TranDtls.RegRev |
1.8 |
IGST_on_IntraState_Supply |
TranDtls.IgstOnIntra |
2 |
Delivery_or_Invoice_Period |
2.1 |
Document_Period_Start_Date |
RefDtls.DocPerdDtls.InvStDt |
2.2 |
Document_Period_End_ Date |
RefDtls.DocPerdDtls.InvEndDt |
3 |
Preceding Document / Contract Reference |
3.1 |
Preceding Document Reference |
3.1.1 |
Preceding_Document_ Number |
RefDtls.PrecDoc.InvNo |
3.1.2 |
Preceding_Document_ Date |
RefDtls.PrecDoc.InvDt |
3.1.3 |
Other_ Reference |
RefDtls.PrecDoc.OthRefNo |
3.2 |
Receipt / Contract References |
3.2.1 |
Receipt_Advice_Reference |
RefDtls.Contract.RecAdvRefr |
3.2.2 |
Receipt_Advice _Date |
RefDtls.Contract.RecAdvDt |
3.2.3 |
Tender_or_Lot_Reference |
RefDtls.Contract.TendRefr |
3.2.4 |
Contract_Reference |
RefDtls.Contract.TendRefr |
3.2.5 |
External_Reference |
RefDtls.Contract.ExtRefr |
3.2.6 |
Project_Reference |
RefDtls.Contract.ProjRefr |
3.2.7 |
PO_Ref_Num |
RefDtls.Contract.PORefr |
3.2.8 |
PO_Ref_Date |
RefDtls.Contract.PORefDt |
4 |
Supplier Information |
4.1 |
Supplier_Legal_Name |
SellerDtls.LglNm |
4.2 |
Supplier_Trade_ Name |
SellerDtls.TrdNm |
4.3 |
Supplier_GSTIN |
SellerDtls.Gstin |
4.4 |
Supplier_Address1 |
SellerDtls.Addr1 |
4.5 |
Supplier_Address2 |
SellerDtls.Addr2 |
4.5 |
Supplier_Place |
SellerDtls.Loc |
4.7 |
Supplier_State_Code |
SellerDtls.Stcd |
4.8 |
Supplier_Pincode |
SellerDtls.Pin |
4.9 |
Supplier_Phone |
SellerDtls.Ph |
4.10 |
Supplier_Email |
SellerDtls.Em |
5 |
Recipient Information |
5.0 |
Recipient_Legal_Name |
BuyerDtls.LglNm |
5.2 |
Recipient_Trade_Name |
BuyerDtls.TrdNm |
5.3 |
Recipient_GSTIN |
BuyerDtls.Gstin |
5.4 |
Place_Of_Supply_State_Code |
BuyerDtls.POS |
5.5 |
Recipient_Address1 |
BuyerDtls.Addr1 |
5.6 |
Recipient_Address2 |
BuyerDtls.Addr2 |
5.7 |
Recipient_Place |
BuyerDtls.Loc |
5.8 |
Recipient_State_Code |
BuyerDtls.Stcd |
5.9 |
Recipient_Pincode |
BuyerDtls.Pin |
5.10 |
Country_Code_of_Export |
ExpDtls.CntCode |
5.11 |
Recipient_Phone |
BuyerDtls.Ph |
5.12 |
Recipient_email_ID |
BuyerDtls.Em |
6 |
Payee Information |
6.1 |
Payee_Name |
PayDtls.Nam |
6.2 |
Payee_Bank_Account_Number |
PayDtls.AccDet |
6.3 |
Mode_of_Payment |
PayDtls.Mode |
6.4 |
Bank_Branch_Code |
PayDtls.FinInBr |
6.5 |
Payment_Terms |
PayDtls.PayTerm |
6.6 |
Payment_Instruction |
PayDtls.PayInstr |
6.7 |
Credit_Transfer_Terms |
PayDtls.CrTrn |
6.8 |
Direct_Debit_Terms |
PayDtls.DirDr |
6.9 |
Credit_Days |
PayDtls.CrDay |
7 |
Delivery_Information |
7.1 |
Ship_To_Details |
Refer A.1.0 |
7.2 |
Dispatch_From_Details |
Refer A.1.1 |
8 |
Invoice Item Details |
Refer A.1.2 |
8.1 |
Item_List |
ItemList |
9 |
Document Total |
9.1 |
Document_Total_Details |
Refer A.1.3 |
10 |
Extra Information |
10.1 |
Tax_Scheme |
TranDtls.TaxSch |
10.1 |
Remarks |
RefDtls.InvRm |
10.3 |
Port_Code |
ExpDtls.Port |
10.4 |
Shipping_Bill_Number |
ExpDtls.ShipBNo |
10.5 |
Shipping_Bill_Date |
ExpDtls.ShipBDt |
10.6 |
Export_Duty_Amount |
ExpDtls.ExpDuty |
10.7 |
Supplier_Can_Opt_Refund |
ExpDtls.RefClm |
10.8 |
ECOM_GSTIN |
TranDtls.EcmGstin |
11 |
Additional_Supporting_Documents |
11.1 |
Additional_Supporting_Documents_URL |
AddlDocDtls.Url |
11.2 |
Additional_Supporting_Documents_base64 |
AddlDocDtls.Docs |
11.3 |
Additional_Information |
AddlDocDtls.Info |
12 |
E-way Bill Details |
12.1 |
Transporter_ID |
EwbDtls.TransId |
12.2 |
Trans_Mode |
EwbDtls.TransMode |
12.3 |
Trans_Distance |
EwbDtls.Distance |
12.4 |
Transporter_Name |
EwbDtls.TransName |
12.5 |
Trans_Doc_No. |
EwbDtls.TrnDocNo |
12.6 |
Trans_Doc_Date |
EwbDtls.TrnDocDt |
12.7 |
Vehicle_No |
EwbDtls.VehNo |
12.8 |
Vehicle_Type |
EwbDtls.VehType |
A.1.0 |
Details |
A.1.0.1 |
ShipTo_Legal_Name |
ShipDtls.LglNm |
A.1.0.2 |
ShipTo_Trade_Name |
ShipDtls.TrdNm |
A.1.0.3 |
ShipTo_GSTIN |
ShipDtls.Gstin |
A.1.0.4 |
ShipTo_Address1 |
ShipDtls.Addr1 |
A.1.0.5 |
ShipTo_Address2 |
ShipDtls.Addr2 |
A.1.0.6 |
ShipTo_Place |
ShipDtls.Loc |
A.1.0.7 |
ShipTo_Pincode |
ShipDtls.Pin |
A.1.0.8 |
Ship_To_State_Code |
ShipDtls.Stcd |
A.1.1 |
Dispatch From Details |
A.1.1.1 |
DispatchFrom_Name |
DispDtls.Nm |
A.1.1.2 |
DispatchFrom_Address1 |
DispDtls.Addr1 |
A.1.1.3 |
DispatchFrom_Address2 |
DispDtls.Addr2 |
A.1.1.4 |
DispatchFrom_Place |
DispDtls.Loc |
A.1.1.5 |
DispatchFrom_State_Code |
DispDtls.Stcd |
A.1.1.6 |
DispatchFrom_Pincode |
DispDtls.Pin |
A.1.2 |
Item Details |
A.1.2.1 |
Sl_No. |
Item.SlNo |
A.1.2.2 |
Item_Description |
Item.PrdDesc |
A.1.2.3 |
Is_Service |
Item.IsServc |
A.1.2.4 |
HSN_Code |
Item.HsnCd |
A.1.2.5 |
Batch Details |
Refer A.1.4 |
A.1.2.6 |
Barcode |
Item.BarCd |
A.1.2.7 |
Quantity |
Item.Qty |
A.1.2.8 |
Free_Qty |
Item.FreeQty |
A.1.2.9 |
Unit_of_Measurement |
Item.Unit |
A.1.2.10 |
Item_Price |
Item.UnitPrice |
A.1.2.11 |
Gross_Amount |
Item.TotAmt |
A.1.2.12 |
Item_Discount_Amount |
Item.Discount |
A.1.2.13 |
Pre_Tax_Value |
Item.PreTaxVal |
A.1.2.14 |
Item_Taxable_Value |
Item.AssAmt |
A.1.2.15 |
GST_Rate |
Item.GstRt |
A.1.2.16 |
IGST_Amt |
Item.IgstAmt |
A.1.2.17 |
CGST_Amt |
Item.CgstAmt |
A.1.2.18 |
SGST_UTGST_Amt |
Item.SgstAmt |
A.1.2.19 |
Comp_Cess_Rate_Ad_Valorem |
Item.CesRt |
A.1.2.20 |
Comp_Cess_Amt_ Ad_Valorem |
Item.CessAmt |
A.1.2.21 |
Comp_Cess_Amt_Non_Ad_Valorem |
Item.CesNonAdvlAmt |
A.1.2.22 |
State_Cess_Rate_Ad_Valorem |
Item.StateCesRt |
A.1.2.23 |
State_Cess_Amt_Ad_Valorem |
Item.StateCesAmt |
A.1.2.24 |
State_Cess_Amt_Non_Ad_Valorem |
Item.StateCesNonAdvlAmt |
A.1.2.25 |
Other_Charges_Item_Level |
Item.OthChrg |
A.1.2.26 |
Purchase_Order_Line_Reference |
Item.OrdLineRef |
A.1.2.27 |
Item_Total_Amt |
Item.TotItemVal |
A.1.2.28 |
Origin_Country_Code |
Item.OrgCnt |
A.1.2.29 |
Unique_Serial_Number |
Item.PrdSlNo |
A.1.2.30 |
Product_Attribute_Details |
Refer A.1.5 |
A.1.3 |
Document Total Details |
A.1.3.1 |
Taxable_Value_Total |
ValDtls.AssVal |
A.1.3.2 |
IGST_Amt_Total |
ValDtls.IgstVal |
A.1.3.3 |
CGST_Amt_Total |
ValDtls.CgstVal |
A.1.3.4 |
SGST_UTGST_Amt_Total |
ValDtls.SgstVal |
A.1.3.5 |
Comp_CESS_Amt_Total |
ValDtls.CesVal |
A.1.3.6 |
State_Cess_Amt_Total |
ValDtls.StCesVal |
A.1.3.7 |
Discount_Amt_Invoice_Level |
ValDtls.Discount |
A.1.3.8 |
Other_Charges_Invoice_Level |
ValDtls.OthChrg |
A.1.3.9 |
Round_off_amount |
ValDtls.RndOffAmt |
A.1.3.10 |
Total_Invoice_Value_INR |
ValDtls.TotInvVal |
A.1.3.11 |
Total_Invoice_Value_FCNR |
ValDtls.TotInvValFc |
A.1.3.12 |
Paid_Amount |
PayDtls.PaidAmt |
A.1.3.13 |
Amount_due |
PayDtls.PaymtDue |
A.1.4 |
colBatch Details |
A.1.4.1 |
Batch_Number |
Item.BchDtls.Nm |
A.1.4.2 |
Batch_Expiry_Date |
Item.BchDtls.ExpDt |
A.1.4.3 |
Warranty_Date |
Item.BchDtls.WrDt |
A.1.5 |
Attribute Details Of Item |
A.1.5.1 |
Attribute_Name |
Item.Attribute.Nm |
A.1.5.2 |
Attribute_Value |
Item.Attribute.Val |
How useful was this post?
Click on a star to rate it!
Average rating 4.48 / 5. Vote count: 200