Pago Manual

Pago Manual

Para este servicio se debe consumir el siguiente endpoint:

A continuación, se muestra el paso a paso para ejecutar un pago manual de una suscripción en nuestro API de forma exitosa:

1. Crear el objeto JSON a enviar

El objeto json debe tener la siguiente estructura:

  1. {
  2.   "subscriptionId": "id returned when subscription was created",
  3.   "merchantId": "your merchantid",
  4.   "secret": "your secret",
  5. }

A continuación, se muestra la descripción de los parámetros:

  1. subscriptionId: Es el identificador que se recibe en la respuesta cuando se crea una suscripción
  2. secret: secret provisto por GreenPay.
  3. merchant: merchantId provisto por GreenPay.

2. Enviar la solicitud de pago manual

Se debe enviar una solicitud HTTP de tipo POST al endpoint para ejecutar el pago manual con el objeto json que contiene los datos de la suscripción.

Una vez que se ha enviado la solicitud y esta se haya realizada con éxito, se obtiene un objeto de tipo JSON como respuesta.

Al recibir esta respuesta, el parámetro que se debe obtener del objeto JSON es el “body”, ya que este contiene el resultado del cambio del monto de la suscripción. En la siguiente imagen se muestra un ejemplo de la respuesta que se recibe:

  1. {
  2.     "status": "SUCCESS",
  3.     "code": 200,
  4.     "result": {
  5.         "status": "approved",
  6.         "orderStatus": "ACTIVE",
  7.         "merchantId": "143b28c9-32ad-4635-8ed8-d6abfb6863a0",
  8.         "order": {
  9.             "order_reference": "9541b344c3d45d421acd454d61251cde_2",
  10.             "subscriptionId": "9541b344c3d45d421acd454d61251cde",
  11.             "user": "UserBot",
  12.             "amount": 100,
  13.             "currency": "USD",
  14.             "date": "2018-12-11T06:00:00.000Z",
  15.             "authorization": "533735",
  16.             "details": "",
  17.             "errors": [],
  18.             "reason": "Manual payment"
  19.         }
  20.     }
  21. }

A continuación, se muestra un ejemplo en javascript del envío de la solicitud al endpoint de suscripciones para ejecutar un pago manual. Esta función también obtiene el “body” del objeto tipo JSON que se recibe como respuesta.

  1. var unirest = require("unirest");

  2. var req = unirest("POST", "
  3. https://sandbox-merchant.greenpay.me/subscriptions/pay");

  4. req.headers({
  5.  "cache-control": "no-cache",
  6.  "Content-Type": "application/json"
  7. });

  8. req.type("json");
  9. req.send({
  10.  "subscriptionId": "b69cd5773eac06bf25a702bac02e8079",
  11.  "secret": "QUY5MzBEMkRDMzVCMDFCRDc2NzEwRjZCQjE3NjhFNkE0NjhEQ0MxRjkxQzkzMjAwNzVDNUVGNkY5RTc0N0M0NzkzNUEyQUZFQjczMEYyODEyRjJEMDc5Q0ExNTk1NTA0NjdCMkNBODg1N0Q4MzY2MjI0NEREMUVGQjk4NTcwMzg=",
  12.  "merchantId": "143b28c9-32ad-4635-8ed8-d6abfb6863a0"
  13. });

  14. req.end(function (res) {
  15.  if (res.error) throw new Error(res.error);

  16.  console.log(res.body);
  17. });

  18. req.headers({
  19.  "cache-control": "no-cache",
  20.  "Content-Type": "application/json"
  21. });

  22. req.type("json");
  23. req.send({
  24.  "subscriptionId": "b69cd5773eac06bf25a702bac02e8079",
  25.  "secret": "QUY5MzBEMkRDMzVCMDFCRDc2NzEwRjZCQjE3NjhFNkE0NjhEQ0MxRjkxQzkzMjAwNzVDNUVGNkY5RTc0N0M0NzkzNUEyQUZFQjczMEYyODEyRjJEMDc5Q0ExNTk1NTA0NjdCMkNBODg1N0Q4MzY2MjI0NEREMUVGQjk4NTcwMzg=",
  26.  "merchantId": "143b28c9-32ad-4635-8ed8-d6abfb6863a0"
  27. });

  28. req.end(function (res) {
  29.  if (res.error) throw new Error(res.error);

  30.  console.log(res.body);
  31. });

3. Posibles errores a recibir

  • Merchant doesn't exist.

Si se intenta pagar manualmente una suscripción con credenciales incorrectas, la respuesta retornada será la siguiente.

  1. {
  2.   "code": 500,
  3.   "status": "FAIL",
  4.   "result": [],
  5.   "errors": [
  6.       ""Merchant doesn't exist"."
  7.   ]
  8. }
  • Subscription not found. Impossible to pay manually.

Si se intenta pagar manualmente una suscripción inactiva o en estado On Hold (que tenga reintentos pendientes o no se haya cobrado automáticamente), la respuesta retornada será la siguiente.

  1. ​{
  2.   "code": 500,
  3.   "status": "FAIL",
  4.   "result": [],
  5.   "errors": [
  6.       "Subscription not found. Impossible to pay manually."
  7.   ]
  8. }



    • Related Articles

    • Crear orden de pago

      Consideraciones Una orden de pago se crea para indicar al API de pago que se efectuará una transacción por el motivo de los datos indicados en la orden. Para esto se debe tener las siguientes consideraciones: Utilizar el servicio en los endpoints: En ...
    • Invocar API de pago

      Consideraciones Para invocar el api de pagos se debe considerar lo siguiente Utilizar el servicio en los endpoints:  Sandbox: https://sandbox-checkout.greenpay.me/kount Producción: https://checkout.greenpay.me/kount Tener una session y token de una ...
    • Actualizar método de pago

      Para este servicio se debe consumir el siguiente endpoint: https://sandbox-merchant.greenpay.me/subscriptions/update/card_token A continuación, se muestra el paso a paso para cancelar  una suscripción en nuestro API de forma exitosa: 1. Crear el ...
    • Proceso de pago con webform

      Consideraciones Para utilizar el formulario de pago de Greenpay, se debe considerar los siguiente: El formulario está disponible en: Sandbox: https://sandbox-checkoutform.greenpay.me/ Producción: https://checkout-form.greenpay.me/ Tener ...
    • Proceso de pago con Widget

      En esta sección se muestra una guía paso a paso de cómo integrarse al servicio de pagos por medio del widget. Para utilizar esta funcionalidad es necesario haber creado una orden de pago, para crear la orden pago puede revisar el articulo "Crear una ...