Skip to main content
1

Authenticate and Get E-Invoice Session

Before generating an e-invoice, you must authenticate and create an E-Invoice session. Follow the steps in the Generate E-Invoice Session recipe to obtain an E-Invoice access token.This access token is required for all E-Invoice API calls and is valid for the duration specified in the authentication response.
2

Generate E-Invoice

Once you have the E-Invoice access token, you can generate an e-invoice using the Generate E-Invoice endpoint.Provide the complete invoice details including seller and buyer information, item list, transaction details, and valuation details. Upon successful generation, you’ll receive an Invoice Reference Number (IRN), a signed invoice, and a signed QR code.

cURL Request

curl --request POST \
  --url https://api.sandbox.co.in/gst/compliance/e-invoice/tax-payer/invoice \
  --header 'authorization: {e-invoice-access-token}' \
  --header 'x-api-key: xxxxxxxxxxxxxx' \
  --header 'x-api-version: 1.0.0' \
  --header 'Content-Type: application/json' \
  --data '{
  "Version": "1.1",
  "TranDtls": {
    "TaxSch": "GST",
    "SupTyp": "B2B",
    "RegRev": "Y",
    "EcmGstin": null,
    "IgstOnIntra": "N"
  },
  "DocDtls": {
    "Typ": "INV",
    "No": "DOC/113",
    "Dt": "01/01/2024"
  },
  "SellerDtls": {
    "Gstin": "29AAACQ3770E000",
    "LglNm": "Acme Industries Private Limited",
    "TrdNm": "Acme Industries Private Limited",
    "Addr1": "5th block, kuvempu layout",
    "Addr2": "kuvempu layout",
    "Loc": "BANGALORE",
    "Pin": 560091,
    "Stcd": "29",
    "Ph": "9000000000",
    "Em": "abc@gmail.com"
  },
  "BuyerDtls": {
    "Gstin": "29AWGPV7107B1Z1",
    "LglNm": "XYZ company pvt ltd",
    "TrdNm": "XYZ Industries",
    "Pos": "12",
    "Addr1": "7th block, kuvempu layout",
    "Addr2": "kuvempu layout",
    "Loc": "GANDHINAGAR",
    "Pin": 562160,
    "Stcd": "29",
    "Ph": "91111111111",
    "Em": "xyz@yahoo.com"
  },
  "ItemList": [
    {
      "SlNo": "1",
      "PrdDesc": "Rice",
      "IsServc": "N",
      "HsnCd": "1001",
      "Barcde": "123456",
      "Qty": 100.345,
      "FreeQty": 10,
      "Unit": "BAG",
      "UnitPrice": 99.545,
      "TotAmt": 9988.84,
      "Discount": 10,
      "PreTaxVal": 1,
      "AssAmt": 9978.84,
      "GstRt": 12.0,
      "IgstAmt": 1197.46,
      "CgstAmt": 0,
      "SgstAmt": 0,
      "CesRt": 5,
      "CesAmt": 498.94,
      "CesNonAdvlAmt": 10,
      "StateCesRt": 12,
      "StateCesAmt": 1197.46,
      "StateCesNonAdvlAmt": 5,
      "OthChrg": 10,
      "TotItemVal": 12897.7,
      "OrdLineRef": "3256",
      "OrgCntry": "AG",
      "PrdSlNo": "12345"
    }
  ],
  "ValDtls": {
    "AssVal": 9978.84,
    "CgstVal": 0,
    "SgstVal": 0,
    "IgstVal": 1197.46,
    "CesVal": 508.94,
    "StCesVal": 1202.46,
    "Discount": 10,
    "OthChrg": 20,
    "RndOffAmt": 0.3,
    "TotInvVal": 12908,
    "TotInvValFc": 12897.7
  },
  "DispDtls": {
    "Nm": "ABC company pvt ltd",
    "Addr1": "7th block, kuvempu layout",
    "Addr2": "kuvempu layout",
    "Loc": "Banagalore",
    "Pin": 562160,
    "Stcd": "29"
  },
  "ShipDtls": {
    "Gstin": "29AWGPV7107B1Z1",
    "LglNm": "CBE company pvt ltd",
    "TrdNm": "kuvempu layout",
    "Addr1": "7th block, kuvempu layout",
    "Addr2": "kuvempu layout",
    "Loc": "Banagalore",
    "Pin": 562160,
    "Stcd": "29"
  },
  "ExpDtls": {
    "ShipBNo": "A-248",
    "ShipBDt": "01/08/2020",
    "Port": "INABG1",
    "RefClm": "N",
    "ForCur": "AED",
    "CntCode": "AE",
    "ExpDuty": null
  },
  "EwbDtls": {
    "TransId": "12AWGPV7107B1Z1",
    "TransName": "XYZ EXPORTS",
    "Distance": 5,
    "TransDocNo": "DOC01",
    "TransDocDt": "05/01/2024",
    "VehNo": "ka123456",
    "VehType": "R",
    "TransMode": "1"
  }
}'
When the e-invoice is generated successfully, the response will include:
  • IRN (Invoice Reference Number) - A unique identifier for the e-invoice
  • SignedInvoice - The digitally signed invoice in JWT format
  • SignedQRCode - The signed QR code containing invoice summary details
Save these values as they are required for generating the PDF in the next step.
3

Generate E-Invoice PDF

After successfully generating the e-invoice, you can generate a PDF using the Generate E-Invoice PDF endpoint.You need to provide the signed QR code, IRN, and signed invoice from the previous step’s response. The PDF generation uses the Sandbox JWT access token (not the E-Invoice access token).

cURL Request

curl --request POST \
  --url https://api.sandbox.co.in/gst/compliance/e-invoice/pdf/generate \
  --header 'authorization: {sandbox-access-token}' \
  --header 'x-api-key: xxxxxxxxxxxxxx' \
  --header 'x-api-version: 1.0.0' \
  --header 'Content-Type: application/json' \
  --data '{
  "@entity": "in.co.sandbox.gst.compliance.e-invoice.pdf.request",
  "signed_qr_code": "eyJhbGciOiJSUzI1NiIsImtpZCI6IjE1MTNCODIxRUU0NkM3NDlBNjNCODZFMzE4QkY3MTEwOTkyODdEMUYiLCJ4NXQiOiJGUk80SWU1R3gwbW1PNGJqR0w5eEVKa29mUjgiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJOSUMgU2FuZGJveCIsImRhdGEiOiJ7XCJTZWxsZXJHc3RpblwiOlwiMjlBQUFDUTM3NzBFMDAwXCIsXCJCdXllckdzdGluXCI6XCIyOUFXR1BWNzEwN0IxWjFcIixcIkRvY05vXCI6XCJET0MvOTk5XCIsXCJEb2NUeXBcIjpcIklOVlwiLFwiRG9jRHRcIjpcIjA2LzEyLzIwMjRcIixcIlRvdEludlZhbFwiOjE2OTk5LFwiSXRlbUNudFwiOjEsXCJNYWluSHNuQ29kZVwiOlwiOTk3MzMxXCIsXCJJcm5cIjpcImUwNWJlYWFlNjNjM2VkNmU2ZTE5YjIyNGM1Yzk1NDc1ZTlhZWI5YmU2MGE3ODczYTlkZDRhYzRmZjc0MGFiYmNcIixcIklybkR0XCI6XCIyMDI0LTEyLTA2IDE5OjAzOjAwXCJ9In0.2IVYpGwSlk8H-6Bc7u038crGCuAQ176o47oIlJkjE1JvMT5vFdQTK3RX8KDH3JP9ALFndkxH8UxI1mUgNLtgOkQBQEaSf7isSB_A293ROjhDcjZJXCK0fYQdVXL2gPu3EeB72Tl6yZNUx0qlTEqNenfCgvIXPbOTrbR-xjPWS7qyXTSsxNT3ocgYlkUaqSpwrTp2XSDdt2pwog0JJCPQ2tTI6-IFvRtDCQUJdevfgdTCxTTUilseZTB4fGd2uplQ75cZVsIafFFas2_SDE1KNiXQ0VFSB67DmFRSgQ1mai_z4kxgGUQVYrImpgNVVrorz1JXi9gksaAFtQUhz_UmaA",
  "irn": "e05beaae63c3ed6e6e19b224c5c95475e9aeb9be60a7873a9dd4ac4ff740abbc",
  "signed_invoice": "eyJhbGciOiJSUzI1NiIsImtpZCI6IjE1MTNCODIxRUU0NkM3NDlBNjNCODZFMzE4QkY3MTEwOTkyODdEMUYiLCJ4NXQiOiJGUk80SWU1R3gwbW1PNGJqR0w5eEVKa29mUjgiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJOSUMgU2FuZGJveCIsImRhdGEiOiJ7XCJBY2tOb1wiOjIxMjQxMDAwMDAzMjAzNixcIkFja0R0XCI6XCIyMDI0LTEyLTA2IDE5OjAzOjAwXCIsXCJJcm5cIjpcImUwNWJlYWFlNjNjM2VkNmU2ZTE5YjIyNGM1Yzk1NDc1ZTlhZWI5YmU2MGE3ODczYTlkZDRhYzRmZjc0MGFiYmNcIixcIlZlcnNpb25cIjpcIjEuMVwiLFwiVHJhbkR0bHNcIjp7XCJUYXhTY2hcIjpcIkdTVFwiLFwiU3VwVHlwXCI6XCJCMkJcIixcIlJlZ1JldlwiOlwiWVwiLFwiSWdzdE9uSW50cmFcIjpcIk5cIn0sXCJEb2NEdGxzXCI6e1wiVHlwXCI6XCJJTlZcIixcIk5vXCI6XCJET0MvOTk5XCIsXCJEdFwiOlwiMDYvMTIvMjAyNFwifSxcIlNlbGxlckR0bHNcIjp7XCJHc3RpblwiOlwiMjlBQUFDUTM3NzBFMDAwXCIsXCJMZ2xObVwiOlwiU2FuZGJveCBGaW5hbmNpYWwgVGVjaG5vbG9naWVzIFB2dCBMVGRcIixcIlRyZE5tXCI6XCJTYW5kYm94IEZpbmFuY2lhbCBUZWNobm9sb2dpZXMgUHZ0IExUZFwiLFwiQWRkcjFcIjpcIkJlbmdhbHVydVwiLFwiQWRkcjJcIjpcIkJlbmdhbHVydSwgS2FybmF0YWthXCIsXCJMb2NcIjpcIkJFTkdBTFVSVVwiLFwiUGluXCI6NTYwMDgzLFwiU3RjZFwiOlwiMjlcIixcIlBoXCI6XCI5OTk5OTQ0NDQ0XCIsXCJFbVwiOlwiYXV0b21hdGV0YXhlc0BzYW5kYm94LmNvLmluXCJ9LFwiQnV5ZXJEdGxzXCI6e1wiR3N0aW5cIjpcIjI5QVdHUFY3MTA3QjFaMVwiLFwiTGdsTm1cIjpcIkZpbmFuY2UgQm9va3MgUHZ0IEx0ZFwiLFwiVHJkTm1cIjpcIkZpbmFuY2UgQm9va3MgUHZ0IEx0ZFwiLFwiUG9zXCI6XCIyOVwiLFwiQWRkcjFcIjpcIkJlbmdhbHVydVwiLFwiTG9jXCI6XCJCRU5HQUxVUlVcIixcIlBpblwiOjU2MDA4MyxcIlBoXCI6XCI4ODg4ODMzMzMzXCIsXCJFbVwiOlwiYWNjb3VudHNAZmluYW5jZS5ib29rc1wiLFwiU3RjZFwiOlwiMjlcIn0sXCJJdGVtTGlzdFwiOlt7XCJJdGVtTm9cIjowLFwiU2xOb1wiOlwiMVwiLFwiSXNTZXJ2Y1wiOlwiWVwiLFwiUHJkRGVzY1wiOlwiQVBJIFN1YnNjcmlwdGlvblwiLFwiSHNuQ2RcIjpcIjk5NzMzMVwiLFwiUXR5XCI6MSxcIkZyZWVRdHlcIjowLFwiVW5pdFwiOlwicGNzXCIsXCJVbml0UHJpY2VcIjoxNjk5OSxcIlRvdEFtdFwiOjE0NDA1LjkyLFwiRGlzY291bnRcIjowLFwiQXNzQW10XCI6MTQ0MDUuOTIsXCJHc3RSdFwiOjE4LFwiSWdzdEFtdFwiOjAsXCJDZ3N0QW10XCI6MTI5Ni41NCxcIlNnc3RBbXRcIjoxMjk2LjU0LFwiQ2VzUnRcIjowLFwiQ2VzQW10XCI6MCxcIkNlc05vbkFkdmxBbXRcIjowLFwiU3RhdGVDZXNSdFwiOjAsXCJTdGF0ZUNlc0FtdFwiOjAsXCJTdGF0ZUNlc05vbkFkdmxBbXRcIjowLFwiT3RoQ2hyZ1wiOjAsXCJUb3RJdGVtVmFsXCI6MTY5OTl9XSxcIlZhbER0bHNcIjp7XCJBc3NWYWxcIjoxNDQwNS45MixcIkNnc3RWYWxcIjoxMjk2LjU0LFwiU2dzdFZhbFwiOjEyOTYuNTQsXCJJZ3N0VmFsXCI6MCxcIkNlc1ZhbFwiOjAsXCJTdENlc1ZhbFwiOjAsXCJEaXNjb3VudFwiOjAsXCJPdGhDaHJnXCI6MCxcIlJuZE9mZkFtdFwiOjAsXCJUb3RJbnZWYWxcIjoxNjk5OX19In0.s8uga45NjUHBWOzDgXpOysLCZzmA90MOR7A6uttEeszfpdSl_RBC4X4EXQj-pb69xIRM6lO-iAFjSdrMN0ZjxK8hjPKNaG5u6YJZmie8B_pTUrSoMhjLNHVHGjsun0PjON4Wm2kmBVju_aI9LIacX9OaWt14RH4ehkqhO5qmCorX0TsPlV-949EmCUY4OSGzngieMbqs92qo_hrtKqOYTDzk1D2na8gsgJuWy043k0OTWEfeWwptdRdi8hNw6X2_agxjhSf0rvUiMFBKhLVDaA1Ah74-L_sV8ZPYBAUr32CIuNrTW7IBBug6wkX0TX24gnIuKfvtOnP3hghA_2_BjA"
}'
The response will contain a signed URL to download the PDF. This URL is valid for a limited time, so download the PDF promptly.