Manual para crear y utilizar un Webwook en QPayBilling

Manual para crear y utilizar un Webwook en QPayBilling

Un webhook es, por decirlo de la manera más sencilla, es un sistema de comunicación automático entre apps.  Lo que hacen es aportar una solución sencilla para el intercambio de datos entre aplicaciones  web, o incluso entre nuestro sitio web y esas aplicaciones.

Pasos para crear un webhook

  1. Después de ingresar al sistema de QPayBilling puedes hacer click en el menú "Webhook", asimismo puedes ingresar por esta url a continuación:   QPayBilling- Webhook (qpaypro.com)  



  2. Aquí podemos visualizar el listado de los webhooks creados y también configurar uno nuevo, a continuación hacemos click en "Nuevo" para configurar nuestro primer webhook.



  3. A continuación ingresamos la información de los dos primeros campos marcados en azul: Nombre del webhook y descripción del webhook, este último es opcional. 



  4. Ahora seleccionamos uno o más servicios, esos servicios son: Nueva suscripción, Reactivación de suscripción, Renovación de suscripción, Cancelación de suscripción y Pago Manual de suscripción. Estos servicios nos ayudarán a ejecutar el Webhook de manera automática, es decir que si creamos un webhook con el servicio  Nueva suscripción,  dicho webhook se habrá ejecutado cuando un usuario del comercio realice una nueva suscripción. 



  5. A continuación ingresamos la URL (ENDPOINT) , esta URL es ejecutada por el sistema QPayBilling (Ver paso 4). Hacemos click en "POST" y veremos las opciones: POST, PUT y  DELETE. Podrás elegir uno de esas tres opciones dependiendo del  método que acepta la URL que has ingresado.



  6. En la opción de "Parámetros" nos permite agregar uno o más variables de tipo GET a la url, a estos se les denomina los Query params , y podemos ver una previsualización de como quedaría dicha url en "URL Preview" que está sombreado en azul. Si queremos agregar más variables o query params podemos hacer click en "Agregar nuevo parámetro".



  7. A continuación agregaremos los "Headers", esto más que todo para seguridad de la URL (ENDPOINT) ya que son recibidos por la misma Si queremos agregar más headers podemos hacer click en  "Agregar nuevo header". 


  8. Como último paso para tener listo nuestro primer webhook definimos que queremos que se envíe en el cuerpo del endpoint (Paso 5, 6 y 7), 
    Cómo primera opción tenemos: "Payload por defecto",
    esta opción permite el envío de información dependiendo del servicio seleccionado.  (Consultar  " Formato de respuesta: Payload por defecto" al final del documento)



    Cómo segunda opción tenemos: "x-www-form-urlencoded", esta opción permite el envío de información mediante variables predefinidas.



    Cómo tercera opción tenemos: "Raw",
    esta opción es similar a la segunda opción , pero permite el envío de información mediante variables predefinidas en formato JSON .



  9. Ahora que tenemos configurado el webhook hacemos click en "Guardar"

Pasos para editar un webhook

En el listado de webhooks hacemos click en "Acciones" este nos mostrará la opción de editar y hacemos click, nos mostrará el formulario y modificamos los valores pertinentes, si todo correcto hacemos click en "Modificar" que se encuentra al final del formulario.   

         

Pasos para eliminar un webhook

En el listado de webhooks hacemos click en  "Acciones"  este nos mostrará la opción de eliminar y hacemos click, nos mostrará una confirmación, hacemos click en "Eliminar"





Formato de respuesta: Payload por defecto

A continuación se muestra la información en una estructura de tipo JSON, dicha información es la que se va a enviar a la URL (ENDPOINT) en caso hayamos elegido la opción "Payload por defecto" en el "Body" del webhook (paso 8).
Es importante tener en cuenta que la información puede variar dependiendo de la suscripción que está siendo manipulada al momento de ejecutar el webhook (paso 4).
 
{
    "created_at": "2020-09-30T19:38:49.000000Z",
    "start_date": "2020-09-30T06:00:00.000000Z",
    "code": "SUB-00001",
    "status": 0,
    "last_billing_date": null,
    "next_billing_date": "2020-09-30T06:00:00.000000Z",
    "subscription_charge_total": 100,
    "notification_email": " test@gmail.com ",
    "product_id": 52,
    "plan_id": 74,
    "addon_id": null,
    "coupon_id": null,
    "customer_id": 59,
    "product": {
        "id": 52,
        "hash": "41cfc0d1f2d127b04555b7246d84019b4d27710a3f3aff6e7764375b1e06e05d",
        "business_id": 133,
        "name": "Clase Virtual",
        "description": "Clase Virtual Ejercicio",
        "currency": "GTQ",
        "notification_emails": " test@qpaypro.com ",
        "redirect_after_purchase_url": null,
        "status": "activo"
    },
    "plan": {
        "id": 74,
        "product_id": 52,
        "name": "Clase 1 vez por semana",
        "code": "clase1",
        "unit_name": null,
        "price": 100,
        "billing_cycle_interval_number": 1,
        "billing_cycle_interval": 2,
        "currency": null,
        "billing_cycle_invoices_type": 1,
        "billing_cycle_exp_number": null,
        "trial_days": 0,
        "setup_fee": 0,
        "description": "clase virtual 1 vez por semana con especialista",
        "features": "Clase virtual,acceso zoom,dieta",
        "status": 1
    },
    "addon": null,
    "coupon": null,
    "customer": {
        "id": 59,
        "billing_address": "1calle 2da avenida",
        "billing_country": "88",
        "billing_city": "Guatemala",
        "billing_postal_code": "01001",
        "billing_state": "Guatemala",
        "shipping_address": "1calle 2da avenida",
        "shipping_country": "88",
        "shipping_city": "Guatemala",
        "shipping_postal_code": "01001",
        "shipping_state": "Guatemala"
    }
}


    • Related Articles

    • Integra Facebook, Instagram y FB Messenger a tu tienda en línea con QPayShop

      Una de las características principales de QPayShop, es la posibilidad y facilidad que se tiene de integrar todo el catálogo de la tienda en línea a la tienda de Facebook e Instagram, así como la posibilidad de conectar nuestro FB Messenger para ...
    • ¿Cómo colocar un botón para solicitar COTIZACION en productos específico?

      Agregar botones  para productos individuales Si necesita la posibilidad de solicitar una cotización solo para algunos productos en su tienda, puede agregar un botón especial Solicitar una cotización al campo de descripción en las páginas de sus ...
    • Configurar métodos de envío y recogida con QPayShop

      Para agregar métodos de envío dentro de QPayShop vamos al menu lateral, luego "Configuración" y luego "Envío y Recogida", allí podemos definir nuestros métodos de envío, así como establecer la recogida en tienda si así lo deseamos. Como ...
    • Funcionamiento y uso de Visacuotas y Mastercuotas en línea

      QPayPro permite mediante su alianza con Visanet de Guatemala el procesamiento de Visa en Cuotas y Mastercard en Cuotas (válido solo para tarjetas de crédito emitidas en Guatemala). Toda afiliación con QPayPro en Guatemala cuenta con dicho servicio ...
    • Crea y administra descuentos en QPayShop

      Te mostramos las opciones que existen dentro de QPayShop para aplicar descuentos a tus clientes, ya sea por medio de cupones o descuentos generales en toda la tienda. Mira el proceso en el siguiente video