curl --request POST \
--url https://sandbox.cashfree.com/bbps/cou/v1/billers/request/ticket \
--header 'Content-Type: application/json' \
--header 'x-client-id: <api-key>' \
--header 'x-client-secret: <api-key>' \
--data '
{
"ticket_raise_request": {
"agent_id": "OU01XXXXINT001123456",
"txn_reference_id": "OU011010ABCD12345601",
"disposition": "D11",
"description": "Customer received no service despite a successful debit.",
"customer_mobile": "9876543210",
"customer_email_id": "customer@example.com",
"customer_name": "Rahul Sharma"
}
}
'import requests
url = "https://sandbox.cashfree.com/bbps/cou/v1/billers/request/ticket"
payload = { "ticket_raise_request": {
"agent_id": "OU01XXXXINT001123456",
"txn_reference_id": "OU011010ABCD12345601",
"disposition": "D11",
"description": "Customer received no service despite a successful debit.",
"customer_mobile": "9876543210",
"customer_email_id": "customer@example.com",
"customer_name": "Rahul Sharma"
} }
headers = {
"x-client-id": "<api-key>",
"x-client-secret": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'x-client-id': '<api-key>',
'x-client-secret': '<api-key>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
ticket_raise_request: {
agent_id: 'OU01XXXXINT001123456',
txn_reference_id: 'OU011010ABCD12345601',
disposition: 'D11',
description: 'Customer received no service despite a successful debit.',
customer_mobile: '9876543210',
customer_email_id: 'customer@example.com',
customer_name: 'Rahul Sharma'
}
})
};
fetch('https://sandbox.cashfree.com/bbps/cou/v1/billers/request/ticket', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://sandbox.cashfree.com/bbps/cou/v1/billers/request/ticket",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'ticket_raise_request' => [
'agent_id' => 'OU01XXXXINT001123456',
'txn_reference_id' => 'OU011010ABCD12345601',
'disposition' => 'D11',
'description' => 'Customer received no service despite a successful debit.',
'customer_mobile' => '9876543210',
'customer_email_id' => 'customer@example.com',
'customer_name' => 'Rahul Sharma'
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-client-id: <api-key>",
"x-client-secret: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://sandbox.cashfree.com/bbps/cou/v1/billers/request/ticket"
payload := strings.NewReader("{\n \"ticket_raise_request\": {\n \"agent_id\": \"OU01XXXXINT001123456\",\n \"txn_reference_id\": \"OU011010ABCD12345601\",\n \"disposition\": \"D11\",\n \"description\": \"Customer received no service despite a successful debit.\",\n \"customer_mobile\": \"9876543210\",\n \"customer_email_id\": \"customer@example.com\",\n \"customer_name\": \"Rahul Sharma\"\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-client-id", "<api-key>")
req.Header.Add("x-client-secret", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://sandbox.cashfree.com/bbps/cou/v1/billers/request/ticket")
.header("x-client-id", "<api-key>")
.header("x-client-secret", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"ticket_raise_request\": {\n \"agent_id\": \"OU01XXXXINT001123456\",\n \"txn_reference_id\": \"OU011010ABCD12345601\",\n \"disposition\": \"D11\",\n \"description\": \"Customer received no service despite a successful debit.\",\n \"customer_mobile\": \"9876543210\",\n \"customer_email_id\": \"customer@example.com\",\n \"customer_name\": \"Rahul Sharma\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://sandbox.cashfree.com/bbps/cou/v1/billers/request/ticket")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-client-id"] = '<api-key>'
request["x-client-secret"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"ticket_raise_request\": {\n \"agent_id\": \"OU01XXXXINT001123456\",\n \"txn_reference_id\": \"OU011010ABCD12345601\",\n \"disposition\": \"D11\",\n \"description\": \"Customer received no service despite a successful debit.\",\n \"customer_mobile\": \"9876543210\",\n \"customer_email_id\": \"customer@example.com\",\n \"customer_name\": \"Rahul Sharma\"\n }\n}"
response = http.request(request)
puts response.read_body{
"status": "ACCEPTED",
"message": "Ticket raise request accepted for processing",
"data": {
"ref_id": "TKREF4QOS7X1UGPY7JGUV444P10102202",
"status": "PROCESSING"
}
}{
"message": "bill_fetch_request.agent_id : is missing in the request. Value received: ",
"code": "bill_fetch_request.agent_id_missing",
"type": "invalid_request_error"
}{
"message": "authentication Failed",
"code": "request_failed",
"type": "authentication_error"
}{
"message": "Too many requests from IP. Check headers",
"code": "request_failed",
"type": "rate_limit_error"
}{
"message": "internal Server Error",
"code": "internal_error",
"type": "api_error"
}Raise a Ticket Request
Use this API to raise a support ticket for a previously processed bill payment.
This is an async API. It returns an acknowledgement with a ref_id.
Poll the Ticket Status API using ref_id to get the current status of your ticket.
Disposition codes
Disposition codes
Pass one of the following codes in the disposition field:
| Disposition code | Description | Type |
|---|---|---|
D11 | Transaction Successful, Amount Debited but services not received | Dispute |
D12 | Transaction Successful, Amount Debited but Service Disconnected or Service Stopped | Dispute |
D13 | Transaction Successful, Amount Debited but LPSC Late Payment Surcharge Charges added in next bill | Dispute |
D21 | Erroneously paid in wrong account | Dispute |
D22 | Duplicate Payment | Dispute |
D23 | Erroneously paid the wrong amount | Dispute |
D31 | Payment information not received from Biller or delay in receiving payment information from the Biller | Complaint |
D32 | Bill paid but amount not adjusted or still showing due amount | Complaint |
curl --request POST \
--url https://sandbox.cashfree.com/bbps/cou/v1/billers/request/ticket \
--header 'Content-Type: application/json' \
--header 'x-client-id: <api-key>' \
--header 'x-client-secret: <api-key>' \
--data '
{
"ticket_raise_request": {
"agent_id": "OU01XXXXINT001123456",
"txn_reference_id": "OU011010ABCD12345601",
"disposition": "D11",
"description": "Customer received no service despite a successful debit.",
"customer_mobile": "9876543210",
"customer_email_id": "customer@example.com",
"customer_name": "Rahul Sharma"
}
}
'import requests
url = "https://sandbox.cashfree.com/bbps/cou/v1/billers/request/ticket"
payload = { "ticket_raise_request": {
"agent_id": "OU01XXXXINT001123456",
"txn_reference_id": "OU011010ABCD12345601",
"disposition": "D11",
"description": "Customer received no service despite a successful debit.",
"customer_mobile": "9876543210",
"customer_email_id": "customer@example.com",
"customer_name": "Rahul Sharma"
} }
headers = {
"x-client-id": "<api-key>",
"x-client-secret": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'x-client-id': '<api-key>',
'x-client-secret': '<api-key>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
ticket_raise_request: {
agent_id: 'OU01XXXXINT001123456',
txn_reference_id: 'OU011010ABCD12345601',
disposition: 'D11',
description: 'Customer received no service despite a successful debit.',
customer_mobile: '9876543210',
customer_email_id: 'customer@example.com',
customer_name: 'Rahul Sharma'
}
})
};
fetch('https://sandbox.cashfree.com/bbps/cou/v1/billers/request/ticket', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://sandbox.cashfree.com/bbps/cou/v1/billers/request/ticket",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'ticket_raise_request' => [
'agent_id' => 'OU01XXXXINT001123456',
'txn_reference_id' => 'OU011010ABCD12345601',
'disposition' => 'D11',
'description' => 'Customer received no service despite a successful debit.',
'customer_mobile' => '9876543210',
'customer_email_id' => 'customer@example.com',
'customer_name' => 'Rahul Sharma'
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-client-id: <api-key>",
"x-client-secret: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://sandbox.cashfree.com/bbps/cou/v1/billers/request/ticket"
payload := strings.NewReader("{\n \"ticket_raise_request\": {\n \"agent_id\": \"OU01XXXXINT001123456\",\n \"txn_reference_id\": \"OU011010ABCD12345601\",\n \"disposition\": \"D11\",\n \"description\": \"Customer received no service despite a successful debit.\",\n \"customer_mobile\": \"9876543210\",\n \"customer_email_id\": \"customer@example.com\",\n \"customer_name\": \"Rahul Sharma\"\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-client-id", "<api-key>")
req.Header.Add("x-client-secret", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://sandbox.cashfree.com/bbps/cou/v1/billers/request/ticket")
.header("x-client-id", "<api-key>")
.header("x-client-secret", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"ticket_raise_request\": {\n \"agent_id\": \"OU01XXXXINT001123456\",\n \"txn_reference_id\": \"OU011010ABCD12345601\",\n \"disposition\": \"D11\",\n \"description\": \"Customer received no service despite a successful debit.\",\n \"customer_mobile\": \"9876543210\",\n \"customer_email_id\": \"customer@example.com\",\n \"customer_name\": \"Rahul Sharma\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://sandbox.cashfree.com/bbps/cou/v1/billers/request/ticket")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-client-id"] = '<api-key>'
request["x-client-secret"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"ticket_raise_request\": {\n \"agent_id\": \"OU01XXXXINT001123456\",\n \"txn_reference_id\": \"OU011010ABCD12345601\",\n \"disposition\": \"D11\",\n \"description\": \"Customer received no service despite a successful debit.\",\n \"customer_mobile\": \"9876543210\",\n \"customer_email_id\": \"customer@example.com\",\n \"customer_name\": \"Rahul Sharma\"\n }\n}"
response = http.request(request)
puts response.read_body{
"status": "ACCEPTED",
"message": "Ticket raise request accepted for processing",
"data": {
"ref_id": "TKREF4QOS7X1UGPY7JGUV444P10102202",
"status": "PROCESSING"
}
}{
"message": "bill_fetch_request.agent_id : is missing in the request. Value received: ",
"code": "bill_fetch_request.agent_id_missing",
"type": "invalid_request_error"
}{
"message": "authentication Failed",
"code": "request_failed",
"type": "authentication_error"
}{
"message": "Too many requests from IP. Check headers",
"code": "request_failed",
"type": "rate_limit_error"
}{
"message": "internal Server Error",
"code": "internal_error",
"type": "api_error"
}Authorizations
Your unique client identifier issued by Cashfree. You can find this in your Merchant Dashboard.
Your unique client secret issued by Cashfree. Keep this confidential and never expose it in client-side code. You can find this in your Merchant Dashboard.
Body
Request parameters to raise a ticket for a processed bill payment.
Show child attributes
Show child attributes
Response
Ticket raise request accepted for processing.
Always "ACCEPTED" when the ticket request is successfully queued.
"ACCEPTED"
Human-readable confirmation that the ticket request has been accepted for async processing.
"Ticket raise request accepted for processing"
Acknowledgement data returned immediately upon request acceptance.
Show child attributes
Show child attributes
Was this page helpful?