Skip to main content

Dynamic Links

A dynamic link is a payment link without a fixed amount. The buyer enters the amount they wish to pay before selecting a payment method.
  • Donations: Let supporters choose their contribution amount.
  • Tips or gratuities: Let customers decide how much to tip.
  • Flexible invoicing: When the amount varies per transaction.
  • Pay-what-you-want: For products or services with flexible pricing.
Omit the amount field from the request:
curl -X POST "https://api.wava.co/v1/links" \
  -H "merchant-key: YOUR_MERCHANT_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "description": "Donation to Foundation XYZ",
    "currency": "COP",
    "redirect_link": "https://mysite.com/thanks"
  }'
The response is identical to a regular payment link:
{
  "data": {
    "payment_link_id": 9877,
    "payment_url": "https://checkout.wava.co/link/xyz789abc012",
    "hash": "xyz789abc012",
    "expires_at": "2025-03-15T23:59:59.000Z"
  }
}
When the buyer opens the link, they see an amount input field before proceeding to payment method selection.
The only difference between a regular payment link and a dynamic link is whether you include the amount field in the request. Everything else — response format, webhooks, redirects — works the same way.