Updated: 5/9/2025

How to set up WhatsApp Payments

In this article you will learn how to configure WhatsApp Payments and its correct display within the platform.


This feature is available for Brazilian phone numbers for end users with Brazilian phone numbers.



What is WhatsApp Payments?

WhatsApp Payments is a payment submission feature developed by Meta to facilitate the user experience when receiving orders and payment links via WhatsApp. It does not process the payment, but integrates in a user-friendly way the order summary, total amount and actions for the customer to finalize their purchase on an external platform.



Initial Considerations

  • Botmaker and WhatsApp do not process payments: The collection occurs exclusively through the external gateway (e.g. Mercado Pago, Adyen, PagarMe). WhatsApp and Botmaker only present the information.
  • Previous integration required: You must have already configured the external payment method and generate links, tokens (Pix), ticket codes, etc. outside Botmaker.
  • Channel and geographic support: Currently only available for Brazil phones with DDI +55 and only by WhatsApp (does not work on other channels).
  • Form of presentation: The user receives a more visual and user-friendly “box”, with key information and a payment button/code to copy and paste.



Types of payments supported

Meta currently accepts these payment methods via WhatsApp Payments:

  • Payment link
  • Pix (with copy and paste code/token)
  • Boleto (digital line, with “copy” button for the bank)


Any gateway that can generate a link, Pix token or ticket can be integrated into the action, provided that the corresponding variable is available.


Why use WhatsApp Payments?

Present payment requests in a much more professional and clearer way.

Reduces risks and doubts for the user (by receiving a summary and call to action in a native visual format).

Allows to offer multiple payment methods (Pix, link, ticket) under the same logic.

Allows coupons, discounts, shipping rates, and other variables (both at product and order level).





How to create the action “WhatsApp payment message” in your flow?

Inside your bot, add the corresponding action:


Main text: Help/context message for the user (limit approx. 1000 characters).

Image (optional): Informative image associated with the order.

Footer (optional): Ex: “Link expires in 15 minutes”.

Payment method: Link, Pix or Boleto.

Variable of the selected method: Payment link (URL), Pix token, or digital line.

User ID: Can be phone, mail or CPF (especially for Pix/boletos).

Payment Order: You can generate a unique ID per flow or assign the one your system delivers.

Taxes, Shipping and Discounts: You can add fixed or variable rates, and discounts both per product and per order total.


It is advisable to make the discount calculations in advance and only send the final amounts to Botmaker, to avoid inconsistencies.


Example of product structure:


[


 {


   "amount": 12.23,


   "quantity": 2,


   "name": "Producto 1",


   "retailer_id": "1",


   "sale_amount": 11.23


 },


 {


   "amount": 12.23,


   "quantity": 1,


   "name": "Producto 2",


   "retailer_id": "2",


   "sale_amount": 11.23


 }


]


Includes: name, SKU, quantity, price, discounted price.


Post-payment actions: How do I handle “payment approved” or “payment declined”?

Botmaker and WhatsApp do not detect payments with immediate confirmation. To register that the payment was approved/rejected, you must receive the confirmation callback (webhook) from your gateway and adjust the flow in the bot, modifying variables and taking the user through the correct flow.

  • “Payment approved": When the gateway returns confirmation via webhook (payment received), displays success message or generates the order.
  • “Payment rejected": If payment is rejected/expired, displays error message, allows retry, etc.