1. Bill Payments
Almara Pay Documentation
  • Introduction
  • Definitions
    • Data Types
    • Error Codes
    • MCCMNC Codes
  • Authorization
    • Overview
    • Token Request
      POST
    • Find Transaction Routes
      GET
    • Health Check
      GET
  • Payouts
    • Overview
    • Payment Order Request Information
    • Mobile Money Requests
      • Overview
      • Mobile Transfers- Safaricom (M-Pesa)
      • Mobile Transfers - Airtel Money
    • Payment Order Requests - Business Transfers
      POST
    • Payment Order Requests - Bank Transfers
      POST
    • Find Payment Order By OriginatorConversationId
      GET
    • Reject Order By OriginatorConversationId
      POST
  • Pay-Ins
    • Payment Links
      • Overview
      • Create Payment Link
      • Find Payment Links By Id
      • Update Payment Link
    • Express Deposits
      • Overview
      • Express Deposit Request
      • Find Express Deposit By OriginatorConversationId
    • C2B IPN (Callback)
      • C2B IPN Overview
  • Card Payments
    • Overview
    • Checkout Order Request
    • Query Checkout Request
    • Checkout Callback Request
  • Account Validation
    • Overview
    • Account Number Validation Request
    • Find KYC Status by SystemTraceAuditNumber
    • Account Validation
    • Find Account Validation Status by SystemTraceAuditNumber
  • Platform Services
    • Airtime Purchase
      • Overview
      • Airtime Purchase
      • Find Airtime Purchases By OriginatorConversationId
    • Customer Accounts
      • Balance Check
      • Find Charges By TransactionTypeId
    • Bill Payments
      • Overview
      • Bill Request Validation
        POST
      • Bill Request Payment
        POST
      • Find Bill Services
        GET
      • Find Bill Number By Service Id and Account Number
        GET
      • Find Bill Request By Originator Converstion Id
        GET
      • Bill Number
        POST
  1. Bill Payments

Bill Number

POST
/v1/bill-numbers
This is a POST request that is responsible for saving billing information for a particular service.
Note: A valid token is required for authentication as it expires after every hour. Refer to Token Request to generate a new token.
The required Json body contains :

serviceId: This is a number that represents the different services available. Check the Find Bill Services api for the list of service Ids
accountNumber: Account number reference for pay bill transactions.
phoneNumber: This is the mobile number of the customer doing the payment
transactionDesc: This is a brief description of the payment.
RemindMeDueDate: This is a boolean, that can be set to notify a customer of the due date of payment of a service.

Data definition#

Field NameData TypeOptions
serviceIdintegerMandatory
accountNumberstringMandatory
phoneNumberstringOptional
transactionDescstringOptional
RemindMeDueDatebooleanOptional

Sample success response:#

{
    "message": {
        "appDomainName": "TEST",
        "remarks": "Bill Number submission accepted",
        "serviceCode": null,
        "accountCustomerName": "LTD EXECUTIVE CONCEPTS",
        "systemConversationId": "01100000-0017-0a00-1eb8-08de8fec6193",
        "lastKnownBalance": 231.56,
        "dueDate": "2020-07-03",
        "verified": true,
        "timestamp": "2026-04-01T12:44:16.3555322Z"
    }
}

Sample failed response:#

{
    "appDomainName": "LIVE",
    "timestamp": "2021-10-18T07:14:53.1362329Z",
    "reason": "Account number number is invalid."
}

Sample validation errors response:#

{
    "errors": {
        "AccountNumber": [
            "The AccountNumber field is required."
        ]
    },
    "type": "https://tools.ietf.org/html/rfc7231#section-6.5.1",
    "title": "One or more validation errors occurred.",
    "status": 400,
    "traceId": "00-03529608f740804d9e7bf8210d6e1cb9-df15d6e73e04804c-00"
}

Request

Authorization
Body Params application/json

Examples

Responses

🟢200Success
application/json
Body

Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request POST '/v1/bill-numbers' \
--header 'Content-Type: application/json' \
--data-raw '{
    "serviceId": "bc97d2b1-4828-f111-bc5a-0w7d952d79b7",
    "accountNumber": "1111777",
    "phoneNumber": "254710000000",
    "transactionDesc": "TransactionDesc",
    "RemindMeDueDate": true
}'
Response Response Example
{}
Modified at 2026-04-30 05:53:25
Previous
Find Bill Request By Originator Converstion Id
Built with