Corporate
Utility Bill Payment
Utility Bill Payment

Description

These APIs simplify and automate utility bill payments for corporate clients. They offer a centralised solution to initiate, monitor, and complete transactions efficiently and accurately.

In order to subscribe, Please

  • Overview
  • APIs Offered
    Bill Payment API

    This API streamlines bill settlement by instantly fetching bill amounts and enabling seamless payment processing with the service providers like ADDC, AADC, SEWA, DEWA, SALIK, NOQODI, ETISALAT, DU, etc.

    Bill Payment API
    View API Specifications

    This API streamlines bill settlement by instantly fetching bill amounts and enabling seamless payment processing with the service providers like ADDC, AADC, SEWA, DEWA, SALIK, NOQODI, ETISALAT, DU, etc.

    NOTE:

    • Applications must get the token using the “Get Token API," which will provide the access token details. This token must be used for the subsequent interactions of RESTful APIs. Tokens will be valid for 180s

    Flow Chart

    Image
    Flow Chart Bill Payment API

    What operations can be performed?

    1. billInquiry: This service is a POST method and enables corporates to retrieve the pending bill amount in real-time.

    Request Headers:

    Fields
    Description
    Mandatory/Optional
    Data Type
    Length
    Sample Value
    clientId
    Unique client ID provided by Mashreq to corporate.
    Mandatory
    STRING
     
     
    Authorization
    Bearer Token received from get token API with respect to Scope
    Mandatory
    STRING
     
     

    Request Parameters:

    Fields
    Description
    Mandatory (M) fields based on Service Providers
    Data Type
    Length
    Sample Value
     
     
    AADC
    ADDC
    DU-GSM
    DU-LANDLINE
    SEWA
    DEWA
    SALIK
    NOQ ODI
    Etisalat-D
    Etisalat-B
     
     
     
    cifNumber
    Unique CIF number
    M
    M
    M
    M
    M
    M
    M
    M
    M
    M
    STRING
    Max 9
    123456789
    billList
    List of billing details
    M
    M
    M
    M
    M
    M
    M
    M
    M
    M
    ARRAY
     
     
    biller
    Service provider's ID
    M
    M
    M
    M
    M
    M
    M
    M
    M
    M
    STRING
    Max 16
    ETISALAT
    consumerNo
    Consumer number
    M
    M
    M
    M
    M
    M
    M
    M
    M
    M
    STRING
    Max 8
    31300239
    customerName
    Name of the customer
    M
    M
    M
    M
    M
    M
    M
    M
    M
    M
    STRING
    Max 16
    Test
    billType
    Type of bill
    NA
    NA
    GM
    LN
    NA
    NA
    NA
    NA
    DIA LUP
    BRO ADB AND
    STRING
    Max 35
    GM (for DU-GSM) LN (for DU-LANDLINE) DIALUP (for ETISALAT-DIALUP) BROADBAND (for ETISALAT-Broadband)
    authCode
    Authorisation code
    NA
    NA
    NA
    NA
    NA
    NA
    M
    NA
    NA
    NA
    STRING
     
     

    Response Parameters:

    Fields
    Description
    Mandatory/Optional
    Data Type
    Length
    Sample Value
    cifNumber
    Unique CIF number
    Mandatory
    STRING
    Max 9
    123456789
    status
    Status of inquiry request.
    Mandatory
    STRING
     
    SUCCESS
    description
    Narrative status of the request.
    Mandatory
    STRING
     
    ALL_BILL_FETCH_SUCCESS
    billList
    List containing billing details
    Mandatory
    ARRAY
     
     
    biller
    Service provider's ID
    Mandatory
    STRING
    Max 16
    ETISALAT
    billType
    Type of bill
    Mandatory
    STRING
    Max 35
    DIALUP
    consumerNo
    Consumer number
    Mandatory
    STRING
    Max 8
    31300239
    customerName
    Name of the customer
    Mandatory
    STRING
    Max 16
    Test
    authCode
    Authorisation code
    Mandatory only for SALIK
    STRING
     
     
    dueAmount
    Amount due
    Mandatory
    STRING
    Max 16
    -38560.09
    dueAmountCurrency
    Due amount currency code
    Mandatory
    STRING
    3
    AED
    billRefNo
    Bill reference number
    Mandatory
    STRING
    Max 20
    17520256117500365321
    enquiryDate
    Date of inquiry
    Mandatory
    STRING
     
    2025-06-24 (YYYY-MM-DD)
    status
    Status of the request.
    Mandatory
    STRING
     
    SUCCESS
    description
    Status description
    Mandatory
    STRING
     
    Bill amount fetched

    Status Code Information:

    Status
    Status Code
    Description
    Success
    200
    Payment request has been completed
     
    201
    Request in-progress
    Rejected
    400
    CIF is mandatory
     
    400
    Account max length is 12 digits
     
    400
    Allowed value of Account should be Numeric
     
    400
    BATCH ID MANDATORY
     
    400
    Maximum length exceeds for BATCH ID
     
    400
    Bill amount is invalid
     
    400
    currency length should be 3 characters
     
    400
    txnCcy should be AED
     
    400
    Invalid consumer ID
     
    400
    Entered PIN should be of 4 numeric digits
     
    400
    Debit account mentioned does not exist for given CIF
     
    400
    Invalid account for given CIF
     
    400
    Biller is mandatory
     
    400
    Invalid biller
     
    400
    Invalid amount
     
    401
    Multiple Client ids found
     
    401
    Invalid client id or secret code
     
    401
    Unauthorized CIF - "CIF_Number"
     
    401
    API_BANKING_DISABLED for CIF - "CIF_Number"
    Failed
    500
    Due technical error

    2. billPayment: This POST method helps to initiate bill payment transaction with the service provider. 

    Request Headers:

    Fields
    Description
    Mandatory/Optional
    Data Type
    Length
    Sample Value
    clientId
    Unique client ID provided by Mashreq to corporate.
    Mandatory
    STRING
     
     
    Authorization
    Bearer Token received from get token API with respect to Scope
    Mandatory
    STRING
     
     

    Request Parameters:

    Fields
    Description
    Mandatory (M) fields based on Service Providers
    Data Type
    Length
    Sample Value
     
     
    AADC
    ADDC
    DU-GSM
    DU-LANDLINE
    SEWA
    DEWA
    SALIK
    NOQ ODI
    Etisalat-D
    Etisalat-B
     
     
     
    cifNumber
    Unique CIF number
    M
    M
    M
    M
    M
    M
    M
    M
    M
    M
    STRING
    Max 9
    010150935
    batchId
    Unique batch Id passed by the corporate\client.
    O
    O
    O
    O
    O
    O
    O
    O
    O
    O
    STRING
    Max 16
    Mb5b20f20c
    paymentList
    List containing payment details
    M
    M
    M
    M
    M
    M
    M
    M
    M
    M
    ARRAY
     
     
    billAmt
    Payable bill amount
    M
    M
    M
    M
    M
    M
    M
    M
    M
    M
    STRING
    Max 16
    50
    billCcy
    Bill currency code
    M
    M
    M
    M
    M
    M
    M
    M
    M
    M
    STRING
    3
    AED
    consumerNo
    Consumer number
    M
    M
    M
    M
    M
    M
    M
    M
    M
    M
    STRING
    Max 8
    31300239
    debitAccountNumber
    Debit account number
    M
    M
    M
    M
    M
    M
    M
    M
    M
    M
    STRING
    Max 12
    ETISALAT
    biller
    Service provider's ID
    M
    M
    M
    M
    M
    M
    M
    M
    M
    M
    STRING
    Max 16
    123456789
    txnAmount
    Transaction amount
    M
    M
    M
    M
    M
    M
    M
    M
    M
    M
    STRING
    Max 16
    50
    txnCcy
    Transaction currency code
    M
    M
    M
    M
    M
    M
    M
    M
    M
    M
    STRING
    3
    123456789
    customerReference
    Customer reference number
    M
    M
    M
    M
    M
    M
    M
    M
    M
    M
    STRING
    Max 11
    123456789
    valueDate
    Date of value
    M
    M
    M
    M
    M
    M
    M
    M
    M
    M
    STRING
     
    123456789
    billType
    Type of bill
    NA
    NA
    GM
    LN
    NA
    NA
    NA
    NA
    DIA LUP
    BRO ADB AND
    STRING
    Max 35
    GM (for DU-GSM) LN (for DU-LANDLINE) DIALUP (for ETISALAT-DIALUP) BROADBAND (for ETISALAT-Broadband)
    authCode
    Authorisation code
    NA
    NA
    NA
    NA
    NA
    NA
    M
    NA
    NA
    NA
    STRING
     
     

    Response Parameters:

    Fields
    Description
    Mandatory/Optional
    Data Type
    Length
    Sample Value
    cifNumber
    Unique CIF number
    Mandatory
    STRING
    Max 9
    123456789
    statusCode
    http status code.
    Mandatory
    STRING
     
    200
    batchStatus
    Shows the status of the request
    Mandatory
    STRING
    Max 20
    INITIATED
    statusDescription
    Narrative status of the request.
    Mandatory
    STRING
     
    ALL_TRANSACTIONS_INITIATED
    batchId
    Unique batch Id passed by the corporate\client.
    Optional
    STRING
    Max 16
    UAT2705001
    msBatchRefNo
    Once bank receives the batch request transaction it assigns or generate a batch number to the request.
    Mandatory
    STRING
    Max 16
    Mb5b20f20c
    isFinalStatus
    It can be Y or N. Y = No further status of transaction is expected Transaction is concluded. N = Transaction is still in transit and status is expected to change
    Mandatory
    STRING
    Min 1
    Y
    paymentList
    List containing payment details
    Mandatory
    ARRAY
     
     
    billAmt
    Payable bill amount
    Mandatory
    STRING
    Max 16
    50
    billCcy
    Bill currency code
    Mandatory
    STRING
    3
    AED
    consumerNo
    Consumer number
    Mandatory
    STRING
    Max 8
    31300239
    debitAccountNumber
    Debit account number
    Mandatory
    STRING
    Max 12
    010493142944
    biller
    Service provider's ID
    Mandatory
    STRING
    Max 16
    ETISALAT
    txnAmount
    Transaction amount
    Mandatory
    STRING
    Max 16
    50
    txnCcy
    Transaction currency code
    Mandatory
    STRING
    3
    AED
    txnDate
    Date of transaction
    Mandatory
    STRING
     
    2025-06-24 (YYYY-MM-DD)
    customerReference
    Customer reference number
    Mandatory
    STRING
     
    UAT51052515
    valueDate
    Date of value
    Mandatory
    STRING
     
    2025-06-24 (YYYY-MM-DD)
    billType
    Type of bill
    Mandatory
    STRING
    Max 35
    DIALUP
    authCode
    Authorisation code
    Optional
    STRING
     
     
    status
    Shows the status of the request
    Mandatory
    STRING
    Max 20
    INITIATED
    statusCode
    http status code.
    Mandatory
    STRING
     
    201
    description
    Narrative status of the request.
    Mandatory
    STRING
     
    Transaction request initiated
    msTxnRefNo
    Unique reference number of request at each account
    Mandatory
    STRING
    Max 16
    MSFqa7e38b909a42
    isFinalStatus

    It can be Y or N.

    Y = No further status of transaction is expected Transaction is concluded.

    N = Transaction is still in transit and status is expected to change.

    Mandatory
    STRING
    Min 1
    N

    3. billPaymentInquiry:: This is a GET method that helps to inquire about the status of the transaction.

    Request Headers:

    Fields
    Description
    Mandatory/Optional
    Data Type
    Length
    Sample Value
    clientId
    Unique client ID provided by Mashreq to corporate.
    Mandatory
    STRING
     
     
    Authorization
    Bearer Token received from get token API with respect to Scope
    Mandatory
    STRING
     
     

    Request Parameters:

    Fields
    Description
    Mandatory/Optional
    Data Type
    Length
    Sample Value
    cifNumber
    Unique CIF number
    Mandatory
    STRING
    Max 9
    010150935
    batchId
    Unique batch Id passed by the corporate\client.
    Optional
    STRING
    Max 16
    batchId123456789
    msBatchRefNo
    This is a reference from bank API for every batch request
    Mandatory
    ARRAY
    Max 16
    BAref1234567890a
    msTxnRefNo
    This is a reference from bank API for every single transaction
    Mandatory
    STRING
    Max 15
    MSref1234567890b
    customerReference
    Reference number used during initiation of the transaction
    Mandatory
    STRING
    Max 11
    testRef123456789

    Response Parameters:

    Fields
    Description
    Mandatory/Optional
    Data Type
    Length
    Sample Value
    cifNumber
    Unique CIF number
    Mandatory
    STRING
    Max 9
    123456789
    statusCode
    http status code.
    Mandatory
    STRING
     
    200
    batchStatus
    Shows the status of the request
    Mandatory
    STRING
    Max 20
    INITIATED
    statusDescription
    Narrative status of the request.
    Mandatory
    STRING
     
    ALL_TRANSACTIONS_INITIATED
    batchId
    Unique batch Id passed by the corporate\client.
    Optional
    STRING
    Max 16
    UAT2705001
    msBatchRefNo
    Once bank receives the batch request transaction it assigns or generate a batch number to the request.
    Mandatory
    STRING
    Max 16
    Mb5b20f20c
    isFinalStatus
    It can be Y or N. Y = No further status of transaction is expected Transaction is concluded. N = Transaction is still in transit and status is expected to change
    Mandatory
    STRING
    Min 1
    Y
    paymentList
    List containing payment details
    Mandatory
    ARRAY
     
     
    billAmt
    Payable bill amount
    Mandatory
    STRING
    Max 16
    50
    billCcy
    Bill currency code
    Mandatory
    STRING
    3
    AED
    consumerNo
    Consumer number
    Mandatory
    STRING
    Max 8
    31300239
    debitAccountNumber
    Debit account number
    Mandatory
    STRING
    Max 12
    010493142944
    biller
    Service provider's ID
    Mandatory
    STRING
    Max 16
    ETISALAT
    txnAmount
    Transaction amount
    Mandatory
    STRING
    Max 16
    50
    txnCcy
    Transaction currency code
    Mandatory
    STRING
    3
    AED
    txnDate
    Date of transaction
    Mandatory
    STRING
     
    2025-06-24 (YYYY-MM-DD)
    customerReference
    Customer reference number
    Mandatory
    STRING
     
    UAT51052515
    valueDate
    Date of value
    Mandatory
    STRING
     
    2025-06-24 (YYYY-MM-DD)
    billType
    Type of bill
    Mandatory
    STRING
    Max 35
    DIALUP
    authCode
    Authorisation code
    Optional
    STRING
     
     
    status
    Shows the status of the request
    Mandatory
    STRING
    Max 20
    COMPLETED
    statusCode
    http status code.
    Mandatory
    STRING
     
    200
    description
    Narrative status of the request.
    Mandatory
    STRING
     
    Payment request has been completed
    msTxnRefNo
    Unique reference number of request at each account
    Mandatory
    STRING
    Max 16
    MS0d61611f4f2948
    isFinalStatus
    It can be Y or N. Y = No further status of transaction is expected Transaction is concluded. N = Transaction is still in transit and status is expected to change
    Mandatory
    STRING
    Min 1
    Y

    Status Code Information:

    Status
    Status Code
    Description
    Success
    200
    Payment request has been completed
     
    201
    Request in-progress
    Rejected
    400
    CIF is mandatory
     
    400
    Account max length is 12 digits
     
    400
    Allowed value of Account should be Numeric
     
    400
    BATCH ID MANDATORY
     
    400
    Maximum length exceeds for BATCH ID
     
    400
    Bill amount is invalid
     
    400
    currency length should be 3 characters
     
    400
    txnCcy should be AED
     
    400
    Invalid consumer ID
     
    400
    Entered PIN should be of 4 numeric digits
     
    400
    Debit account mentioned does not exist for given CIF
     
    400
    Invalid account for given CIF
     
    400
    Biller is mandatory
     
    400
    Invalid biller
     
    400
    Invalid amount
     
    401
    Multiple Client ids found
     
    401
    Invalid client id or secret code
     
    401
    Unauthorized CIF - "CIF_Number"
     
    401
    API_BANKING_DISABLED for CIF - "CIF_Number"
    Failed
    500
    Due technical error
    IMPORTANTS NOTES:
    • Bulk support is against one CIF ID i.e. multiple entries can be updated in one batch referring to a single CIF.
    • You may have to initiate a new batch for a different CIF.
    • For enquiry CIF and Batch id mandatory.
Number of API/s
1
Number of APIs
APIC Calls
160
K
Calls per month
Active users
250
Active users
Regions
Overview
Overview

Mashreq’s Utility Bill Payment APIs enable corporate clients to fetch real-time bill amounts, seamlessly process payments, and gain immediate transaction visibility with the service providers like ADDC, AADC, SEWA, DEWA, SALIK, NOQODI, ETISALAT, DU, etc. This solution is built with enterprise-grade security, ensuring reliability, reducing manual overhead, and promoting operational efficiency across financial workflows related to utility payments.

What are the benefits?
  • Real-Time Bill Retrieval

    Instantly fetches accurate and up-to-date utility bill amounts from service providers, eliminating delays and improving planning.

  • Automated Payment Processing

    Enables seamless and secure bill payment directly from the corporate treasury or ERP systems, reducing manual intervention.

  • Operational Efficiency

    Reduces the need for reconciliation and manual tracking, thereby streamlining back-office operations and improving resource allocation.

  • Enhanced Financial Control

    Provides visibility into due amounts and payment status, enabling better liquidity management and timely settlements.

  • Improved Security and Fraud Prevention

    Enforces authentication, authorisation, and data integrity protocols, minimising the risk of payment fraud or unauthorised transactions.

  • Regulatory Compliance and Audit Readiness

    Supports audit trails, standardized reporting, and integration with compliance tools, aiding corporates in meeting regulatory requirements effortlessly.

 
Which APIs are offered?
  • Bill Payment API: This API streamlines bill settlement by instantly fetching bill amounts and enabling seamless payment processing with the service providers like ADDC, AADC, SEWA, DEWA, SALIK, NOQODI, ETISALAT, DU, etc.

 

By leveraging Mashreq’s Utility Bill Payment APIs, corporates can streamline payment operations, strengthen cash flow management, and establish trust in every transaction. 

What can I do with this API ?
icon
icon
icon
Product benefits
Corporates can centrally manage and pay utility bills across multiple locations using a single, streamlined interface.
The API can be integrated into corporate ERP or treasury systems to automate utility bill processing and approval workflows.
Businesses can verify utility bill details in real time to prevent overpayments, billing errors, and potential fraud.
Finance teams can generate real-time utility expense reports to support accurate budgeting and forecasting.
Utility Bill Payment
Engage with us
Get started today or reach out to learn more.
 
Register today to access and get started with our tools and API documentation.
 
Schedule a call with our team to understand how our offering can support you and your customers.