Overview

This API is used for registering the invoice and getting the Invoice Registration Number (IRN). The request payload has to be as per the schema specified below.The details of the requests and responses are explained.

Sequence Diagram

The format and details of Generate IRN  API request is depicted in following table.

URL

<URL>/api/Invoice

Content-Type

application/json

Method

POST

Request Header

Attributes Description
client_id

client id to be provided by E-Invoice System

client_secret

client secret to be provided by E-Invoice System

Gstin

GSTIN of the authenticated user

user_name

User name of the authenticated user

AuthToken

Authentication token returned by the E-Invoice system

Request Payload

Attributes Description

Data

Base 64 encoded string of encrypted invoice JSON using Sek.

 

Response Payload

Attributes Description
Status Status of the generate IRN request(values 1-Success and 0- Failure)
Data If Status is ‘1’
AckNo Transaction number
AckDt Date and time on which invoice is registered(Date format is ‘yyyy-MM-dd HH:mm:ss ’).
Irn SHA256 hash of Gstin, DocDtls.No, DocDtls.Typ, financial year of DoctDtls.Dt
SignedInvoice Complete e-Invoice data digitally signed using JSON Web Token(JWT) and JSON Web Signature (JWS) with “SHA256RSA” algorithm
SignedQRCode Complete QR- Code data digitally signed using JSON Web Token(JWT) and JSON Web Signature (JWS) with “SHA256RSA” algorithm
Status ‘ACT’ for Active and ‘CNL’ for Cancelled
ErrorDetails If Status is ‘0’ (Base64encoded)
ErrorCode Unique error code
ErrorMessage Error Description
Info Any additional message to be conveyed would be passed. It will be Base64 encoded string.

Sample JSON (Request)

{
"Data": "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 yV9dWmplE80bTjkz4k/CzRC/7yN7g=="
}

JSON corresponds to the "Data" element of Generate E-Invoice Request above

{
  "TaxSch": "GST",
  "Version": "1.00",
  "Irn": "",
  "TranDtls": {
    "Catg": "B2B",
    "RegRev": "RG",
    "Typ": "REG",
    "EcmTrn": "Y",
    "EcmGstin": "37BZNPM9430M1KL"
  },
  "DocDtls": {
    "Typ": "INV",
    "No": "1",
    "Dt": "2019-05-12"
  },
  "SellerDtls": {
    "Gstin": "29AAACG0569P1Z3",
    "TrdNm": "AMBIKA CEMENTS",
    "Bno": "1",
    "Bnm": "AMBIKA CEMENTS",
    "Flno": "2",
    "Loc": "BENGALURU",
    "Dst": "BANGALURU",
    "Pin": 560090,
    "Stcd": 29,
    "Ph": 9898989898,
    "Em": "abc123@gmail.com"
  },
  "BuyerDtls": {
    "Gstin": "28AAACG0569P1Z3",
    "TrdNm": "LAKSHMI ENTERPRISES",
    "Bno": "785",
    "Bnm": "",
    "Flno": "",
    "Loc": "BANGALORE",
    "Dst": "",
    "Pin": 560054,
    "Stcd": 29,
    "Ph": 0,
    "Em": ""
  },
  "ValDtls": {
    "AssVal": 10000,
    "SgstVal": 1200,
    "CgstVal": 1200,
    "IgstVal": 0,
    "CesVal": 0,
    "StCesVal": 0,
    "CesNonAdVal": 0,
    "Disc": 0,
    "OthChrg": 0,
    "TotInvVal": 12400
  },
  "ItemList": [
    {
      "PrdNm": "WHEAT AND MESLIN",
      "PrdDesc": "WHEAT AND MESLIN",
      "HsnCd": "1001",
      "Barcde": "1212",
      "Qty": 2,
      "FreeQty": 1,
      "Unit": "BAG",
      "UnitPrice": 100,
      "TotAmt": 200,
      "Discount": 5,
      "OthChrg": 10,
      "AssAmt": 205,
      "SgstRt": 1,
      "CgstRt": 1,
      "IgstRt": 0,
      "CesRt": 1,
      "CesNonAdval": 10,
      "StateCes": 2,
      "TotItemVal": 225.25,
      "BchDtls": {
        "Nm": "aaa",
        "ExpDt": "2020-02-01", 
        "WrDt": "2020-02-20"
      }
    }
  ]
}
         

Sample JSON (Response)

{
"Status":"1",
"Data":"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",
"ErrorDetails": null,
"Info":"<alert message in base 64 encoded format>"
}

JSON corresponds to the data element of Generate IRN Response(Success) above
{
"AckNo":17100000054,
"AckDt":"2019-12-25 12:03:00",
"Irn":"d056a57cc7cfcc6c9230aa0014e439259d0dc57cfa4eea2326253011fd53ea7e",
"SignedInvoice":"eyJhbGciOiJodHRwOi8vd3d3LnczLm9yZy8yMDAxLzA0L3htbGRzaWctbW9yZSNyc2Etc2hhMjU2Iiwia2lkIjoiRTc4MDhFNkZGMDNFMTMyODUzMzBCMDQxQ jNFMEEzQUVDNDc4MTMyMCIsInR5cCI6IkpXVCIsIng1dCI6IjU0Q09iX0EtRXloVE1MQkJzLUNqcnNSNEV5QSJ9.eyJkYXRhIjoie1wiQWNrTm9cIjoxNzEwMDAwMDA1NCxcIkFja0R0XCI6XCIyMD E5LTEyLTI1IDEyOjAzOjAwXCIsXCJUYXhTY2hcIjpudWxsLFwiVmVyc2lvblwiOlwiMS4wXCIsXCJJcm5cIjpcImQwNTZhNTdjYzdjZmNjNmM5MjMwYWEwMDE0ZTQzOTI1OWQwZGM1N2NmYTRlZWEy MzI2MjUzMDExZmQ1M2VhN2VcIixcIlRyYW5EdGxzXCI6e1wiQ2F0Z1wiOlwiQjJCXCIsXCJSZWdSZXZcIjpcIlJHXCIsXCJUeXBcIjpcIlJFIFwiLFwiRWNtVHJuXCI6XCJOXCIsXCJFY21Hc3Rpbl wiOlwiXCJ9LFwiRG9jRHRsc1wiOntcIlR5cFwiOlwiSU5WXCIsXCJOb1wiOlwiZG9jL3Rlc3QxXCIsXCJEdFwiOlwiMjAxOS0xMS0yOFwiLFwiT3JnSW52Tm9cIjpcIjEyMzMyMTEyMzMyMTEyMzJc In0sXCJTZWxsZXJEdGxzXCI6e1wiR3N0aW5cIjpcIjI5QUFHUEI4Njc4TDFaMVwiLFwiVHJkTm1cIjpcIlRyYWRlIE5hbWUxXCIsXCJCbm9cIjpcIjFcIixcIkJubVwiOlwiXCIsXCJGbG5vXCI6XC JcIixcIkxvY1wiOlwiTG9jYXRpb25cIixcIkRzdFwiOlwiXCIsXCJQaW5cIjo1NjAwNDMsXCJTdGNkXCI6MjksXCJQaFwiOm51bGwsXCJFbVwiOlwiYWJjQHh5ei5jb21cIn0sXCJCdXllckR0bHNc Ijp7XCJHc3RpblwiOlwiMjlBQUdQQjg2NzhMMVoxXCIsXCJUcmRObVwiOlwiVHJhZGUgTmFtZTFcIixcIkJub1wiOlwiMVwiLFwiQm5tXCI6XCJcIixcIkZsbm9cIjpcIlwiLFwiTG9jXCI6XCJMb2 NhdGlvblwiLFwiRHN0XCI6XCJcIixcIlBpblwiOjU2MDA0MyxcIlN0Y2RcIjoyOSxcIlBoXCI6bnVsbCxcIkVtXCI6XCJhYmNAeHl6LmNvbVwifSxcIkRpc3BEdGxzXCI6e1wiR3N0aW5cIjpcIjI5 QUFHUEI4Njc4TDFaMVwiLFwiVHJkTm1cIjpcIm5hbWUgXCIsXCJCbm9cIjpcIjEyM1wiLFwiQm5tXCI6XCJcIixcIkZsbm9cIjpcIjJcIixcIkxvY1wiOlwibG9jYXRpb25cIixcIkRzdFwiOlwiXC IsXCJQaW5cIjo1NjAwNDMsXCJTdGNkXCI6MjksXCJQaFwiOm51bGwsXCJFbVwiOlwiYWJDQFhZWi5DT01cIn0sXCJTaGlwRHRsc1wiOntcIkdzdGluXCI6XCIyOUFBR1BCODY3OEwxWjFcIixcIlRy ZE5tXCI6XCJuYW1lIFwiLFwiQm5vXCI6XCIxMjNcIixcIkJubVwiOlwiXCIsXCJGbG5vXCI6XCIyXCIsXCJMb2NcIjpcImxvY2F0aW9uXCIsXCJEc3RcIjpcIlwiLFwiUGluXCI6NTYwMDQzLFwiU3 RjZFwiOjI5LFwiUGhcIjpudWxsLFwiRW1cIjpcImFiQ0BYWVouQ09NXCJ9LFwiSXRlbUxpc3RcIjpbe1wiUHJkTm1cIjpcIldoZWF0XCIsXCJQcmREZXNjXCI6XCJXaGVhdCBkZXNjXCIsXCJIc25D ZFwiOlwiMTAwMVwiLFwiQmFyY2RlXCI6bnVsbCxcIlF0eVwiOjEsXCJGcmVlUXR5XCI6bnVsbCxcIlVuaXRcIjpcIktHU1wiLFwiVW5pdFByaWNlXCI6MCxcIlRvdEFtdFwiOjAsXCJEaXNjb3VudF wiOjAsXCJPdGhDaHJnXCI6MCxcIkFzc0FtdFwiOjAsXCJDZ3N0UnRcIjozLFwiU2dzdFJ0XCI6MyxcIklnc3RSdFwiOjAsXCJDZXNSdFwiOjAsXCJDZXNOb25BZFZhbFwiOjAsXCJTdGF0ZUNlc1wi OjM2LFwiVG90SXRlbVZhbFwiOjIzNDMyfV0sXCJWYWxEdGxzXCI6e1wiQXNzVmFsXCI6MTAsXCJDZ3N0VmFsXCI6MixcIlNnc3RWYWxcIjoyLFwiSWdzdFZhbFwiOjAsXCJDZXNWYWxcIjowLFwiU3 RDZXNWYWxcIjowLFwiQ2VzTm9uQWRWYWxcIjowLFwiRGlzY1wiOjAsXCJPdGhDaHJnXCI6MCxcIlRvdEludlZhbFwiOjB9LFwiRXhwRHRsc1wiOntcIkV4cENhdFwiOlwiU0VaXCIsXCJXdGhQYXlc IjpcIk5cIixcIlNoaXBCTm9cIjpcIlwiLFwiU2hpcEJEdFwiOlwiMjAxOS0xMS0yOFwiLFwiUG9ydFwiOlwiXCIsXCJJbnZGb3JDdXJcIjoyMzQ0NSxcIkZvckN1clwiOlwiQkRUXCIsXCJDbnRDb2 RlXCI6XCJCRFwifSxcIlBheUR0bHNcIjp7XCJOYW1cIjpcIlwiLFwiTW9kZVwiOlwiQ0FTSFwiLFwiRmluSW5zQnJcIjpcIlwiLFwiUGF5VGVybVwiOlwiMTAwMVwiLFwiUGF5SW5zdHJcIjpcIlwi LFwiQ3JUcm5cIjpcIlwiLFwiRGlyRHJcIjpcIlwiLFwiQ3JEYXlcIjoyLFwiQmFsQW10XCI6MixcIlBheUR1ZUR0XCI6XCIyMDE5LTExLTI4XCIsXCJBY2N0RGV0XCI6XCIxMFwifSxcIlJlZkR0bH NcIjp7XCJJbnZSbWtcIjpcIjBcIixcIkludlN0RHRcIjpcIjIwMTktMTEtMjhcIixcIkludkVuZER0XCI6XCIyMDE5LTExLTI4XCIsXCJQcmVjSW52Tm9cIjpcIlwiLFwiUHJlY0ludkR0XCI6XCIy MDE5LTExLTI4XCIsXCJJbnZSZWZOb1wiOlwiMFwiLFwiUmVjQWR2UmVmXCI6XCJcIixcIlRlbmRSZWZcIjpcIlwiLFwiQ29udHJSZWZcIjpcIjEwXCIsXCJFeHRSZWZcIjpcIjJcIixcIlByb2pSZW ZcIjpcIlwiLFwiUE9SZWZcIjpcIlwifX0iLCJpc3MiOiJOSUMifQ.II0jejF0wOrY0CPwIb6oQsSBYilvFSNHZqQJHYOsFt7txrpAvLlCEo4CDNUhPZGWZ6IeERuoY2ScXKNIsCIMQR_9dc0E_fmsa N5XUscxBV3nqPNIkusFcmzjxu59sT8MzcaFqDWfqHunkA-klW40M7oVy6HtL5eI0zbmNoZpdl2yB1Fxfx5AF_vcDv9vWV2u6i39XQ0KdTSbkTAVStdXHix2hE0TlHtHB9Tqt7i9umNPJc_Uf5Kpn4q HiOPvFT2uxhw1N7bIU00cc-PDIqzlLk2VnLb2Zko7wSgYAMrf5G1hn5Op4lbyQe9EwxOPcvJPjJBJsoOmFTbxd1IRgewm7g",
"SignedQRCode":"eyJhbGciOiJodHRwOi8vd3d3LnczLm9yZy8yMDAxLzA0L3htbGRzaWctbW9yZSNyc2Etc2hhMjU2Iiwia2lkIjoiRTc4MDhFNkZGMDNFMTMyODUzMzBCMDQxQjN FMEEzQUVDNDc4MTMyMCIsInR5cCI6IkpXVCIsIng1dCI6IjU0Q09iX0EtRXloVE1MQkJzLUNqcnNSNEV5QSJ9.eyJkYXRhIjoie1wiU2VsbGVyR3N0aW5cIjpcIjI5QUFHUEI4Njc4TDFaMVwiLFwi QnV5ZXJHc3RpblwiOlwiMjlBQUdQQjg2NzhMMVoxXCIsXCJEb2NOb1wiOlwiZG9jL3Rlc3QxXCIsXCJEb2NUeXBcIjpcIklOVlwiLFwiRG9jRHRcIjpcIjIwMTktMTEtMjhcIixcIlRvdEludlZhbF wiOjAsXCJJdGVtQ250XCI6MSxcIk1haW5Ic25Db2RlXCI6XCIxMDAxXCIsXCJJcm5cIjpcImQwNTZhNTdjYzdjZmNjNmM5MjMwYWEwMDE0ZTQzOTI1OWQwZGM1N2NmYTRlZWEyMzI2MjUzMDExZmQ1 M2VhN2VcIn0iLCJpc3MiOiJOSUMifQ.UbnWZAI_lq9s9JK8_MovcmjpMPIJnv2-4qGkiXegggQbry_0fJxjwaR8fwCjK_-HVeMujnw8C7F3ITrxKIg5RsdDMzAvLrCNE0K3QkNHGczbvyxhJ02VRFl 1wrQoArxSW1RiyGssLSbH_4tdQ6vke0nSUajXRXvXX2yUeI01CyLsbf2FDNIq46MrDmka5RPNGp0dCx4uX2gkmsCx0Yb0CKjqFI176sTbxOQDHQtRCAfJ0I6dwwggVkfnC3p2F-x6GhEls_7GVsFg1 Z6k4A_aB89c3N6CaWfe8DOQEJTjWaPggMUa2-1hDE1ODTBcIlLcOwB-8jT971hZWgtBubUzFg",
"Status":"ACT"
}

JSON(in case of error)


"status": "0",
"Data": null,
"ErrorDetails":"<Errors JSON in base64 encoded format>",
"info": "<alert message in base 64 encoded format>"
}

On decoding (Base64), the “ErrorDetails” attribute above, the following JSON array can be obtained.

[{
"ErrorCode": "110",
"ErrorMessage": "Invalid Client-ID/Client-Secret"
}]

JSON Schema

    
         {
             "$schema": "http://json-schema.org/draft-04/schema#",
             "Title": "GST-India Invoice Document ",
             "Description": "GST Invoice format for IRN Generation in INDIA",
             "TaxSch": "GST",
             "Version": "1.00",
             "Irn": {
             "type": "string",
             "maxLength": 64,
             "minLength": 64,
             "description": "Invoice Reference No."
             },
             "TranDtls": {
             "type": "object",
             "properties": {
             "Catg": {
             "type": "string",
             "maxLength": 3,
             "enum": ["B2B", "B2G", "EXP"],
             "description": "Category of Transaction: B2B-Business to Business, B2G - Business to Government, EXP - Exports "
             },
             "RegRev": {
             "type": "string",
             "maxLength": 2,
             "enum": ["RG", "RC"],
             "default": "RG",
             "description": "RG-Regular Charge ,RC-Reverse Charge"
             },
             "Typ": {
             "type": "string",
             "enum": ["REG", "DIS", "SHP", "CMB"],
             "maxLength": 3,
             "default": "REG",
             "description": "REG-Address Same as Seller and Buyer , DIS - Dispatch Address different from Seller Address, SHP - Ship To Address is different from Buyer Address, CMB - Both Dispatch and Shipping Address is different from Seller and Buyer respectively "
             },
             "EcmTrn": {
             "type": "string",
             "maxLength": 1,
             "enum": ["Y", "N"],
             "default": "N",
             "description": " Y- Supply through E-Commerce Operator, N - Supply NOT through E-Commerce Operator"
             },
             "EcmGstin": {
             "type": "string",
             "maxLength": 15,
             "minLength": 15,
             "pattern": "([0-9]{2}[0-9|A-Z]{13})",
             "description": "GSTIN of e-Commerce operator"
             },
             "required": ["Catg", "RegRev", "Typ"]
             }
             },
             "DocDtls": {
             "type": "object",
             "properties": {
             "Typ": {
             "type": "string",
             "maxLength": 3,
             "enum": ["INV", "CRN", "DBN"],
             "description": "Document Type: INV-INVOICE, CRN-CREDIT NOTE, DBN-DEBIT NOTE"
             },
             "No": {
             "type": "string",
             "maxLength": 16,
             "minLength": 1,
             "pattern": "[0-9|A-Z|a-z|/|-]{16}",
             "description": "Document Number"
             },
             "Dt": {
             "type": "string",
             "maxLength": 10,
             "minLength": 10,
             "pattern": "[2][0][1-2][0-9]-[0-1][0-9]-[0-3][0-9]",
             "description": "Document Date"
             },
             "OrgInvNo": {
             "type": "string",
             "maxLength": 16,
             "minLength": 0,
             "pattern": "[0-9|A-Z|a-z|/|-|(|)]{16}",
             "description": "Original Invoice Number in case of Credit / Debit note"
             }
             },
             "required": ["Typ", "No", "Dt"]
             },
             "SellerDtls": {
             "type": "object",
             "properties": {
             "Gstin": {
             "type": "string",
             "maxLength": 15,
             "minLength": 15,
             "pattern": "([0-9]{2}[0-9|A-Z]{13})",
             "description": "GSTIN"
             },
             "TrdNm": {
             "type": "string",
             "minLength": 3,
             "maxLength": 100,
             "description": "Tradename"
             },
             "Bno": {
             "type": "string",
             "minLength": 0,
             "maxLength": 60,
             "description": "Building no."
             },
             "Bnm": {
             "type": "string",
             "minLength": 0,
             "maxLength": 60,
             "description": "Building name"
             },
             "Flno": {
             "type": "string",
             "minLength": 0,
             "maxLength": 60,
             "description": "Floor no."
             },
             "Loc": {
             "type": "string",
             "minLength": 3,
             "maxLength": 60,
             "description": "Location"
             },
             "Dst": {
             "type": "string",
             "minLength": 0,
             "maxLength": 60,
             "description": "District"
             },
             "Pin": {
             "type": "integer",
             "maxLength": 6,
             "minLength": 6,
             "description": "Pincode"
             },
             "Stcd": {
             "type": "integer",
             "maxLength": 2,
             "minLength": 1,
             "description": "State code"
             },
             "Ph": {
             "type": "integer",
             "maxLength": 10,
             "minLength": 10,
             "description": "Phone or Mobile No."
             },
             "Em": {
             "type": "string",
             "maxLength": 50,
             "minLength": 10,
             "description": "Email-Id"
             }
             },
             "required": ["Gstin", "TrdNm", "Loc", "Pin", "Stcd"]
             },
             "BuyerDtls": {
             "type": "object",
             "properties": {
             "Gstin": {
             "type": "string",
             "maxLength": 15,
             "minLength": 3,
             "pattern": "([0-9]{2}[0-9|A-Z]{13})|URP",
             "description": "GSTIN"
             },
             "TrdNm": {
             "type": "string",
             "minLength": 3,
             "maxLength": 100,
             "description": "Tradename"
             },
             "Bno": {
             "type": "string",
             "minLength": 0,
             "maxLength": 60,
             "description": "Building no."
             },
             "Bnm": {
             "type": "string",
             "minLength": 0,
             "maxLength": 60,
             "description": "Building name"
             },
             "Flno": {
             "type": "string",
             "minLength": 0,
             "maxLength": 60,
             "description": "Floor no."
             },
             "Loc": {
             "type": "string",
             "minLength": 3,
             "maxLength": 60,
             "description": "Location"
             },
             "Dst": {
             "type": "string",
             "minLength": 0,
             "maxLength": 60,
             "description": "District"
             },
             "Pin": {
             "type": "integer",
             "maxLength": 6,
             "minLength": 6,
             "description": "Pincode"
             },
             "Stcd": {
             "type": "integer",
             "maxLength": 2,
             "minLength": 1,
             "description": "State code"
             },
             "Ph": {
             "type": "integer",
             "maxLength": 10,
             "minLength": 10,
             "description": "Phone or Mobile No."
             },
             "Em": {
             "type": "string",
             "maxLength": 50,
             "minLength": 10,
             "description": "Email-Id"
             }
             },
             "required": ["Gstin", "TrdNm", "Loc", "Pin", "Stcd"]
             },
             "DispDtls": {
             "type": "object",
             "properties": {
             "Gstin": {
             "type": "string",
             "maxLength": 15,
             "minLength": 3,
             "pattern": "([0-9]{2}[0-9|A-Z]{13})|URP",
             "description": "GSTIN"
             },
             "TrdNm": {
             "type": "string",
             "minLength": 5,
             "maxLength": 100,
             "description": "Name of the Person or Tradename"
             },
             "Bno": {
             "type": "string",
             "maxLength": 60,
             "description": "Building no."
             },
             "Bnm": {
             "type": "string",
             "maxLength": 60,
             "description": "Building name"
             },
             "Flno": {
             "type": "string",
             "maxLength": 60,
             "description": "Floor no."
             },
             "Loc": {
             "type": "string",
             "minLength": 3,
             "maxLength": 60,
             "description": "Location"
             },
             "Dst": {
             "type": "string",
             "maxLength": 60,
             "description": "District"
             },
             "Pin": {
             "type": "integer",
             "maxLength": 6,
             "minLength": 6,
             "description": "Pincode"
             },
             "Stcd": {
             "type": "integer",
             "maxLength": 2,
             "minLength": 1,
             "description": "State code"
             },
             "Ph": {
             "type": "integer",
             "maxLength": 10,
             "minLength": 10,
             "description": "Phone or Mobile No."
             },
             "Em": {
             "type": "string",
             "maxLength": 50,
             "minLength": 10,
             "description": "Email-Id"
             }
             },
             "required": ["Gstin", "TrdNm", "Loc", "Pin", "Stcd"]
             },
             "ShipDtls": {
             "type": "object",
             "properties": {
             "Gstin": {
             "type": "string",
             "maxLength": 15,
             "minLength": 3,
             "pattern": "([0-9]{2}[0-9|A-Z]{13})|URP",
             "description": "GSTIN"
             },
             "TrdNm": {
             "type": "string",
             "minLength": 5,
             "maxLength": 100,
             "description": "Name of the person or Tradename"
             },
             "Bno": {
             "type": "string",
             "minLength": 0,
             "maxLength": 60,
             "description": "Building no."
             },
             "Bnm": {
             "type": "string",
             "minLength": 0,
             "maxLength": 60,
             "description": "Building name."
             },
             "Flno": {
             "type": "string",
             "minLength": 0,
             "maxLength": 60,
             "description": "Floor no."
             },
             "Loc": {
             "type": "string",
             "minLength": 3,
             "maxLength": 60,
             "description": "Location."
             },
             "Dst": {
             "type": "string",
             "minLength": 0,
             "maxLength": 60,
             "description": "District"
             },
             "Pin": {
             "type": "integer",
             "maxLength": 6,
             "minLength": 6,
             "description": "Pincode"
             },
             "Stcd": {
             "type": "integer",
             "maxLength": 2,
             "minLength": 1,
             "description": "State code"
             },
             "Ph": {
             "type": "integer",
             "maxLength": 10,
             "minLength": 10,
             "description": "Phone or Mobile No."
             },
             "Em": {
             "type": "string",
             "maxLength": 50,
             "minLength": 10,
             "description": "Email-Id"
             }
             },
             "required": ["Gstin", "TrdNm", "Loc", "Pin", "Stcd"]
             },
             "ItemList": {
             "type": "array",
             "Item": [{
             "type": "object",
             "properties": {
             "PrdNm": {
             "type": "string",
             "minLength": 3,
             "maxLength": 100,
             "description": "Product Name"
             },
             "PrdDesc": {
             "type": "string",
             "minLength": 0,
             "maxLength": 100,
             "description": "Product Description"
             },
             "HsnCd": {
             "type": "string",
             "minLength": 4,
             "maxLength": 8,
             "description": "HSN Code"
             },
             "Barcde": {
             "type": "string",
             "minLength": 0,
             "maxLength": 30,
             "description": "Bar Code"
             },
             "Qty": {
             "type": "number",
             "minimum": 0,
             "maximum": 999999999.99,
             "multipleOf": 1.00,
             "maxLength": 12,
             "description": "Quantity"
             },
             "FreeQty": {
             "type": "number",
             "minimum": 0,
             "maximum": 999999999.99,
             "multipleOf": 1.00,
             "maxLength": 12,
             "description": "Free Quantity"
             },
             "Unit": {
             "type": "string",
             "maxLength": 3,
             "enum": [
             "BAG",
             "BAL",
             "BDL",
             "BKL",
             "BOU",
             "BOX",
             "BTL",
             "BUN",
             "CAN",
             "CBM",
             "CCM",
             "CMS",
             "CTN",
             "DOZ",
             "DRM",
             "GGK",
             "GMS",
             "GRS",
             "GYD",
             "KGS",
             "KLR",
             "KME",
             "LTR",
             "MTR",
             "MLT",
             "MTS",
             "NOS",
             "OTH",
             "PAC",
             "PCS",
             "PRS",
             "QTL",
             "ROL",
             "SET",
             "SQF",
             "SQM",
             "SQY",
             "TBS",
             "TGM",
             "THD",
             "TON",
             "TUB",
             "UGS",
             "UNT",
             "YDS"
             ],
             "description": "Unit"
             },
             "UnitPrice": {
             "type": "number",
             "minimum": 0,
             "maximum": 99999999999999.99,
             "multipleOf": 1.00,
             "maxLength": 17,
             "description": "Unit Price"
             },
             "TotAmt": {
             "type": "number",
             "minimum": 0,
             "maximum": 99999999999999.99,
             "multipleOf": 1.00,
             "maxLength": 17,
             "description": "Total Amount (Unit Price * Quantity)"
             },
             "Discount": {
             "type": "number",
             "minimum": 0,
             "maximum": 99999999999999.99,
             "multipleOf": 1.00,
             "maxLength": 17,
             "description": "Discount"
             },
             "OthChrg": {
             "type": "number",
             "minimum": 0,
             "maximum": 99999999999999.99,
             "multipleOf": 1.00,
             "maxLength": 17,
             "description": "Other Charges"
             },
             "AssAmt": {
             "type": "number",
             "minimum": 0,
             "maximum": 99999999999999.99,
             "multipleOf": 1.00,
             "maxLength": 17,
             "description": "Assessable Amount (Total Amount -Discount + Other charges)"
             },
             "CgstRt": {
             "type": "number",
             "maximum": 999.999,
             "multipleOf": 1.000,
             "description": "CGSTRate",
             "minimum": 0
             },
             "SgstRt": {
             "type": "number",
             "maximum": 999.999,
             "multipleOf": 1.000,
             "description": "SGSTRate",
             "minimum": 0
             },
             "IgstRt": {
             "type": "number",
             "maximum": 999.999,
             "multipleOf": 1.000,
             "description": "IGSTRate",
             "minimum": 0
             },
             "CesRt": {
             "type": "number",
             "maximum": 999.999,
             "multipleOf": 1.000,
             "description": "CESSRate",
             "minimum": 0
             },
             "CesNonAdval": {
             "type": "number",
             "minimum": 0,
             "maximum": 99999999999999.99,
             "multipleOf": 1.00,
             "maxLength": 17,
             "description": "Cess Non-Advol Amount"
             },
             "StateCes": {
             "type": "number",
             "maximum": 999.999,
             "multipleOf": 1.000,
             "description": "State CESS Rate",
             "minimum": 0
             },
             "TotItemVal": {
             "type": "number",
             "minimum": 0,
             "maximum": 99999999999999.99,
             "multipleOf": 1.00,
             "maxLength": 17,
             "description": "Total Item Value = Assessable Amount  * [1+(CGST Rate + SGST Rate + Cess Rate + State Cess Rate)] + Cess NonAdvol Amount "
             },
             "BchDtls": {
             "type": "object",
             "properties": {
             "Nm": {
             "type": "string",
             "minLength": 0,
             "maxLength": 20,
             "description": "Batch name"
             },
             "ExpDt": {
             "type": "string",
             "maxLength": 10,
             "minLength": 10,
             "pattern": "[2][0][1-2][0-9]-[0-1][0-9]-[0-3][0-9]",
             "description": "Batch Expiry Date"
             },
             "WrDt": {
             "type": "string",
             "maxLength": 10,
             "minLength": 10,
             "pattern": "[2][0][1-2][0-9]-[0-1][0-9]-[0-3][0-9]",
             "description": "Warranty Date"
             }
             }
             }
             },
             "required": ["PrdNm", "HsnCd", "Qty", "Unit", "USelprice", "SelAmt", "CgstRt", "SgstRt", "IgstRt", "CesRt", "CesNonAdval", "StateCes", "TotItemVal "]
             }]
             },
             "ValDtls": {
             "type": "object",
             "properties": {
             "AssVal": {
             "type": "number",
             "minimum": 0,
             "maximum": 99999999999999.99,
             "multipleOf": 1.00,
             "maxLength": 17,
             "description": "Total Assessable value of all items"
             },
             "CgstVal": {
             "type": "number",
             "maxLength": 17,
             "maximum": 99999999999999.99,
             "multipleOf": 1.00,
             "minimum": 0,
             "description": "Total CGST value of all items"
             },
             "SgstVal": {
             "type": "number",
             "minimum": 0,
             "maxLength": 17,
             "maximum": 99999999999999.99,
             "multipleOf": 1.00,
             "description": "Total SGST value of all items"
             },
             "IgstVal": {
             "type": "number",
             "minimum": 0,
             "maximum": 99999999999999.99,
             "multipleOf": 1.00,
             "maxLength": 17,
             "description": "Total IGST value of all items"
             },
             "CesVal": {
             "type": "number",
             "minimum": 0,
             "maximum": 99999999999999.99,
             "multipleOf": 1.00,
             "maxLength": 17,
             "description": "Total CESS value of all items"
             },
             "StCesVal": {
             "type": "number",
             "minimum": 0,
             "maximum": 99999999999999.99,
             "multipleOf": 1.00,
             "maxLength": 17,
             "description": "Total State CESS value of all items"
             },
             "CesNonAdVal": {
             "type": "number",
             "minimum": 0,
             "maximum": 99999999999999.99,
             "multipleOf": 1.00,
             "maxLength": 17,
             "description": "Total Cess Non-advol value of all items"
             },
             "Disc": {
             "type": "number",
             "minimum": 0,
             "maximum": 99999999999999.99,
             "multipleOf": 1.00,
             "maxLength": 17,
             "description": "Discount on invoice value if any"
             },
             "OthChrg": {
             "type": "number",
             "minimum": 0,
             "maximum": 99999999999999.99,
             "multipleOf": 1.00,
             "maxLength": 17,
             "description": "Other charges if any"
             },
             "TotInvVal": {
             "type": "number",
             "minimum": 0,
             "maximum": 99999999999999.99,
             "multipleOf": 1.00,
             "maxLength": 17,
             "description": "Final Invoice value "
             }
             },
             "required": ["AssVal", "CgstVal", "SgstVal", "IgstVal", "CesVal", "StCesVal", "CesNonAdVal", "TotInvVal"]
             },
             "PayDtls": {
             "type": "object",
             "properties": {
             "Nam": {
             "type": "string",
             "maxLength": 100,
             "description": "Payee Name"
             },
             "Mode": {
             "type": "string",
             "maxLength": 6,
             "enum": ["CASH", "EPAY", "DIRDBT", "OTH"],
             "description": "Mode of Payment"
             },
             "FinInsBr": {
             "type": "string",
             "maxLength": 11,
             "description": "Branch or IFSC code"
             },
             "PayTerm": {
             "type": "string",
             "maxLength": 200,
             "description": "Terms of Payment"
             },
             "PayInstr": {
             "type": "string",
             "maxLength": 200,
             "description": "Payment Instruction"
             },
             "CrTrn": {
             "type": "string",
             "maxLength": 50,
             "description": "Credit Transfer"
             },
             "DirDr": {
             "type": "string",
             "maxLength": 50,
             "description": "Direct Debit"
             },
             "CrDay": {
             "type": "number",
             "minimum": 0,
             "maxLength": 3,
             "maximum": 999,
             "description": "Credit Days"
             },
             "BalAmt": {
             "type": "number",
             "minimum": 0,
             "maxLength": 17,
             "maximum": 99999999999999.99,
             "multipleOf": 1.00,
             "description": "Balance Amount to be paid"
             },
             "PayDueDt": {
             "type": "string",
             "maxLength": 10,
             "inLength": 10,
             "pattern": "[2][0][1-2][0-9]-[0-1][0-9]-[0-3][0-9]",
             "description": "Due Date of Payment"
             },
             "AcctDet": {
             "type": "string",
             "maxLength": 50,
             "inLength": 50,
             "pattern": "",
             "description": "Account Details"
             }
             }
             },
             "RefDtls": {
             "type": "object",
             "properties": {
             "InvRmk": {
             "type": "string",
             "maxLength": 100,
             "minLength": 0,
             "pattern": "[0-9|A-Z|a-z|/|-|(|)]{100}",
             "description": "Invoice Remarks"
             },
             "InvStDt": {
             "type": "string",
             "maxLength": 10,
             "minLength": 10,
             "pattern": "[2][0][1-2][0-9]-[0-1][0-9]-[0-3][0-9]",
             "description": "Invoice Period Start Date"
             },
             "InvEndDt": {
             "type": "string",
             "maxLength": 10,
             "minLength": 10,
             "pattern": "[2][0][1-2][0-9]-[0-1][0-9]-[0-3][0-9]",
             "description": "Invoice Period End Date"
             },
             "PrecInvNo": {
             "type": "string",
             "maxLength": 20,
             "minLength": 1,
             "pattern": "[0-9|A-Z|a-z|/|-]{20}",
             "description": "Preceeding Invoice Number"
             },
             "PrecInvDt": {
             "type": "string",
             "maxLength": 10,
             "minLength": 10,
             "pattern": "[2][0][1-2][0-9]-[0-1][0-9]-[0-3][0-9]",
             "description": "Preceding Invoice Date"
             },
             "RecAdvRef": {
             "type": "string",
             "maxLength": 20,
             "minLength": 1,
             "pattern": "[0-9|A-Z|a-z|/|-|(|)]{20}",
             "description": "Receipt Advice No."
             },
             "TendRef": {
             "type": "string",
             "maxLength": 20,
             "minLength": 1,
             "pattern": "[0-9|A-Z|a-z|/|-|(|)]{20}",
             "description": "Lot/Batch Reference No."
             },
             "ContrRef": {
             "type": "string",
             "maxLength": 20,
             "minLength": 1,
             "pattern": "[0-9|A-Z|a-z|/|-|(|)]{20}",
             "description": "Contract Reference Number"
             },
             "ExtRef": {
             "type": "string",
             "maxLength": 20,
             "minLength": 1,
             "pattern": "[0-9|A-Z|a-z|/|-|(|)]{20}",
             "description": "Any other reference"
             },
             "ProjRef": {
             "type": "string",
             "maxLength": 20,
             "minLength": 1,
             "pattern": "[0-9|A-Z|a-z|/|-|(|)]{20}",
             "description": "Project Reference Number"
             },
             "PORef": {
             "type": "string",
             "maxLength": 20,
             "minLength": 1,
             "pattern": "[0-9|A-Z|a-z|/|-|(|)]{20}",
             "description": "Purchaser's PO Reference Number"
             }
             }
             },
             "ExpDtls": {
             "type": "object",
             "properties": {
             "ExpCat": {
             "type": "string",
             "minLength": 3,
             "maxLength": 3,
             "enum": ["DIR", "DEM", "SEZ", "SED"],
             "description": "Export Category: DIR-DIRECT, DEM-DEEMED, SEZ-SEZ, SED-SEZ DEVELOPER"
             },
             "WthPay": {
             "type": "string",
             "minLength": 1,
             "maxLength": 1,
             "enum": ["Y", "N"],
             "description": "Export Payment - Y for With Payment, N for Without Payment"
             },
             "ShipBNo": {
             "type": "string",
             "minLength": 1,
             "maxLength": 16,
             "description": "Shipping Bill No."
             },
             "ShipBDt": {
             "type": "string",
             "maxLength": 10,
             "inLength": 10,
             "pattern": "[2][0][1-2][0-9]-[0-1][0-9]-[0-3][0-9]",
             "description": "Shipping Bill Date"
             },
             "Port": {
             "type": "string",
             "maxLength": 6,
             "MinLength": 6,
             "pattern": "[0-9|A-Z|a-z]{6}",
             "description": "Port Code"
             },
             "InvForCur": {
             "type": "number",
             "minimum": 0,
             "maxLength": 17,
             "maximum": 99999999999999.99,
             "multipleOf": 1.00,
             "description": "Total Invoice value in Foreign Currency"
             },
             "ForCur": {
             "type": "string",
             "maxLength": 3,
             "inLength": 3,
             "pattern": "",
             "description": "Foreign Currency"
             },
             "CntCode": {
             "type": "string",
             "minLength": 2,
             "maxLength": 2,
             "description": "Country"
             }
             },
             "required": ["ExpCat", "WthPay", "InvForCur", "ForCur", "CntCode"]
             },
             "required": ["TaxSch", "Version", "TranDtls", "DocDtls", "SellerDtls", "BuyerDtls", "ItemList", "ValDtls"]
          }

Validations

  1. E-Invoice request JSON data has to be validated as per the e-Invoice JSON Schema given in the portal.
  2. The following fields should have one of the values given in the master codes
    • Type of Transaction
    • Category of Transaction
    • Document Type
  3. The Document Date should be less than or equal to current date.
  4. The following types of document are only considered for the generation of IRN.
    • Invoice
    • Debit Note
    • Credit Note
  5. E-Invoice request should be made only for the following category of transactions
    • Business to Business(B2B) invoices
    • Business to Government (B2G) invoices
    • Business to Export invoices
    • Reverse Charges invoices
    • Supplies through e-Commerce Operator
  6. Transaction of ‘Reverse Charges’ is allowed only for B2B invoices.
  7. In case of B2G invoices, the buyer’s GSTIN has to be of TDS Authority.
  8. Other category of transactions like Business to Consumer (B2C) invoices will not be considered and hence the API interface should not request for IRN for these transactions.
  9. Request for the IRN/e-Invoice can be made only by the supplier of the goods or services. However, the e-Commerce Operator can request for the IRN/e-invoice on behalf of the supplier. In this case, the e-Commerce Operator should have registered on the GST portal accordingly.
  10. Supplier should ensure that the unique invoice number is being generated for the financial year for each invoice, in his ERP/manual system. For the purpose of the financial year, the date of invoice is considered. The financial year starts from 1st April and ends on 31st March.
  11. Duplicate IRN requests are not considered. That is, if the IRN is already generated on particular type of document and document number of the supplier for the financial year, then one more IRN cannot be generated on the same combination.
  12. The IRN can be generated and passed by the tax payer’s system on the combination of Supplier GSTIN, Fin. Year, document type and document number.
  13. e-invoice(IRN) can be re-generated for the cancelled e-invoice(IRN)
  14. In case of export transactions, the tax payer has to pass the following data
    • Sub type of export –
    • Payment type – With or Without
    • Port code
    • Country code
    • Currency and value
  15. In case of Debit/Credit Note of transaction, the tax payer has to pass the Original Invoice Number in Debit/Credit Note details.
  16. PIN Codes are validated against the States, they belong to.
  17. To identify the type of movement of goods, type of transaction is being captured.
  18. Recipient GSTIN should be registered and active GSTIN number. In case of transaction of direct export, recipient GSTIN has to be URP.
  19. In case of ‘Bill to – Ship to’ transaction, the details of recipient party(Bill-to) and shipping party (Ship-to) should be passed.
  20. In case of ‘Bill From – Dispatch From’ transaction, the details of supplier party(Bill-from) and dispatching party (dispatch-from) should be passed.
  21. In case of intra-state transaction, where both Supplier GSTIN and recipient GSTIN belong to same state, the SGST and CGST tax rates and values have to be passed.
  22. In case of inter-state transaction, where both Supplier GSTIN and recipient GSTIN belong to different states, the IGST tax rate and value has to be passed.
  23. In case of export transaction, IGST tax rate and value has to be passed.
  24. In case the supplier is SEZ unit, then IGST tax rate and value has to be passed irrespective of state of the buyer.
  25. Each item needs to valid HSN code with at least 4 digits. That is, items of goods type should be 4 or 6 or 8 digits and items of service type should be 4 or 5 or 6 digits. HSN Code should be valid as per the GST master.
  26. Each item should have valid Unit Quantity Code (UQC) as per the master codes.
  27. Tax rates are being validated. Only the allowed tax rates will be accepted.
  28. Maximum number of items in each invoice should not exceed more than 1000 items.
  29. The following summation validations are to be done for items
    • Taxable Value of Item = Quantity X Selling Unit Price
    • SGST Value of Item = Taxable Value of Item X SGST Rate
    • CGST Value of Item = Taxable Value of Item X CGST Rate
    • IGST Value of Item = Taxable Value of Item X IGST Rate
    • Cess Value of Item = Taxable Value of Item X Cess Rate
    • State Cess Value of Item = Taxable Value of Item X State Cess Rate
    • Non-Advol Cess Value of Item = Quantity X Non-Advol Cess Rate
    • Total Value of Item = Taxable Value of Item + SGST Value of Item + CGST Value of Item + IGST Value of Item + Cess Value of Item + State Cess Value of Item + Non-Advol Cess Value of Item
  30. The following summation validations are to be done on Invoice total
    • Total Taxable Value = Taxable Value of all Items
    • Total SGST Value = SGST Value of all Items
    • Total CGST Value = CGST Value of all Items
    • Total IGST Value = IGST Value of all Items
    • Total Cess Value = Cess Value of all Items
    • Total State Cess Value = State Cess Value of all Items
    • Total Non-Advol Cess Value = Non-Advol Cess Value of all Items
    • Total Invoice Value = Total Taxable Value + Total SGST Value + Total CGST Value + Total IGST Value + Total Cess Value + Total State Cess Value + Total Non-Advol Cess Value - Discount Amount + Other Charges
  31. Difference of calculated Total Invoice Value and entered Total Invoice Value can be plus or minus Rs. 2

Frequently Asked Questions

Content will be updated shortly.