Payments & Billing
Configure payment gateways and modes, store gateway credentials, initiate online payments, and reconcile against billing transactions and balance. Payment-provider partners integrate gateway configuration and reconciliation here. Order-level payments are covered under Orders.
https://zopping.comPayment gateways
The gateway providers available to a retailer (e.g. Razorpay, PayU) and the payment modes each supports. requiredConfigs lists the credential fields a provider needs.
| Field | Type | Description |
|---|---|---|
id | stringread-only | |
providerName | stringrequired | Gateway vendor. |
status | string | |
requiredConfigs | object[] | Credential fields the provider needs. |
paymentModes | object[] | Supported modes + per-mode rate. |
/api/account-service/payment-gatewayList payment gateways
| Parameter | Type | Description |
|---|---|---|
organizationIdrequired | string· query |
{
"paymentgateway": [
{
"id": "pg_1",
"providerName": "Razorpay",
"status": "ENABLED",
"paymentModes": [
{
"paymentMode": "UPI",
"rate": "0.00"
}
]
}
],
"count": 1
}Payment modes
The individual methods (UPI, CARD, NETBANKING, WALLET, COD) with their display config and commission rate.
/api/account-service/payment-modeList payment modes
| Parameter | Type | Description |
|---|---|---|
organizationIdrequired | string· query |
Gateway credentials
Store the access/secret keys for a gateway, at organization or store level (isStoreLevel). These secrets are write-only from your side.
| Field | Type | Description |
|---|---|---|
organizationId | stringrequired | |
accessKey | string | Gateway public key. |
secretKey | stringrequired | Gateway private key. |
storeId | integer | Set for store-level credentials. |
isStoreLevel | boolean |
/api/account-service/online-paymentStore gateway credentials
{
"organizationId": "<org-id>",
"accessKey": "rzp_live_xxx",
"secretKey": "••••••",
"isStoreLevel": false
}/api/account-service/online-paymentList credentials
| Parameter | Type | Description |
|---|---|---|
organizationIdrequired | string· query |
/api/account-service/online-paymentUpdate credentials
Online payments
Initiate an online payment and track it to completion. The create response returns a redirectUrl + transactionHmac to hand off to the gateway; poll the list/get endpoints for final status.
| Field | Type | Description |
|---|---|---|
id | integerread-only | |
amount | numberrequired | |
referenceNumber | stringread-only | Unique payment reference. |
status | enum | PENDING · COMPLETED · FAILED. |
gatewayTransactionId | stringread-only | For reconciliation. |
/api/billing-service/online-paymentInitiate an online payment
{
"organizationId": "<org-id>",
"amount": 1500.5,
"service": "WHATSAPP",
"duration": "2026-06"
}{
"transactionAmount": "1500.50",
"redirectUrl": "https://pay.gateway/...",
"transactionId": 90871,
"transactionHmac": "…",
"currency": "INR"
}/api/billing-service/online-paymentList online payments
| Parameter | Type | Description |
|---|---|---|
organizationIdrequired | string· query | |
referenceNumber | string· query | |
status | enum· query |
/api/billing-service/online-payment/{id}Get a payment
| Parameter | Type | Description |
|---|---|---|
idrequired | integer· path | |
organizationIdrequired | string· query |
Transactions
The billing ledger. Filter by type (CREDIT/DEBIT), status, date range and service. Use gatewayTransactionId to reconcile against your records.
| Field | Type | Description |
|---|---|---|
id | integerread-only | |
amount | stringread-only | |
currency | stringread-only | |
type | enum | CREDIT or DEBIT. |
status | enum | COMPLETED · PENDING · FAILED. |
gatewayTransactionId | stringread-only | |
verificationStatus | enum |
/api/billing-service/transactionList transactions
| Parameter | Type | Description |
|---|---|---|
organizationIdrequired | string· query | |
page | integer· query | |
perPage | integer· query | Default 20, max 100. |
type | enum· query | CREDIT / DEBIT. |
status | enum· query | |
startDate | string· query | yyyy-MM-dd HH:mm:ss. |
endDate | string· query |
/api/billing-service/transaction/{id}Get a transaction
| Parameter | Type | Description |
|---|---|---|
idrequired | integer· path | |
organizationIdrequired | string· query |
Balance
The current ledger balance for the organization.
/api/billing-service/balanceGet balance
| Parameter | Type | Description |
|---|---|---|
organizationIdrequired | string· query |
{
"organizationId": "<org-id>",
"balance": 12450.75
}