POST
/
billpay
/
create-customer-control-number
cURL
curl --request POST \
  --url https://api.clickpesa.com/third-parties/billpay/create-customer-control-number \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
  "billDescription": "Water Bill - July 2024",
  "billPaymentMode": "EXACT",
  "billAmount": 90900,
  "billReference": "CUSTOMJH121",
  "customerName": "John Doe",
  "customerEmail": "john@example.com",
  "customerPhone": "255712345678"
}'
{
  "billPayNumber": "55042914871931",
  "billDescription": "Generic Bamboo Chees",
  "billCustomerName": "Mr. Freddie Walker-Graham",
  "billAmount": 90900,
  "billPaymentMode": "EXACT"
}

Authorizations

Authorization
string
header
required

Authorization header containing the JWT access token returned from the generate token endpoint. The token already includes the Bearer prefix. Example: Authorization: Bearer eyJhbGciOi...

Body

application/json
customerName
string
required

Name of the customer

customerEmail
string

Email address of the customer (required if customerPhone is not provided)

customerPhone
string

Phone number of the customer (required if customerEmail is not provided), starting with country code and without the plus sign, e.g., 255712345678

billDescription
string

Description of the bill

Example:

"Water Bill - July 2024"

billPaymentMode
enum<string>
default:ALLOW_PARTIAL_AND_OVER_PAYMENT

Payment mode for the bill. Applied only when billAmount is set

Available options:
ALLOW_PARTIAL_AND_OVER_PAYMENT,
EXACT
billAmount
number

Amount of the bill

Example:

90900

billReference
string

Custom bill reference. If not provided, the system auto-generates one

Response

Successfully generated Customer BillPay Control Number

billPayNumber
string

BillPay number

Example:

"55042914871931"

billDescription
string

Description of the bill

Example:

"Generic Bamboo Chees"

billCustomerName
string

Name of the customer - for customer billpay numbers

Example:

"Mr. Freddie Walker-Graham"

billAmount
number

Amount of the bill

Example:

90900

billPaymentMode
string

Payment mode for the bill. Applied only when billAmount is set

Example:

"EXACT"