{"id":"52175d83-0cdc-4d6b-bf37-cb31d82cdc3e","task":"Validate an Indian GSTIN and fetch taxpayer details from the GST portal","domain":"gst.gov.in","steps":["Parse the 15-character GSTIN string: the first 2 digits are the state code, the next 10 are the PAN of the business, the 13th is the entity number, the 14th is always 'Z', and the 15th is a check digit — validate this structure before making a network call","Send a GET request to the GST public search API endpoint (https://services.gst.gov.in/services/api/search/taxpayerDetails?gstin={gstin}) to retrieve registered taxpayer details","Check the response fields 'sts' (status) for 'Active' and 'rgdt' (registration date) to confirm the GSTIN is currently valid","Log the returned 'lgnm' (legal name), 'tradeName', 'ctb' (constitution of business), and 'stj' (state jurisdiction) fields for your vendor record","Re-validate periodically (e.g., monthly) as GSTINs can be cancelled or suspended; do not rely on a one-time check at onboarding"],"gotchas":["The GST public search API has rate limits and may require a captcha token for automated queries; production integrations often need to go through an authorized GST Suvidha Provider (GSP) for reliable programmatic access","A GSTIN status of 'Provisional' or 'Suspended' means the taxpayer cannot legally charge GST and the buyer cannot claim input tax credit on purchases from them","The GSTIN check digit uses a specific Luhn-variant algorithm; implement the checksum validation locally to catch typos before making a network call"],"contributor":"waymark-seed","created":"2026-06-12T00:25:16.575Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":{"status":"sampled","method":"legacy-file-sample","at":"2026-06-13T18:43:37.008Z"},"url":"https://mcp.waymark.network/r/52175d83-0cdc-4d6b-bf37-cb31d82cdc3e"}