This guide shows how to send every cash-on-delivery customer a WhatsApp message with Confirm and Cancel buttons, from your own store number, with no middleman. You need a WooCommerce store, a phone number that is not used in the WhatsApp app (or one you move to the WhatsApp Business Platform), and a Facebook account.
Why the WhatsApp Cloud API and not the regular app?
- It is Meta's official way to send automated messages, so your number is not at risk of being banned.
- It supports buttons inside the message, so customers confirm in one tap.
- Meta bills messages to you directly, with no monthly fee to a third party.
Step 1: Install Yakeen
In WordPress go to Plugins → Add New, search for Yakeen, then Install and Activate. WooCommerce must be active.
Step 2: Create an app in Meta for Developers
- Go to developers.facebook.com and sign in with Facebook.
- Click Create App, choose Business, and add the WhatsApp product.
- Meta creates a WhatsApp Business Account (WABA) and a test number you can try.
- Under WhatsApp → API Setup, add your store's real number and verify it by SMS or call.
Step 3: Create a permanent token
- In Business Settings → Users → System Users, create a System User with Admin role.
- Give it access to the app and the WhatsApp Business Account.
- Click Generate Token with the whatsapp_business_messaging and whatsapp_business_management permissions and expiry Never.
- Keep the token somewhere safe.
Step 4: Enter the details in Yakeen
Go to WooCommerce → Settings → COD Confirmation and fill in:
- Phone number ID, from the API Setup page.
- WhatsApp Business Account ID, from the same page.
- Access token: your permanent token.
- Country code, for example 20 for Egypt or 966 for Saudi Arabia, so local numbers are converted correctly.
Step 5: Create the message templates
Click Create message templates. Yakeen creates the Arabic and English templates in your account, and Meta usually reviews them within minutes to a few hours. Once they show Approved, every new cash-on-delivery order gets the confirmation message.
Once it's running
- New orders move to Awaiting confirmation and the stock is reserved.
- Order notes show when the message was sent and when the customer replied.
- You can resend the message from the order screen.
- If the customer doesn't reply within the delay you set, the order is cancelled automatically.
Prefer not to do this yourself? The Naqla team can set it all up for you.