India Payment API
SoPay provides a unified India Payment API for international and domestic merchants who need to collect and disburse INR without integrating each local rail separately. This page explains how Merchant Collection API (payin) and Merchant Payout API (payout) fit together, what to expect from webhooks and signatures, and where to find field-level specifications.
This is an integration overview for engineering and product teams. Request schemas, error codes, and signing steps live in the India Payment API documentation.
What the India Payment API covers
An India Payment API is the HTTPS interface between your backend and SoPay. Typical capabilities include:
- Merchant Collection API — create payin orders, redirect or present a checkout experience, receive completion webhooks
- Merchant Payout API — send INR to beneficiary bank accounts (commonly with IFSC routing data)
- Order queries — reconcile by platform or merchant order number
- Merchant wallet — balance and transaction history where enabled
- Security — RSA2-signed requests and verifiable async notifications
You integrate with SoPay platform APIs only. Underlying payment channels in India are operated by the platform; your application should not call bank or wallet rails directly.
Capabilities documented for India
| Capability | Purpose | Documentation |
|---|---|---|
| Payin | Collect INR from payers | India API overview (payin section) |
| Payout | Disburse to bank accounts | India API overview (payout section) |
| Webhooks | Final status delivery | Merchant Callback API |
| Signing | Request and webhook verification | Signature guide |
| Overview | Environment, headers, API map | India Payment API documentation |
Payin flows may expose a hosted payment URL (payUrl). Payout flows typically require beneficiary account details and IFSC. Exact fields and product availability depend on your merchant profile and sandbox testing.
Merchant Collection API (Payin)
Typical payin integration:
- Your server creates a payin order with amount, merchant order ID, and
notifyUrl - SoPay returns payment guidance (for example a
payUrl) - The payer completes payment through the hosted experience
- SoPay POSTs a signed webhook to
notifyUrlon terminal status
For India, notifyUrl is required in documented flows—without it you cannot reliably receive completion events. See the payin section in the India overview.
Do not hard-code success rates or settlement timelines in your product copy; treat platform status fields as the source of truth.
Merchant Payout API (Payout)
India Payout API orders move funds from your merchant balance to a beneficiary account. Creation usually moves the order to processing; final states arrive via webhook or query.
Bank disbursement commonly references IFSC and account number. Missing or invalid beneficiary data may cause creation or processing failures. Full parameter tables are in the India overview.
INR, UPI, IFSC, and bank transfer
- INR — Indian Rupee; India APIs use
countryCode=INandcurrency=INR - UPI — widely used instant payment rail in India; in SoPay docs, payin often appears as hosted checkout rather than a separate UPI SDK you must embed
- IFSC — Indian Financial System Code for bank branch routing; typically required on payout create
- Bank transfer / IMPS — described at the platform API layer; settlement rails are handled upstream
Recommended integration path
- Read Quick Start and exchange RSA keys with operations
- Implement Merchant Signature Verification on outbound calls and inbound webhooks
- Integrate payin and payout per the India Payment API documentation
- Deploy an HTTPS webhook endpoint that returns HTTP 200 with body
OK— see Callback guide - Validate idempotency and reconciliation in sandbox before production
For a business-oriented summary of India rails, see also the India Payment API guide (this page) paired with the technical overview.
Cross-border context
If you operate outside India but serve Indian users or suppliers, treat this as a Cross Border Payment API integration at the SoPay layer: one merchant contract, country-scoped endpoints and currency rules, shared webhook and signing patterns across other markets documented on this site.
Frequently Asked Questions
What is the difference between SoPay APIs and local payment channels?
You call SoPay Merchant APIs. Channel selection, compliance, and rail maintenance sit behind the platform boundary described in the India overview.
Does SoPay expose a dedicated UPI Payment API?
Payin is documented as order creation plus payment URL or equivalent guidance. Whether UPI appears in the payer experience depends on products enabled for your merchant account—confirm during sandbox testing and with your account manager.
Is IFSC mandatory for payouts?
Documented India payout flows require IFSC and account details. Refer to the payout section in the India Payment API documentation.
What should my webhook endpoint return?
After signature verification and successful processing, respond with HTTP 200 and plain text OK. Otherwise the platform may retry POST delivery. Details: Merchant Callback API.
Where should engineers start?
India Payment API documentation → Signature → payin/payout sections → Callback. For gateway concepts across countries, read Payment Gateway API.
