Engage more customers with our WhatsApp Business solution
Reach your customers through messaging the app they love…WhatsApp.
- Pay as you go
- Cancel anytime
- 100% Coverage
- 99.9% Uptime
- 24/7 Support

Reach your customers through messaging the app they love…WhatsApp.
Integrate WhatsApp messaging for your business. Click on the button below and follow the steps:
Steps to Get Started:
const launchWhatsAppSignup = () => { // Launch Facebook login
FB.login(fbLoginCallback, { config_id: '1284866539492348', // configuration ID goes here response_type: 'code', // must be set to 'code' for System User access token override_default_response_type: true, // when true, any response types passed in the "response_type" will take precedence over the default types extras: { setup: { solutionID: '1560951718126705' // add solution ID here }, featureType: '', sessionInfoVersion: '2', } }); }
const sessiondata = {};
const setSessionData = (data)=>{ sessiondata = JSON.stringify(data, null, 2); console.log(setSessionDta)
}
const getSessionData = ()=>{ return localStorage.getItem('sessiondata'); }
window.addEventListener('message', (event) => { if (event.origin !== "https://www.facebook.com" && event.origin !== "https://web.facebook.com") { return; } try {
const data = JSON.parse(event.data); if (data.type === 'WA_EMBEDDED_SIGNUP') { // if user finishes the Embedded Signup flow if (data.event === 'FINISH') { const {phone_number_id, waba_id} = data.data;
console.log("Phone number ID ", phone_number_id, " WhatsApp business account ID ", waba_id); // sessiondata = data console.log(data)
localStorage.setItem('phone_number_id', phone_number_id); localStorage.setItem('waba_id', waba_id);
// if user cancels the Embedded Signup flow } else if (data.event === 'CANCEL') { const {current_step} = data.data; console.warn("Cancel at ", current_step); // if user reports an error during the Embedded Signup flow } else if (data.event === 'ERROR') { const {error_message} = data.data; console.error("error ", error_message); } } sessiondata = JSON.stringify(data, null, 2); // document.getElementById("session-info-response").textContent = sessiondata;
} catch { console.log('Non JSON Responses', event.data); } });
const fbLoginCallback = (response) => { const phone_number_id =localStorage.getItem('phone_number_id') const waba_id =localStorage.getItem('waba_id') console.log(phone_number_id) console.log(waba_id) if (response.authResponse) { const code = response.authResponse.code; // The returned code must be transmitted to your backend first and then // perform a server-to-server call from there to our servers for an access token.
authdata = JSON.stringify(response, null, 2) console.log(response.authResponse.code) // document.getElementById("sdk-response").textContent = JSON.stringify(response, null, 2); const data = { authResponse:{code: response.authResponse.code}, data: {phone_number_id, waba_id} }; console.log(data)
fetch('https://meta.channelmobile.co.za/onboard', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify(data) }) .then(response => { if (!response.ok) { throw new Error('Network response was not ok'); } return response.json(); }) .then(data => { console.log('Success:', data); }) .catch(error => { console.error('Error:', error); }); }
}