How to connect WhatsApp Cloud API to ERPNext / Frappe
AvenPing shares your connected Cloud API line with ERPNext / Frappe. Open Integrations, activate ERPNext / Frappe (badge ERP), copy Phone Number ID, WhatsApp Business Account ID, and Access Token into Frappe WhatsApp Settings, then save the Frappe webhook URL and Webhook Verify Token in AvenPing.
Prerequisites
- A connected WhatsApp Business Account (WABA) in AvenPing. See How to connect WhatsApp Business to AvenPing.
- At least one active line. See How to activate WhatsApp lines.
- Frappe CRM / ERPNext with the Frappe WhatsApp app installed, and access to WhatsApp Settings.
Step-by-step
- Open the ERPNext / Frappe card
Sign in at app.avenping.com. Click Integrations. Find ERPNext / Frappe (badge ERP, description Connect Frappe WhatsApp with Phone ID, WABA ID, token, and webhook.). Click Activate, or Configure if the card already shows Active. Follow Official setup (Frappe CRM WhatsApp).
Set Share scope
Under Share scope, choose Entire WhatsApp Business Account or Single phone number. Select WhatsApp Business Account. Frappe WhatsApp talks to one Phone ID — prefer Single phone number and pick Phone number when you only want that line forwarded. If no WABAs appear, the page shows No WhatsApp Business Accounts found. Connect a WABA first, then refresh this page.Copy Phone ID, WABA ID, and token into Frappe
Under Sending messages, copy Phone Number ID, WhatsApp Business Account ID, and Access Token. Also copy App ID and App Secret if your WhatsApp Settings form asks for them. In Frappe, open the logo menu → Settings → WhatsApp Settings, paste the credentials, and enable WhatsApp.Save the Frappe webhook in AvenPing
In Frappe WhatsApp Settings, copy the webhook URL and the Webhook Verify Token you created there. The AvenPing Callback URL placeholder ishttps://your-site.frappe.cloud/api/method/frappe_whatsapp.utils.webhook.webhook. Paste the URL and token into AvenPing Receiving messages, then click Save (Webhook config saved) and Test. Success is Webhook connection succeeded.Confirm Active and subscribe message events in Frappe
Status should read Active. If Frappe asks you to subscribe webhook fields, include at leastmessagesandmessage_template_status_update. Use Pause / Resume to stop or restart forwarding. Regenerate app secret only if Frappe stores App Secret — then update WhatsApp Settings.
WARNING
If Status is Blocked (plan / credit line), AvenPing will not forward inbound webhooks until the plan or credit line is restored.
TIP
Use the Frappe webhook path (frappe_whatsapp.utils.webhook.webhook), not AvenPing Settings → Webhook Settings. Those are different endpoints.
FAQ
Do I paste Phone Number ID or the display number?
Paste Phone Number ID from AvenPing Sending messages. The display number is only the label on Phone number under Share scope.
Why does handshake fail?
Frappe must return the challenge using the same Webhook Verify Token stored in WhatsApp Settings. Save both sides, then click Test. Failure toasts Handshake did not return the challenge.
Can I share one WABA with several Frappe sites?
Create a separate share per site: pick the WABA or phone, save a distinct Callback URL, and Test. When several shares exist, AvenPing lists them as WABA or Number plus the ID.