Send Messages

Request Payment

Sends a payment request with the native WhatsApp "Review and pay" button. You must provide at least one payment method: `pixKey`, `boletoCode`, `paymentLink` or `allowCards: true`. Otherwise, the API returns an error.

POSThttps://api.zapzapapi.com/api/v1/{instanceId}/send/request-payment

Authentication with the x-api-key and x-api-secret headers.

Parameters

NameTypeInRequiredDescription
numbertextbodyYesNumber (with country code)
amountnumberbodyYesAmount (BRL)
pixKeytextbodyNoPIX key (CPF/CNPJ/phone/email/EVP)
pixTypeselectbodyNoPIX key type
itemNametextbodyNoItem name
invoiceNumbertextbodyNoInvoice number
titletextbodyNoFlow title
footertextbodyNoFooter
pixNametextbodyNoRecipient name (default: profile name)
texttextareabodyNoMessage text
paymentLinktextbodyNoExternal payment link
fileUrltextbodyNoAttached file URL
fileNametextbodyNoAttached file name
boletoCodetextbodyNoBoleto code
allowCardsselectbodyNoAllow card
currencytextbodyNoCurrency
notetextbodyNoNote / Remarks
digitandoselectbodyNoShows an automatic "typing..." indicator, proportional to the message length, before sending. On by default (humanizes and reduces block risk). Send false to turn it off and reply faster. The response remains synchronous.

Request example

curl

curl -X POST "https://api.zapzapapi.com/api/v1/{instanceId}/send/request-payment" \
  -H "x-api-key: YOUR_API_KEY" \
  -H "x-api-secret: YOUR_API_SECRET" \
  -H "Content-Type: application/json" \
  -d '{"number":"5511999999999","amount":49.9}'

Node.js

const res = await fetch("https://api.zapzapapi.com/api/v1/{instanceId}/send/request-payment", {
  method: "POST",
  headers: {
    "x-api-key": "YOUR_API_KEY",
    "x-api-secret": "YOUR_API_SECRET",
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    "number": "5511999999999",
    "amount": 49.9
  }),
});
console.log(await res.json());

Python

import requests

res = requests.post(
    "https://api.zapzapapi.com/api/v1/{instanceId}/send/request-payment",
    headers={"x-api-key": "YOUR_API_KEY", "x-api-secret": "YOUR_API_SECRET"},
    json={"number":"5511999999999","amount":49.9},
)
print(res.json())

Response example

JSON

{
  "messageId": "ABCDEF123456",
  "status": "sent"
}

Values are illustrative; the fields follow the real response format.

See the full reference

Get your API keys

Create your account, connect a number in minutes and start using the API. R$15 per active number/month, with a welcome credit when you create the account, subject to the current campaign.