Skip to Content
API EndpointsPago de suscripción

Pago de suscripción

Esta sección detalla el uso del endpoint para efectuar el cobro de una suscripción. Sigue las instrucciones para integrar esta funcionalidad en tu aplicación.

Detalles del endpoint

  • Método: POST
  • URL: /api/v1/transactions/subscription

Este endpoint permite efectuar el cobro de una suscripción enviando los datos del cliente y de la tarjeta junto con la API Key.

Configuración de la solicitud

Headers

HeaderDescripción
X-API-KEYAPI Key generada en Cubo Admin.

Si aún no has generado tu API Key, revisa nuestra sección de autenticación.

Cuerpo de la solicitud

ParámetroTipoDescripción
clientNamestringNombre del cliente.
clientEmailstringCorreo electrónico del cliente.
clientPhonestringTeléfono del cliente con código de país.
descriptionstringDescripción de la transacción.
amountnumberCantidad de dinero a pagar.
cardHolderstringNombre del titular de la tarjeta.
cardNumberstringNúmero de la tarjeta de crédito o débito.
cvvstringCódigo de seguridad de la tarjeta.
monthstringMes de expiración de la tarjeta en formato MM.
yearstringAño de expiración de la tarjeta en formato YY.
installmentsnumberCantidad de cuotas mensuales en las que se dividirá el pago.
💡

El campo amount siempre debe enviarse como un número entero en centavos.

A continuación se muestra un ejemplo de la solicitud en formato JSON:

{ "clientName": "John Doe", "clientEmail": "[email protected]", "clientPhone": "+50322577777", "description": "Test API", "amount": 100, // Monto en centavos (100 = $1.00) "cardHolder": "John Doe", "cardNumber": "4000000000000416", "cvv": "123", "month": "12", "year": "26", "installments": 12 }

Ejemplos de uso

fetch('https://api.cubo.com/api/v1/transactions/subscription', { method: 'POST', headers: { 'Content-Type': 'application/json', 'X-API-KEY': 'TU_API_KEY_AQUI', }, body: JSON.stringify({ clientName: 'John Doe', clientEmail: '[email protected]', clientPhone: '+50322577777', description: 'Test API', amount: 100, // Monto en centavos (100 = $1.00) cardHolder: 'John Doe', cardNumber: '4000000000000416', cvv: '123', month: '12', year: '26', installments: 12 }), }) .then(response => response.json()) .then(data => console.log(data)) .catch(error => console.error('Error:', error));

Respuestas del servidor

✅ Respuesta exitosa

Indica que el pago fue aprobado exitosamente.

{ "status": "SUCCEEDED", "referenceId": "354247606061629", "authorizationCode": "015163", "processedAt": "2025-02-10T22:27:17.317Z" }

❌ Respuesta de error

Indica que el pago fue rechazado.

{ "statusCode": 400, "message": "15 - EMISOR NO DISPONIBLE" }
💡

Asegúrate de manejar correctamente las respuestas del servidor en tu aplicación para ofrecer una mejor experiencia al usuario.