Marcar el pedido como pagado al recibir el webhook

Cuando su banco, sistema de facturación o de pagos confirme un pago a través de su webhook, marque el pedido correspondiente como pagado. Diseñado para pedidos pagados mediante transferencia bancaria, factura y contra reembolso que Shopify no puede registrar por sí mismo.

Un solo activador de las acciones integradas de Workflow Webhooks y Shopify; no se necesita ninguna otra aplicación.

El flujo de trabajo en Shopify Flow: Marcar el pedido como pagado al recibir el webhook
El flujo de trabajo completo tal y como se muestra en Shopify Flow.

Lo que se necesita

Un webhook en Workflow Webhooks con esta asignación de payload. Consulte Asignación de la carga útil y variables de flujo.

Campo Qué asignarle
fieldOne El número de pedido, por ejemplo#1001

Una llamada al webhook tendría entonces el siguiente aspecto:

bash
curl -X POST https://<your webhook URL> \
  -H "Content-Type: application/json" \
  -H "X-Api-Key: <your token>" \
  -d '{"orderNumber": "#1001"}'

Obtenga el flujo de trabajo

  1. Descargue el archivo .flow que se adjunta al final de esta página.
  2. En el panel de administración de Shopify, abra «Shopify Flow», haga clic en «Importar» y seleccione el archivo.
  3. Compruebe los pasos y, a continuación, haga clic en «Activar flujo de trabajo».

El archivo es una exportación procedente de la propia Shopify Flow. No lo modifique manualmente; cambie el flujo de trabajo en Shopify Flow tras importarlo.

Cómo funciona

  1. El «Activador de webhook» inicia el flujo de trabajo cada vez que se accede a la URL de su webhook y le pasa los campos asignados.
  2. La función «Obtener datos del pedido» busca el pedido mediante la consulta name:{{fieldOne}} y conserva como máximo un resultado.
  3. Para cada uno, se ejecuta una vez para el pedido que ha encontrado, y no se ejecuta en absoluto cuando no hay ningún pedido que coincida.
  4. Al marcar un pedido como pagado, se registra el saldo pendiente de dicho pedido como pagado.

Haga que sea suyo

  • Añada una condición en requestHeaders o en un campo de importe asignado y compárela con el total del pedido antes de marcarlo como pagado.
  • Añada etiquetas de pedido después del paso de pago; por ejemplo, paid-by-bank-transfer.

Próximos pasos