SECURITY
Payment status is trusted only after server-side verification.
Core controls
FormXpert Pay does not treat a browser redirect, screenshot or manually entered UTR as proof of payment. Final success is based on the provider's server response and exact order amount.
- HMAC-SHA256 API signatures with timestamp + nonce
- Replay protection and per-minute rate limiting
- Unique Paytm transaction ID constraint
- Database row lock before final payment transition
- Idempotency-Key protection for order creation
- AES-256-GCM encryption for merchant secrets at rest
- Signed outgoing webhooks and retry logs
- HTTPS-only merchant return/webhook URLs