Skip to main content

Challan Payment

A challan creates a unique payment URL bound to a customer's name, mobile, email, and amount. Send the link by email and SMS; on click the customer is taken to a confirmation page where they verify their details, then on to the payment page.

There are two endpoints — they accept the same parameters:

  • /v1/requestchallan — creates the link and dispatches the email/SMS.
  • /v1/generatechallanurl — returns the URL only; you handle delivery.

Endpoint

POST https://pgbiz.omniware.in/v1/requestchallan
POST https://pgbiz.omniware.in/v1/generatechallanurl
Content-Type: application/x-www-form-urlencoded

Request parameters

api_keystring (36)required
36-digit merchant key.
namestring (100)required
Name of the person to whom the invoice is addressed.
mobilestring (10)required
Phone number of the recipient.
emailstring (100)required
Email ID of the recipient.
amountdecimal(15,2)required
Amount the user needs to pay.
purposestring (100)required
Descriptive string telling the user what they're paying for.
hashstring (255)required

Computed as:

toUpper(sha512(SALT|amount|api_key|email|mobile|name|purpose))

Note the alphabetical-by-key order of values, salt-first. Same algorithm as everywhere else on the platform — see Hash calculation.

Sample request

curl -X POST https://pgbiz.omniware.in/v1/generatechallanurl \
-d "api_key=$API_KEY" \
-d "name=Amit Kumar" \
-d "mobile=9900990099" \
-d "email=amit@example.com" \
-d "amount=149.00" \
-d "purpose=Order 1001" \
-d "hash=$HASH"

Response

{
"data": {
"url": "https://pgbiz.omniware.in/challan/b39b0596-73c4-4b7e-b63d-bbc13361e044",
"uuid": "b39b0596-73c4-4b7e-b63d-bbc13361e044",
"tnp_id": 81600
}
}
FieldDescription
urlDistributable payment link.
uuidUnique identifier for this request.
tnp_idAnother unique identifier — use with paymentStatusById if you need to look up status.

Errors

CodeConstantTrigger
221GEN-UNAUTHORIZEDapi_key is incorrect, or hash is invalid.
998GEN-INVALID-PARAMSA required field is missing — name, email, mobile, amount, purpose, or hash.
{
"error": {
"code": 221,
"message": "GEN-UNAUTHORIZED - The api key field is incorrect"
}
}

Reconciling the payment

When the customer pays, Omniware fires the standard payment S2S webhook (see S2S Webhooks) and the payment shows up in Payment Status by order_id / transaction_id the same way as any other payment.