JWT is a Base64-encoded JSON with three parts: header (algorithm), payload (user info, expiry, etc.), and signature (HMAC or RSA). Anyone can decode the payload (it's not encrypted), but only the issuer can sign it.
Use case: user logs in → server issues JWT with user ID + permissions + expiry → client sends JWT on every API call → server verifies signature without DB lookup.
For Indian SaaS, JWT enables stateless authentication — no session storage needed. Trade-off: revoking a JWT before expiry is hard (no central session). Solutions: short-lived JWT + refresh tokens, or revocation lists.