Guía para desarrolladores
Sitio de VEXPayReferencia de API
Explorar documentación

Crea y comparte un enlace de pago

Vende sin código: crea un enlace de un solo uso en el portal, compártelo por WhatsApp o QR y confirma el pago — o crea enlaces de producto reutilizables con la API.

Qué vas a hacer

Un enlace de pago abre el checkout alojado de VEXPay por un monto fijo en USD. El comprador elige cómo pagar entre los métodos que ofrece tu cuenta. Cada enlace del portal acepta un pago.

  • Una cuenta vendedor (las cuentas marketplace no tienen enlaces de pago; usa sesiones de checkout, mira Dividir pagos).
  • Para enlaces Live: el modo Live aprobado (mira Salir a producción). Los enlaces Test funcionan en cualquier momento.
  • Opcional: tu Business profile completo, para que los compradores vean tu nombre y logo.

Pasos

  1. Abre Payment links

    En el portal, elige Live o Test en el encabezado y abre Payment links.

  2. Completa el enlace

    Monto en USD (hasta 2 decimales), una descripción que ve el comprador (hasta 140 caracteres) y, opcionalmente, una referencia privada y una fecha de vencimiento futura.

  3. Compártelo

    Usa Copy link, Share o QR code. Debajo de cada enlace activo el portal muestra "Buyers can pay with: …", con una razón corta por cada método oculto.

  4. Cobra

    Cuando el comprador paga, el enlace pasa a Paid, el pago aparece en Payments y se disparan tus webhooks payment.*.

Enlaces reutilizables para un producto (API)

Para vender el mismo artículo muchas veces a un precio unitario fijo, crea un producto y un enlace de producto. Los enlaces de producto aceptan muchos pagos y pueden dejar que el comprador elija la cantidad.

curlbash
curl --request POST "${API_URL}/v1/products" \
  --header "content-type: application/json" \
  --header "x-api-key: ${VEXPAY_API_KEY}" \
  --data '{ "name": "Plan mensual", "priceUsd": 12.00 }'

curl --request POST "${API_URL}/v1/products/PRODUCT_ID/links" \
  --header "content-type: application/json" \
  --header "x-api-key: ${VEXPAY_API_KEY}" \
  --data '{ "allowQuantity": true, "maxQuantity": 10 }'

Desactiva un enlace de producto con PATCH /v1/payment-links/:id y { "status": "disabled" }. Más: Productos y enlaces

Comprueba que funcionó

  • Abre el enlace en una ventana privada: ves el nombre de tu negocio, la descripción y el monto.
  • Después de un pago de prueba el enlace muestra Paid y quien lo abra de nuevo ve que ya fue pagado.
  • Tu endpoint de webhook recibió payment.completed.

Si algo sale mal

SíntomaCausa probableQué hacer
"This payment link is not available."Modo Live no aprobado o suspendido, la cuenta deshabilitada, o el enlace de producto desactivadoRevisa tu estado Live, o activa el enlace de nuevo.
"This payment link has already been paid."Enlace de un solo uso ya pagadoCrea un enlace nuevo.
"This payment link has expired."Pasó la fecha de vencimientoCrea un enlace nuevo.
409 charge_in_progressOtro comprador está pagando el mismo enlace de un solo usoReintenta en un momento.
Falta un métodoMira la razón debajo del enlaceMira Activar o desactivar métodos.
403 payment_links_unavailableCuenta marketplaceUsa sesiones de checkout desde la API.

Relacionado: Enlaces de pago · Checkout embebido