Banricom APIsBanricom APIs
Banricom API Documentation
Get Started
Banricom API Documentation
Get Started
  • WhatsApp

    • WABA
    • Phone Numbers (WABA)
    • Message Templates
    • Send Messages
    • Webhooks
    • Status Updates
  • SMS APIs

    • /sms/
    • /sms/send-sms.html
    • /sms/sms-status.html
  • Airtime APIs

    • /airtime/
    • /airtime/top-up.html
    • /airtime/check-balance.html
  • Email APIs

    • /emails/
    • /emails/send-email.html
    • /emails/email-status.html

What is a WABA Phone Number?

It's the phone number registered and used to communicate with customers via the WhatsApp Business API.


πŸ”Ή Key Characteristics

  • πŸ“± App Compatibility:
    The number cannot be in use on the WhatsApp Messenger App.
    However, Meta does allow the same number to be used on both the WhatsApp Business App and the API. This enables businesses to chat manually in the app while also sending automated or templated messages through the API.

  • πŸ”’ Verified by Meta:
    The number must complete Meta’s verification process during WABA onboarding.

  • 🌍 Type of Number:
    Can be a mobile or landline number, as long as it can receive a verification code via SMS or voice call.


πŸ”Ή Example Use Case

A company like Banricom may register a WABA number (e.g., +254712345678) to:

  • Send transaction alerts or airtime purchase confirmations
  • Manage customer support via WhatsApp chat
  • Broadcast template messages to users

ℹ️ Important Notes

  • A single WABA can host multiple phone numbers, each with its own display name and messaging tier.
  • A number used with the WhatsApp API cannot be used on WhatsApp Messenger, but can be used on the WhatsApp Business App if configured properly.

πŸ“ How to Register a Phone Number

To register your phone number for use with the WhatsApp Business API, follow the steps in the guide below:

πŸ‘‰ Using Embedded Sign-Up 🌟


πŸ“ž View Registered Phone Numbers

To view your registered WABA phone numbers, click the link below:
πŸ‘‰ View WABA Numbers


πŸš€ API Let's fetch Phone Numbers programmatically!

πŸ” Fetching Phone Numbers via API

There are two main ways to retrieve phone numbers programmatically:

  1. All Registered Phone Numbers
    Fetch a complete list of all phone numbers associated with your Banricom Account.

  2. Phone Numbers by WABA
    Retrieve phone numbers that belong to a specific WABA within your account.

πŸ” Authentication Requirements

All API requests require two authentication headers:

HeaderDescriptionHow to Obtain
x-api-keyYour application's secret API keyGenerated when you create an app
x-app-idYour application's unique identifierSent to your organization email after app creation

πŸ“Œ Important Security Notes:

  • Treat your x-api-key like a password - never expose it in client-side code
  • Always make requests to our API over HTTPS
  • Rotate your API keys periodically via the developer dashboard

✏️ Making a Request to Retrieve All Registered Phone Numbers

GET  /whatsapp/numbers HTTP/1.1
Host: api.banricom.com
x-api-key: your_app_key_here_12345
x-app-id: your_app_id_here_67890

</> Code Example

try {
  const response = await fetch("https://api.banricom.com/whatsapp/numbers", {
    method: "GET",
    headers: {
      "x-api-key": "YOUR_APP_KEY",
      "x-app-id": "YOUR_APP_ID",
    },
  });

  if (!response.ok) throw new Error(await response.text());

  const data = await response.json();
  console.log("Success:", data);
} catch (error) {
  console.error("Error:", error);
}

βœ… Successful Response (200 OK)

{
  "success": true,
  "data": {
    "app_name": "test-app",
    "numbers": [
      {
        "name": "Infosms",
        "wabaId": 22********56,
        "is_paid": true,
        "verification_status": "EXPIRED",
        "phone_number": "+254 *** 556367",
        "quality": "GREEN",
        "phone_id": "2309*****02436",
        "onboarded_at": "2025-03-01T02:09:23+03:00"
      }
    ]
  }
}

Success Response Fields

FieldTypeDescription
successbooleantrue indicates successful operation
data.app_namestringYour registered application name
data.numbers[]arrayList of Phone Numbers accounts

✏️ Making a Request to Retrieve Phone Numbers By WABA ID

To fetch wabaId, click the link below:
πŸ‘‰ Get wabaId

GET  /whatsapp/numbers?wabaid={{wabaid}} HTTP/1.1
Host: api.banricom.com
x-api-key: your_app_key_here_12345
x-app-id: your_app_id_here_67890

</> Code Example

try {
  const response = await fetch(
    "https://api.banricom.com/whatsapp/numbers?wabaid={{wabaid}}",
    {
      method: "GET",
      headers: {
        "x-api-key": "YOUR_APP_KEY",
        "x-app-id": "YOUR_APP_ID",
      },
    }
  );

  if (!response.ok) throw new Error(await response.text());

  const data = await response.json();
  console.log("Success:", data);
} catch (error) {
  console.error("Error:", error);
}

βœ… Successful Response (200 OK)

{
  "success": true,
  "data": {
    "app_name": "test-app",
    "numbers": [
      {
        "name": "Infosms",
        "wabaId": 22********56,
        "is_paid": true,
        "verification_status": "EXPIRED",
        "phone_number": "+254 *** 556367",
        "quality": "GREEN",
        "phone_id": "2309*****02436",
        "onboarded_at": "2025-03-01T02:09:23+03:00"
      }
    ]
  }
}

Success Response Fields

FieldTypeDescription
successbooleantrue indicates successful operation
data.app_namestringYour registered application name
data.numbers[]arrayList of Phone Numbers accounts
Last Updated:: 6/21/25, 8:01 AM
Contributors: noriamybiz
Prev
WABA
Next
Message Templates