How to Send Bulk WhatsApp Messages with Buttons and Dynamic URLs

How to Send Bulk WhatsApp Messages with Buttons and Dynamic URLs

🚀 How to Send Bulk WhatsApp Messages with Buttons and Dynamic URLs

🔍 What is a button with a dynamic URL?

A button with a dynamic URL is a button included in a WhatsApp message template whose URL can be personalized with unique information for each user.

This is ideal for broadcast campaigns where you want to send specific links to each recipient, such as:

  • Order tracking links
  • Appointment confirmations
  • Personalized access to forms or platforms

🧠 How does it work?

When creating the template, you define a base URL with a dynamic parameter, like:

https://mycompany.com/order/{{1}}

During the bulk send, WOZTELL replaces {{1}} with the corresponding value for each contact, generating unique buttons for each message.


1️⃣ Verify Your Account and Sending Quality

Before starting, make sure your WhatsApp Business account is in good standing and that you know your sending limits.

In this panel, you can check:

  • Your account quality level (High, Medium, or Low).
  • Message limit per 24 hours (1,000 – 10,000 – 100,000 – unlimited).
  • Your company’s verification status with Meta.
  • Information about your connected number and whether it’s properly authenticated.
⚠️ An account with low quality or no verification may be restricted in sending bulk campaigns, especially those that include personalized content such as buttons with dynamic URLs.

2️⃣ Create a New Campaign

WOZTELL allows you to complete the entire process linearly, without needing to switch screens.

  1. Log in to your WOZTELL account and go to the Broadcast / Campaigns section:
    👉 platform.woztell.com/broadcast
  2. Create a new campaign, assign a name, and choose the WhatsApp number you want to send from.

3️⃣ Prepare and Upload Your CSV File

To send bulk messages with personalized buttons, you need to upload a .CSV file containing your contacts and their unique URLs.

📄 CSV File Structure

The file should contain the following columns:

  • Phone: In international format (e.g., 573001112233).
  • Name: Recipient’s name.
  • Dynamic URL: Value to be used in the button (e.g., meta.url).

📥 How to Upload the CSV in WOZTELL

  1. When creating the audience, select "Create a new one".
  2. Upload your CSV and click "Choose CSV file" or drag and drop your file.
  3. Select your file (example: EJEMPLO - ENVIO MASIVO.csv).

⚠️ Correctly Map the Columns

This step is critical. Match each CSV field with the corresponding one in WOZTELL:

  • PhoneExternal ID
  • NameFirst Name
  • URL → Select “Meta” and create a new variable, for example: meta.url
🔐 Save the variable name well, because you will need it later when setting up the bulk send.

Once completed, your contacts will be ready to receive the message with their personalized button.

4️⃣ Create a New WhatsApp Template with Variables in Buttons

🔧 Steps to Create the Template:

  1. Fill in the basic information:
    • Name: formulario_personalizado
    • Language: Spanish
    • Category: Marketing
  2. Write the message body:
    Hello {{1}}, we’ve prepared an exclusive form for you. Click the button to complete it.
  3. Add a Call-to-Action button:
    Make sure to use the base URL that all your dynamic links share. For example, if using Shopify, it would be https://shopify.com/.

    The variable {{1}} will be replaced with a specific value for each recipient.

  4. Submit the template for approval. WhatsApp (Meta) must approve it. This process may take from a few minutes to a few hours.

5️⃣ Select the Template and Assign the Dynamic Variable

Once your template is approved by WhatsApp, select it in the WOZTELL campaign platform.

When assigning the dynamic variables, make sure they are matched with the data you imported. For example, if your CSV column is meta.url, use that exact name when configuring the campaign.

6️⃣ Test and Launch or Schedule Your Campaign

A best practice is to perform a test send using the WOZTELL campaign module.

We recommend:

  • Add your own data or that of your team as a test in the audience.
  • Verify that the variables are correctly replaced and that the buttons work as intended.

Once verified:

  1. You can launch the campaign immediately, or
  2. Schedule it for the date and time of your choice.