TaxPro GST Lib
User guide (Under Construction)
 
×
Menu
Index
Track GST Return API
 
API Method: GET
 
URL For Production : https://gstapi.charteredinfo.com/commonapi/v1.0/Returns
URL For Sandbox : https://gstsandbox.charteredinfo.com/commonapi/v1.0/Returns
 
 
Headers Parameters
 
Property
Description
Data Type
aspid
AspUserId provided by GSP.
String
asp-secret
Encrypt AspPassword (Asp Secret Key) provided by GSP for pass through API access, Encrypted using AspEK (received in GetKey API)
Sample:
request.AddHeader("asp-secret", AesEncryptBase64(“Asp Secret Key”,AspEK))  [Algorithm: AES/ECB/PKCS7]
String
session-id
SessionID.  ASP may create multiple Sessions.
string
txn
Unique Transaction ID even if calling GSP Service API. (Requires only once, which you are already passing as requirement for GST API.)
string
appver
Application Name and Version calling API. (Optional but Recommended)
string
Content-Type
application/json; charset=utf-8
string
ip-usr
123.123.123.123
string
 
Query Parameters
Property
Description
Data Type
action
"RETTRACK"
String
gstin
GSTIN of TaxPayer to Search for.
String
fy
Financial Year (YYYY-YY)
String
type (Optional)
R1 or R2, etc
String
 
Sample for URL Based API:
https://gstapi.charteredinfo.com/commonapi/v1.0/returns?Action=RETTRACK&Gstin=GSTINOfTaxPayerToSearch&fy=2017-18
Header Parameter:
request.AddHeader("asp-secret", AesEncryptBase64(“Asp Secret Key”,AspEK))  [Algorithm: AES/ECB/PKCS7]
request.AddHeader("session-id", “session_id Received in GetKey API Response”);
request.AddHeader("aspid", "ASPID");
request.AddHeader("txn", "Unique Transaction ID");
request.AddHeader("Content-Type", "application/json; charset=utf-8");
 
Method in TaxProGST.API Lib:
public async static Task<TxnRespWithObj<EFiledReturn>> ViewAndTrackAllReturnAsync(APISession ApiSession, string FinancialYear, bool LogResponseJson = false)
 
//================================================
//AES Encrypt Payload - Payload  (Sample C# Code) 
//================================================
public static string AesEncryptBase64(string payLoad, string key)
        {
            using(AesManaged AesM = new AesManaged())
            {
                AesM.Key = Convert.FromBase64String(key);   
                AesM.Mode = CipherMode.ECB;
                AesM.Padding = PaddingMode.PKCS7;
                byte[] bytPayload = Convert.FromBase64String(payLoad);
                ICryptoTransform crypt = AesM.CreateEncryptor();
                return Convert.ToBase64String(crypt.TransformFinalBlock(bytPayload, 0, bytPayload.Length));
            }
        }