Skip to content

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

Step-by-step

  1. 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).
  1. 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.

  2. 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 → SettingsWhatsApp Settings, paste the credentials, and enable WhatsApp.

  3. 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 is https://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.

  4. Confirm Active and subscribe message events in Frappe
    Status should read Active. If Frappe asks you to subscribe webhook fields, include at least messages and message_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.