Create Invoice
POST https://pgbiz.omniware.in/v1/createinvoice
Content-Type: application/x-www-form-urlencoded
Request parameters
api_keystring (40)required40-digit merchant key issued at onboarding.
namestring (50)requiredCustomer name.
emailstring (50)requiredCustomer email — invoice is sent here.
phonenumber(10)requiredCustomer mobile — SMS goes here (additional charges may apply).
invoice_nonumber(10)requiredNumeric invoice number. Appears on the PDF.
due_dateDate (d-m-Y)Optional due date. Must be in the future. Example: 08-02-2026.
item_descriptionstring (140)requiredOne-line summary that appears on the PDF as a line item.
item_detailsJSONOptional list of line items for the View Details panel:
[
{
"name": "Pen",
"quantity": 4,
"amount": 8.01,
"tax1": 1.04,
"tax2": 1.04,
"tax3": 0
}
]
For each item, total_amount = (quantity * amount) + tax1 + tax2 + tax3. The sum across items must match the top-level amount.
amountdecimal(10,2)requiredTotal invoice amount including any taxes.
hashstring (255)requiredSample request
curl -X POST https://pgbiz.omniware.in/v1/createinvoice \
-d "api_key=$API_KEY" \
-d "name=Shivakrishna T" \
-d "email=shivakrishna@example.com" \
-d "phone=9999988888" \
-d "invoice_no=13823282" \
-d "due_date=10-06-2024" \
-d "item_description=Monthly subscription" \
-d "amount=5.00" \
-d "hash=$HASH"
Response
{
"data": {
"code": "SUCCESS",
"message": "Invoice created",
"invoice_no": 13823282,
"status": "created",
"invoice_total_amount": "5.00",
"invoice_date": "11-May-2024",
"invoice_due_date": "10-Jun-2024",
"invoice_pay_link": "https://pgbiz.omniware.in/invoice/1a75de95-407d-4b57-b50a-b3e449a365b0"
}
}
Errors:
{ "error": { "code": "GEN-INVALID-HASH", "message": "The hash key field is invalid" } }
{ "error": { "code": "GEN-INVOICE-EXISTS", "message": "Invoice already exists." } }
The invoice_pay_link is a hosted payment page. When the customer pays, all your usual webhooks fire as if they had used Payment Request directly.