KriLabs KriLabs OrderPing Docs

COD orders not triggering

OrderPing decides an order is COD by matching the Shopify payment gateway name against a list of known strings. If your gateway name is different, the order is skipped.

Which gateway names OrderPing detects

OrderPing matches the Shopify order’s payment_gateway_names (lowercased) against any of these substrings:

  • cash on delivery
  • cod
  • cash_on_delivery
  • pay on delivery
  • collect on delivery

If any of those strings is contained in the gateway name, the order is treated as COD.

How to check what Shopify is sending

  1. Open the order in Shopify admin

    Look at the Payment section. The gateway name is what Shopify recorded at checkout.

  2. Compare to the list above

    Common third-party COD apps can use names like “Advanced Cash on Delivery” or “COD Custom” — these match because they contain cod or cash on delivery.

  3. If nothing matches

    Email support@kri-labs.com with the exact gateway name you see. We add new matchers regularly.

Also check

  • The cod_confirmation lifecycle stage is enabled.
  • You’ve picked a template for the stage.
  • The order’s shipping phone has a valid country code (orders with missing/malformed phones are skipped).
  • Your shop isn’t marked uninstalled or paused.
Shopify Flow folksIf you want to run the COD flow on a subset of orders (say, only over a certain value), combine OrderPing with a Shopify Flow rule that only sets the COD gateway on those orders.
Was this page helpful?
Last updated 2026-04-18