Invoicing
Learn more about invoicing APIs and their usage.
Guidelines
Below are some of the points you must be aware of while calling Swipez APIs:
All API requests and responses are in JSON format.
POST requests should include
ContentType: application/json
All API response have status, message, and data.
Swipez uses API keys to allow access to the API. Once you have signed up at our merchant site, you will be able to see your AccessKey and SecretKey.
Rate limiting
The API is rate limited per user. You will receive a 429 HTTP status code if you exceed the rate limit. The rate limit is 30 requests per minute per user and is subject to change.
Quick Reference
Save invoice
POST
/api/v3/merchant/invoice/save
This endpoint allows you to save and send invoices to customers. Download invoice format JSON with below steps. 1. Go to invoice format list https://www.swipez.in/merchant/template/viewlist 2. Click on action button. 3. Choose "Upload Invoice v3 JSON" option.
Request Body
{
"reqtime": "2021-03-01 18:59:41",
"resptime": "2021-03-01 18:59:41",
"srvrsp": [
{
"invoice_id": "R000029148",
"code": "12121",
"bill_date": "2021-03-01",
"patron_name": "Rohit Sharma",
"email_id": "user@swipez.in",
"mobile": "9999999999",
"amount": "590.00",
"short_url": "https://go.swipez.in/9vb786"
}
],
"errcode": 0,
"errmsg": "",
"errlist": null
}
Sample code
curl --location --request POST '<BASE URL>/api/v3/merchant/invoice/save' \
--header 'Content-Type: application/json' \
--data-raw '{
"access_key_id": "<GET ACCESS KEY ID FROM YOUR ACCOUNT>",
"secret_access_key": "<GET SECRET ACCESS KEY FROM YOUR ACCOUNT>",
"template_id": "<GET TEMPLATE ID FROM YOUR ACCOUNT>",
"invoice": [
{
"customer_code": "Cust-1",
"bill_cycle_name": "Feb 21",
"bill_date": "2021-02-01",
"due_date": "2021-02-05",
"invoice_properties": {
"notify_patron": "1"
},
"custom_header_fields": [
{
"id": "1853191",
"name": "Invoice no",
"type": "text",
"value": "INV-5"
}
],
"particular_rows": [
{
"item": "Product name",
"sac_code": "9899",
"description": "Product description",
"gst": "18",
"total_amount": "1500.00"
}
],
"tax_rows": [
{
"name": "IGST@18%",
"percentage": "18.00",
"applicable_on": "1500.00"
}
],
"new_customer": {
"customer_code": "",
"customer_name": "",
"email": "",
"mobile": "",
"address": "",
"city": "",
"state": "",
"zipcode": "",
"custom_fields": [
{
"id": "845",
"name": "GST",
"type": "gst",
"value": ""
}
]
},
"settlement": {
"access_key_id": "<GET ACCESS KEY ID FROM YOUR ACCOUNT>",
"secret_access_key": "<GET SECRET ACCESS KEY FROM YOUR ACCOUNT>",
"invoice_id": "",
"paid_date": "2022-02-23",
"amount": "18.00",
"mode": "Online",
"bank_name": "",
"bank_ref_no": "1234567",
"cheque_no": "",
"cash_paid_to": "",
"notify": "1",
"attach_invoice_pdf": "1"
}
}
]
}'
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => '<BASE URL>/api/v3/merchant/invoice/save',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS =>'{
"access_key_id": "<GET ACCESS KEY ID FROM YOUR ACCOUNT>",
"secret_access_key": "<GET SECRET ACCESS KEY FROM YOUR ACCOUNT>",
"template_id": "<GET TEMPLATE ID FROM YOUR ACCOUNT>",
"invoice": [
{
"customer_code": "Cust-1",
"bill_cycle_name": "Feb 21",
"bill_date": "2021-02-01",
"due_date": "2021-02-05",
"invoice_properties": {
"notify_patron": "1"
},
"custom_header_fields": [
{
"id": "1853191",
"name": "Invoice no",
"type": "text",
"value": "INV-5"
}
],
"particular_rows": [
{
"item": "Product name",
"sac_code": "9899",
"description": "Product description",
"gst": "18",
"total_amount": "1500.00"
}
],
"tax_rows": [
{
"name": "IGST@18%",
"percentage": "18.00",
"applicable_on": "1500.00"
}
],
"new_customer": {
"customer_code": "",
"customer_name": "",
"email": "",
"mobile": "",
"address": "",
"city": "",
"state": "",
"zipcode": "",
"custom_fields": [
{
"id": "845",
"name": "GST",
"type": "gst",
"value": ""
},
{
"id": "846",
"name": "Company Name",
"type": "company_name",
"value": ""
}
]
},
"settlement": {
"access_key_id": "<GET ACCESS KEY ID FROM YOUR ACCOUNT>",
"secret_access_key": "<GET SECRET ACCESS KEY FROM YOUR ACCOUNT>",
"invoice_id": "",
"paid_date": "2022-02-23",
"amount": "18.00",
"mode": "Online",
"bank_name": "",
"bank_ref_no": "1234567",
"cheque_no": "",
"cash_paid_to": "",
"notify": "1",
"attach_invoice_pdf": "1"
}
}
]
}',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
Update invoice
POST
/api/v3/merchant/invoice/update
This endpoint allows you to update created invoice. Download invoice format JSON with below steps. 1. Go to invoice format list https://www.swipez.in/merchant/template/viewlist 2. Click on action button. 3. Choose "Update Invoice v3 JSON" option.
Request Body
{
"reqtime": "2021-03-01 18:59:41",
"resptime": "2021-03-01 18:59:41",
"srvrsp": [
{
"invoice_id": "R000029148",
"code": "12121",
"bill_date": "2021-03-01",
"patron_name": "Rohit Sharma",
"email_id": "user@swipez.in",
"mobile": "9999999999",
"amount": "590.00",
"short_url": "https://go.swipez.in/9vb786"
}
],
"errcode": 0,
"errmsg": "",
"errlist": null
}
Sample code
curl --location --request POST '<BASE URL>/api/v3/merchant/invoice/update' \
--header 'Content-Type: application/json' \
--data-raw '{
"access_key_id": "<GET ACCESS KEY ID FROM YOUR ACCOUNT>",
"secret_access_key": "<GET SECRET ACCESS KEY FROM YOUR ACCOUNT>",
"invoice_id": "<SYSTEM GENERATED INVOICE ID>",
"invoice":
{
"customer_code": "Cust-1",
"bill_cycle_name": "Feb 21",
"bill_date": "2021-02-01",
"due_date": "2021-02-05",
"invoice_properties": {
"notify_patron": "1"
},
"custom_header_fields": [
{
"id": "1853191",
"name": "Invoice no",
"type": "text",
"value": "INV-5"
}
],
"particular_rows": [
{
"item": "Product name",
"sac_code": "9899",
"description": "Product description",
"gst": "18",
"total_amount": "1500.00"
}
],
"tax_rows": [
{
"name": "IGST@18%",
"percentage": "18.00",
"applicable_on": "1500.00"
}
],
"new_customer": {
"customer_code": "",
"customer_name": "",
"email": "",
"mobile": "",
"address": "",
"city": "",
"state": "",
"zipcode": "",
"custom_fields": [
{
"id": "845",
"name": "GST",
"type": "gst",
"value": ""
},
{
"id": "846",
"name": "Company Name",
"type": "company_name",
"value": ""
}
]
}
}
}'
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => '<BASE URL>/api/v3/merchant/invoice/save',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS =>'{
"access_key_id": "<GET ACCESS KEY ID FROM YOUR ACCOUNT>",
"secret_access_key": "<GET SECRET ACCESS KEY FROM YOUR ACCOUNT>",
"invoice_id": "<SYSTEM GENERATED INVOICE ID>",
"invoice":
{
"customer_code": "Cust-1",
"bill_cycle_name": "Feb 21",
"bill_date": "2021-02-01",
"due_date": "2021-02-05",
"invoice_properties": {
"notify_patron": "1"
},
"custom_header_fields": [
{
"id": "1853191",
"name": "Invoice no",
"type": "text",
"value": "INV-5"
}
],
"particular_rows": [
{
"item": "Product name",
"sac_code": "9899",
"description": "Product description",
"gst": "18",
"total_amount": "1500.00"
}
],
"tax_rows": [
{
"name": "IGST@18%",
"percentage": "18.00",
"applicable_on": "1500.00"
}
],
"new_customer": {
"customer_code": "",
"customer_name": "",
"email": "",
"mobile": "",
"address": "",
"city": "",
"state": "",
"zipcode": "",
"custom_fields": [
{
"id": "845",
"name": "GST",
"type": "gst",
"value": ""
}
]
}
}
}',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
Settle invoice
POST
/api/v2/merchant/invoice/settle
This endpoint allows you to settle invoice with transaction details
Request Body
{
"reqtime": "2021-03-01 20:21:09",
"resptime": "2021-03-01 20:21:09",
"srvrsp": {
"invoice_id": "R000029148",
"code": "12121",
"transaction_id": "H000001297",
"paid_date": "2021-03-01",
"patron_name": "Rohit Sharma",
"email_id": "user@swipez.in",
"amount": "500.00"
},
"errcode": 0,
"errmsg": "",
"errlist": null
}
Sample code
curl --location --request POST '<BASE URL>/api/v2/merchant/invoice/settle' \
--header 'Content-Type: application/json' \
--data-raw '{
"access_key_id": "<GET ACCESS KEY ID FROM YOUR ACCOUNT>",
"secret_access_key": "<GET SECRET ACCESS KEY FROM YOUR ACCOUNT>",
"invoice_id": "<SYSTEM GENERATED INVOICE ID>",
"paid_date": "2021-03-01",
"amount": "500.00",
"mode": "Online",
"bank_name": "",
"bank_ref_no": "8749540",
"cheque_no": "",
"cash_paid_to": "",
"notify": "1"
}'
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => '<BASE URL>/api/v2/merchant/invoice/settle',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS =>'{
"access_key_id": "<GET ACCESS KEY ID FROM YOUR ACCOUNT>",
"secret_access_key": "<GET SECRET ACCESS KEY FROM YOUR ACCOUNT>",
"invoice_id": "<SYSTEM GENERATED INVOICE ID>",
"paid_date": "2021-03-01",
"amount": "500.00",
"mode": "Online",
"bank_name": "",
"bank_ref_no": "8749540",
"cheque_no": "",
"cash_paid_to": "",
"notify": "0"
}',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
Get invoice details
POST
/api/v1/merchant/invoice/detail
This endpoint allows you to get invoice details.
Request Body
{
"reqtime": "2021-03-02 09:40:48",
"resptime": "2021-03-02 09:40:49",
"srvrsp": {
"invoice_id": "R000029148",
"invoice_number": "INV-5",
"bill_date": "01 Mar 2021",
"due_date": "01 Mar 2021",
"cycle_name": "Test",
"customer_code": "12121",
"customer_name": "Rohit Sharma",
"email": "user@swipez.in",
"mobile": "9999999999",
"address": "26/2, Herms paras, near Joggers park,Kalyani nagar",
"city": "Delhi",
"zipcode": "490014",
"state": "Delhi",
"narrative": "",
"absolute_cost": "590.00",
"paid_amount": "0.00",
"advance": "0.00",
"previous_due": "0.00",
"late_fee": "0.00",
"franchise_id": "0",
"short_url": "https://shr.swipez.in/9vb987",
"invoice_status": "Paid offline",
"custom_column": [
{
"column_name": "Custom column 1",
"value": "Custom value"
}
],
"particular": [
{
"item": "Maintenance Charges",
"sac_code": "99998",
"description": "Test",
"total_amount": "500.00"
}
],
"tax": [
{
"tax_name": "CGST@9%",
"percentage": "9.00",
"applicable_on": "500.00",
"amount": "45.00",
"narrative": ""
},
{
"tax_name": "SGST@9%",
"percentage": "9.00",
"applicable_on": "500.00",
"amount": "45.00",
"narrative": ""
}
]
},
"errcode": null,
"errmsg": "",
"errlist": null
}
Sample code
curl --location --request POST '<BASE URL>/api/v1/merchant/invoice/detail' \
--header 'Content-Type: application/json' \
--data-raw '{
"access_key_id": "<GET ACCESS KEY ID FROM YOUR ACCOUNT>",
"secret_access_key": "<GET SECRET ACCESS KEY FROM YOUR ACCOUNT>",
"invoice_id": "<SYSTEM GENERATED INVOICE ID>"
}'
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => '<BASE URL>/api/v1/merchant/invoice/detail',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS =>'{
"access_key_id": "<GET ACCESS KEY ID FROM YOUR ACCOUNT>",
"secret_access_key": "<GET SECRET ACCESS KEY FROM YOUR ACCOUNT>",
"invoice_id": "<SYSTEM GENERATED INVOICE ID>"
}',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
Invoice list
POST
/api/v1/merchant/invoice/getlist
This endpoint allows you to get list of invoices.
Request Body
{
"reqtime": "2021-03-02 10:09:15",
"resptime": "2021-03-02 10:09:15",
"total_records": 2,
"srvrsp": [
{
"invoice_id": "R000029148",
"invoice_number": null,
"bill_date": "2021-03-01",
"due_date": "2021-03-01",
"sent_date": "2021-03-01 18:59:41",
"customer_code": "12121",
"customer_name": "Rohit Sharma ",
"customer_group": "All,Cricket",
"email": "rohit@swipez.in",
"mobile": "9999999999",
"address": "26/2, Herms paras, near Joggers park,Kalyani nagar",
"city": "Mumbai",
"state": "Maharashtra",
"zipcode": "400214",
"amount": "590.00",
"paid_amount": "0.00",
"status": "Paid offline",
"cycle_name": "Test",
"franchise_id": "0",
"franchise_name": null,
"created_by": "Test company"
},
{
"invoice_id": "R000029147",
"invoice_number": "INV655",
"bill_date": "2021-02-15",
"due_date": "2021-02-15",
"sent_date": "2021-02-15 16:36:01",
"customer_code": "C000359",
"customer_name": "Virat Kohli",
"customer_group": "All",
"email": "virat@swipez.in",
"mobile": "9999999998",
"address": "",
"city": "Delhi",
"state": "Delhi",
"zipcode": "400014",
"amount": "826.00",
"paid_amount": "0.00",
"status": "Paid offline",
"cycle_name": "Test Fee",
"franchise_id": "0",
"franchise_name": null,
"created_by": "Test company"
}
],
"errcode": null,
"errmsg": "",
"errlist": null
}
Sample code
curl --location --request POST '<BASE URL>/api/v1/merchant/invoice/getlist' \
--header 'Content-Type: application/json' \
--data-raw '{
"access_key_id": "<GET ACCESS KEY ID FROM YOUR ACCOUNT>",
"secret_access_key": "<GET SECRET ACCESS KEY FROM YOUR ACCOUNT>",
"from_date": "2021-02-04",
"to_date": "2021-03-03",
"filter_by": "bill_date",
"invoice_status": "",
"customer_code": "",
"group": "",
"franchise_id": ""
}'
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => '<BASE URL>/api/v1/merchant/invoice/getlist',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS =>'{
"access_key_id": "<GET ACCESS KEY ID FROM YOUR ACCOUNT>",
"secret_access_key": "<GET SECRET ACCESS KEY FROM YOUR ACCOUNT>",
"from_date": "2021-02-04",
"to_date": "2021-03-03",
"filter_by": "bill_date",
"invoice_status": "",
"customer_code": "",
"group": "",
"franchise_id": ""
}',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
Save subscription
POST
/api/v1/merchant/subscription/save
This endpoint allows you to save recurring invoicing.
Request Body
Sample code
curl --location --request POST '<BASE URL>/api/v1/merchant/subscription/save' \
--header 'Content-Type: application/json' \
--data-raw '{
"access_key_id": "<GET ACCESS KEY ID FROM YOUR ACCOUNT>",
"secret_access_key": "<GET SECRET ACCESS KEY FROM YOUR ACCOUNT>",
"template_id": "<GET TEMPLATE ID FROM YOUR ACCOUNT>",
"mode": "Monthly",
"repeat_every": "3",
"start_date": "2021-03-01",
"due_date": "2021-03-07",
"end_mode": "Never",
"occurences": "",
"end_date": "",
"carry_forword_dues": "0",
"invoice":
{
"customer_code": "Cust-1",
"bill_cycle_name": "Feb 21",
"bill_date": "2021-02-01",
"due_date": "2021-02-05",
"invoice_properties": {
"notify_patron": "1"
},
"custom_header_fields": [
{
"id": "1853191",
"name": "Invoice no",
"type": "text",
"value": "INV-5"
}
],
"particular_rows": [
{
"item": "Product name",
"sac_code": "9899",
"description": "Product description",
"gst": "18",
"total_amount": "1500.00"
}
],
"tax_rows": [
{
"name": "IGST@18%",
"percentage": "18.00",
"applicable_on": "1500.00"
}
],
"new_customer": {
"customer_code": "",
"customer_name": "",
"email": "",
"mobile": "",
"address": "",
"city": "",
"state": "",
"zipcode": "",
"custom_fields": [
{
"id": "845",
"name": "GST",
"type": "gst",
"value": ""
}
]
}
}
}'
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => '<BASE URL>/api/v1/merchant/subscription/save',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS =>'{
"access_key_id": "<GET ACCESS KEY ID FROM YOUR ACCOUNT>",
"secret_access_key": "<GET SECRET ACCESS KEY FROM YOUR ACCOUNT>",
"template_id": "<GET TEMPLATE ID FROM YOUR ACCOUNT>",
"mode": "Monthly",
"repeat_every": "3",
"start_date": "2021-03-01",
"due_date": "2021-03-07",
"end_mode": "Never",
"occurences": "",
"end_date": "",
"carry_forword_dues": "0",
"invoice":
{
"customer_code": "Cust-1",
"bill_cycle_name": "Feb 21",
"bill_date": "2021-02-01",
"due_date": "2021-02-05",
"invoice_properties": {
"notify_patron": "1"
},
"custom_header_fields": [
{
"id": "1853191",
"name": "Invoice no",
"type": "text",
"value": "INV-5"
}
],
"particular_rows": [
{
"item": "Product name",
"sac_code": "9899",
"description": "Product description",
"gst": "18",
"total_amount": "1500.00"
}
],
"tax_rows": [
{
"name": "IGST@18%",
"percentage": "18.00",
"applicable_on": "1500.00"
}
],
"new_customer": {
"customer_code": "",
"customer_name": "",
"email": "",
"mobile": "",
"address": "",
"city": "",
"state": "",
"zipcode": "",
"custom_fields": [
{
"id": "845",
"name": "GST",
"type": "gst",
"value": ""
}
]
}
}
}',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
Delete invoice
POST
/api/v3/merchant/invoice/deleteInvoice
This endpoint allows you to delete or cancel the invoice.
Request Body
{
"reqtime": "2022-02-25 18:59:19",
"resptime": "2022-02-25 18:59:19",
"srvrsp": {
"invoice_id": "R000030213"
},
"errcode": 0,
"errmsg": "",
"errlist": null
}
Sample Code
curl --location --request POST '<BASE URL>/api/v3/merchant/invoice/deleteInvoice' \
--header 'Content-Type: application/json' \
--data-raw '{
"access_key_id": "<GET ACCESS KEY ID FROM YOUR ACCOUNT>",
"secret_access_key": "<GET SECRET ACCESS KEY FROM YOUR ACCOUNT>",
"invoice_id": "<SYSTEM GENERATED INVOICE ID>",
"status": "12" //12 cancelled, 13 deleteted
}'
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => '<BASE URL>/api/v3/merchant/invoice/deleteInvoice',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS =>'{
"access_key_id": "<GET ACCESS KEY ID FROM YOUR ACCOUNT>",
"secret_access_key": "<GET SECRET ACCESS KEY FROM YOUR ACCOUNT>",
"invoice_id": "<SYSTEM GENERATED INVOICE ID>",
"status": "12" //12 cancelled, 13 deleteted
}',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
Last updated