Getting Started

Overview

The Quicko API is organized around REST. Our APIs have simple, resource-oriented URLs, accepts form-encoded request bodies, returns JSON-encoded responses, and uses standard HTTP response codes, authentication and error messages.

You can use Quicko APIs in test mode, which does not affect live data. The API endpoints you use determines whether the request is sent to live or test environments.

Authentication

The Quicko API use Token based authentication. You can view and manage your API keys & Access keys in the Quicko API Dashboard.

Upon signup, you will receive pair of API key and Secret key. API key is a public key to authorize access to a given API. Secret key is a private key to authenticate your access for given API.

Authentication to the API is performed using following authentication headers passed in the HTTP header.

Header Type Description
x-api-key HEX(32)

Public key required to authorize API access.

x-authentication-token HEX(32)

Private key required to authenticate API access.

Income Tax

POST ITR

ITRPOST

Purpose: Post Income Tax Return for PAN & Assessment Year

Method: POST

Content-Type: JSON

URL: https://api.quicko.com/v1/itr

 

Request Headers

Header Type Description
x-api-key HEX(32) Public key required to authorize API access.
x-authentication-token HEX(32) Private key required to authenticate API access.

 

Request Body

Attribute

Type

Sample Value

Comments

data

< Key, Value > Pair

   

Key

Type

Sample Value

 

itr

Base 64 Encoded XML

Please refer to Income Tax Department Website for latest schema

 

Goods and Services Tax

GET GSTIN

GETGSTIN

 

Purpose: Get GSTIN details for a valid GSTIN

Method: GET

Content-Type: JSON

URL: https://api.quicko.com/v1/gstin

 

Request Headers

Header Type Description
x-api-key HEX(32) Public key required to authorize API access.
x-authentication-token HEX(32) Private key required to authenticate API access.

 

Request Body

Attribute

Type

Sample Value

Comments

data

< Key, Value > Pair

   

Key

Type

Sample Value

 

gstins

String[]

[00XXXXX0000X0ZX, 00YYYYY0000Y0ZY]

 

Sample Request

{	
  "data": {
    "gstins" : [ "00XXXXX0000X0ZX", "00YYYYY0000Y0ZY"]
  }
}

 

Response Body

Attribute

Type

Sample Value

Comments

status

String(10)

success

fail

 

timestamp

String

dd/mm/yyyy hh:mm:ss

 

data

< Key, Value > Pair

   

Key

Type

Sample Value

 

gstin

String(10)

00XXXXX0000X0ZX

 

status

String(30)

valid

invalid

pending

not available

Valid if GSTIN present in CBIC database, otherwise Invalid

legal_name

String

   

registration_date

String(10)

dd/mm/yyyy  
business_constitution String    
nature_of_business String[]

Manufactures

Trader

 
state String   State in which registered
scheme String

Regular

Composition

 

 

 

Sample Body

{
  "status": "success",
  "timestamp" : "01/01/1970 02:30:00",
  "data": {
    "gstins" :[
	{
          "gstin" : "00XXXXX0000X0ZX",
          "status" : "valid",	
          "legal_name" : "Stark Inc",
          "registration_date" : "01/01/1970",
          "scheme" : "Regular",
          "nature_of_business":["Manufacturer", "Trader"],
          "business_constitution":"Company",
          "state":"Maharashtra"
        },
       {
	 "gstin" : "00YYYYY0000Y0ZY",
         "status" : "invalid"
       }
    ]

POST GSTR

GSTRPOST

 

Purpose: Post Goods & Services Tax Return for GSTIN, Financial Year & Period

Method: POST

Content-Type: JSON

URL: https://api.quicko.com/v1/gstr

 

Request Headers

Header Type Description
x-api-key HEX(32) Public key required to authorize API access.
x-authentication-token HEX(32) Private key required to authenticate API access.

 

Request Body

Attribute

Type

Sample Value

Comments

data

< Key, Value > Pair

   

Key

Type

Sample Value

 

gstr

Base 64 Encoded JSON

Please refer to GST Developer Portal for latest schema

Permanent Account Number

GET PAN

GETPAN

 

Purpose: Get pan details for verified pan

Method: GET

Content-Type: JSON

URL: https://api.quicko.com/v1/pan

 

Request Headers

Header Type Description
x-api-key HEX(32) Public key required to authorize API access.
x-authentication-token HEX(32) Private key required to authenticate API access.

 

Request Body

Attribute

Type

Sample Value

Comments

data

< Key, Value > Pair

   

Key

Type

Sample Value

 

pans

String[]

[XXXXX0000X, YYYYY0000Y]

 

Sample Request

{	
  "data": {
    "pans" : [ "XXXXX0000X", "YYYYY0000Y"]
  }
}

 

Response Body

Attribute

Type

Sample Value

Comments

status

String(10)

success

fail

 

timestamp

String

dd/mm/yyyy hh:mm:ss

 

data

< Key, Value > Pair

   

Key

Type

Sample Value

 

pan

String(10)

XXXXX0000X

 

status

String(30)

valid

invalid

pending

not available

Valid if PAN present in IT database, otherwise Invalid

first_name

String(50)

   

middle_name

String(50)

   

last_name

String(100)

 

Name in case of non-individual

category

String(30)

 

Individual, Company, Trust, HUF, Firm

 

 

Sample Body

{
  "status": "success",
  "timestamp" : "01/01/1970 02:30:00",
  "data": {
    "pans" :[
	{
          "pan" : "XXXXX0000X",
          "status" : "valid",	
          "first_name" : "John",
          "middle_name" : "J",
          "last_name" : "Doe"
        },
       {
	 "pan" : "XXXXX0000X",
         "status" : "Invalid"
       }
    ]
  }
}

POST PAN

PANPOST

 

Purpose: Submit PAN for verification

Method: POST

Content-Type: JSON

URL: https://api.quicko.com/v1/pan

 

Request Headers

Header Type Description
x-api-key HEX(32) Public key required to authorize API access.
x-authentication-token HEX(32) Private key required to authenticate API access.

 

Request Body

Attribute

Type

Sample Value

Comments

data

< Key, Value > Pair

   

Key

Type

Sample Value

 

pans

String[]

[XXXXX0000X, YYYYY0000Y]

 

 

 

Sample Request

{	
  "data": {
    "pans" : [ "XXXXX0000X", "YYYYY0000Y"]
  }
}

 

Response Body

Attribute

Type

Sample Value

Comments

status

String(10)

success

fail

 

timestamp

String

dd/mm/yyyy hh:mm:ss

 

 

Sample Body

{
  "status": "success",
  "timestamp" : "01/01/1970 02:30:00",
}

Response Body [Error]

Attribute

Type

Sample Value

Comments

status

String(10)

fail

 

timestamp

String

dd/mm/yyyy hh:mm:ss

 

error

< Key, Value > Pair

   

Key

Type

Sample Value

 

message

String

Unauthorized

Access denied

Insufficient Credits

Internal Server Error

 

code

Integer

401

403

500

 

 

 

Sample Response [Error]

{
  "status": "fail",
  "timestamp" : "01/01/1970 02:30:00",
  "error": {
    "code":  403,
    "message": "Access denied"
  }
}

Getting Started

Income Tax

Goods and Services Tax

Permanent Account Number