Subscription | Recurrente

Crea una instancia de un link de pago recurrente, proporcionando un objeto de tipo "Checkout Request".

Esta pasarela de pago solo soporta un formulario de pago Alojado, esto quiere decir, que Recurrente se hará cargo de toda la lógica del pago dentro de sus servidores.

POST https://aurora.codingtipi.com/pay/v2/recurrente/checkouts/hosted/subscription
Autenticación

Para poder autenticarse con el API de recurrente debes de proveer el token obtenido en la llamada de setup.

Payload

A continuación, puedes encontrar un ejemplo del cuerpo de esta llamada. Debajo podrás encontrar una tabla describiendo cada parámetro del cuerpo de la llamada.

Copiado!

            
    {
      "number": 23,
      "correlative": "FAC202452",
      "description": "Prueba de Orden",
      "amount": 150.5,
      "currency": "GTQ",
      "count": 1,
      "interval": "month",
      "billing": {
          "name" : "John",
          "surname" : "Doe",
          "taxId" : "2045520",
          "email" : "[email protected]",
          "phone" : "55555555",
          "address" : "Guatemala City"
      },
      "redirection" : {
          "successUrl" : "https://mysite.com/success",
          "cancelUrl" : "https://mysite.com/cancel"
      }
    }
                
            

number (Int)

Requerido Representa el Identificador de tu orden de compra, puede ser cualquier valor numerico que funcione como identificador dentro de tu sistema.

correlative (String)

Representa un Id externo que se puede enviar como referencia, acepta un valor en String.

description (String)

Requerido Esta descripción es mostrada al cliente durante el proceso de pago.

amount (Decimal)

Requerido Valor del costo de la orden de compra, cuando se utiliza la moneda GTQ el valor mínimo es de 5 y el máximo es de 25000. Cuando se utiliza la moneda USD el valor mínimo es 5 y el máximo es de 15,000.

currency (String)

String que representa la moneda en la cual se realizará el cobro, los valores aceptados son GTQ y USD. Cuando este valor no es proporcionado por defecto, siempre será GTQ.

count (Int)

Especifica la separación entre ciclos de cobro, por ejemplo, si coloco 1 sea cada 1 mes, semana, año. Si no se especifica, por defecto el valor será 1.

interval (String)

Especifica la el periodo del intervalo, los valores permitidos son week, month, year. Si no se especifica, por defecto el valor será month.

Facturación.

Objeto que provee la información del cliente, esto habilita la opción de autollenado con los datos del cliente para evitar tener que llenar los datos varias veces. El objeto es requerido pero tiene campos opcionales.

name (String)

Requerido Nombre del cliente.

surname (String)

Requerido Apellido del cliente.

taxId (String)

Número de NIT del cliente, dejar en blanco para CF.

email (String)

Requerido Email del cliente.

phone (String)

Teléfono del cliente.

address (String)

Dirección del cliente.

Redirección.

Objeto para especificar una ruta de redirección diferente, si el objeto no se envía por defecto tomará el URL de retorno utilizado para WooCommerce, el cual se construye con el URL de donde la llamada se están realizando más parámetros específicos para WooCommerce, si tu integración no es de WooCommerce te recomendamos llenar este parámetro.

succesUrl (String)

Requerido URL al cual el link de pago regresará al momento de completar el pago satisfactoriamente.

cancelUrl (String)

Requerido URL al cual el link de pago regresará al momento cancelar la transacción o presionar atrás.

cUrl

Aquí hay un ejemplo de la llamada al API en cUrl.

Recuerda que debes de agregar en el header el parámetro de X-TOKEN con el token que retorna la llamada de steup.

Copied!

            
    curl -X 'POST' \
            'https://aurora.codingtipi.com/pay/v2/recurrente/checkouts/hosted/subscription' \
        -H 'accept: application/json' \
        -H 'X-Token: add85aae-069a-404c-b0f2-bf006a323355' \
        -H 'Content-Type: application/json'' \
        -d  '{ 
             "number": 15, 
             "correlative": 15, 
             "description": "Esta es una descripcion", 
             "amount": 150.25, 
             "currency": "GTQ", 
             "count": 1, 
             "interval": "month", 
             "billing": { 
                 "name": "John", 
                 "surname": "Doe", 
                 "email": "[email protected]" 
             } 
         }' 
                
            
Respuesta

Aquí puedes encontrar el objeto que retorna la llamada con status Created 201. El objeto que retorno contiene los parámetros que necesitas del checkout de recurrente id que representa el id del checkout, product que representa el id de la subscripción y url que representa el url del checkout, este parámetro es el que necesitas para redirigir al usuario hacia el checkout.

Copied!

            
    {
        "id" : "ch_l7zdlapspexiyu1",
        "product" : "prod_ic6alsmk",
        "url" : "https://app.recurrente.com/checkout-session/ch_l7zdlapspexiyu1v",
    }
                
            
Códigos de Respuesta

Aquí puedes encontrar todos los posibles códigos de respuesta que el API puede contestar.

201 Created Regresa el objeto de Checkout que contiene el URL para redireccionar al usuario.
400 BadRequest Retorna si la información enviada no es correcta o está en un formato erróneo.
401 Unauthorized Retorna si no se provee el token de autenticación.
500 Error Retorna si el API encuentra un error.