OTP+ help for Shopify merchants

COD order verification

Ask Cash-on-Delivery buyers to confirm their order by phone, to cut fake and undeliverable orders.

COD verification is free on every plan. OTP+ never cancels an order by itself.

Before you start

  1. Add a Cash on Delivery payment method in Shopify. Use Shopify's Cash on Delivery (COD) method under payment settings. If you make your own manual payment method instead, put COD or Cash on Delivery in its name, for example COD - Courier. OTP+ only treats an order as COD when it was paid with a method named this way.
  2. Add the OTP+ block to checkout. Buyers confirm in the OTP+ Post-Purchase Verification block on your Thank you and Order status pages.

Turn it on

  1. Go to Settings > Access control.
  2. In the COD order verification card, turn on Enable COD verification.
  3. If you see COD orders come from a manual payment method, click Open payment settings and check step 1 above.
  4. If you see Add the OTP+ block to checkout, click Open checkout editor. Add the OTP+ block to both the Thank you and Order status pages, then save in the checkout editor.
  5. Under While unverified, pick one:
    • Hold fulfillment (recommended) — COD orders can't be fulfilled until the buyer confirms. Confirmed orders are released automatically and get the tag otp-cod-verified.
    • Tag only — fulfillment is never held. Orders only get the tag otp-cod-verified or otp-cod-unverified.
  6. Set Auto-tag unverified after (days). Pick 1 to 30 days. The default is 3.
  7. Click Save in the bar at the top of the page.

Once buyers have used the block, the card shows "✓ Buyers have used the OTP+ checkout block in the last 30 days."

What the buyer sees

  1. After placing a COD order, the thank-you page shows Confirm your Cash-on-Delivery order.
  2. The buyer clicks Send confirmation code. The code goes by text to the phone number on the order.
  3. The buyer enters the code and clicks Confirm my order.
  4. They see Order confirmed.

Buyers can also confirm later from their Order status page.

A COD order with no phone number can't be confirmed this way. The buyer is asked to contact your store.

All COD orders are checked, whether or not the buyer has an account.

Tags OTP+ adds

TagWhen
otp-cod-verifiedThe buyer confirmed.
otp-cod-unverifiedThe buyer still hadn't confirmed after the number of days you set.

Good to know:

  • The otp-cod-unverified tag does not release a hold. The hold stays until the buyer confirms or you release it.
  • A buyer can still confirm after the otp-cod-unverified tag is added. OTP+ then removes that tag, adds otp-cod-verified, and releases the hold.

Cancel unverified orders automatically (optional)

OTP+ tags orders. Cancelling is up to you, using Shopify Flow. Flow is free on all Shopify plans.

The Get the Flow template button in the card opens Flow's template library and searches for Cancel unverified COD orders. If the template appears, you can install it from there. Before you turn it on, follow its setup note.

If the template doesn't appear, build the workflow yourself:

  1. In Shopify admin, open the Flow app and create a new workflow.
  2. Start the workflow when a tag is added to an order. If you see OTP+'s own trigger, COD order stayed unverified, you can start from that instead.
  3. If you used the tag trigger, add a condition: the order's tags include otp-cod-unverified.
  4. Add a wait step, for example 1 hour. This gives late buyers a last chance to confirm.
  5. After the wait, add a condition that checks all of these again:
    • the order's tags still include otp-cod-unverified,
    • the order's tags do not include otp-cod-verified,
    • the order is not already cancelled,
    • the order is unfulfilled,
    • the order's payment is still pending.
  6. Add a cancel order action. Choose to restock items. Don't refund, as nothing was paid.
  7. Turn the workflow on.

Why the second check matters: a buyer may confirm during the wait. Without it, Flow could cancel an order the buyer just confirmed.

Not ready to auto-cancel? Make the last step send you an email instead, and cancel by hand.

Turning COD verification off

Turning it off does not release orders already on hold. Release them yourself on each order in Shopify, or let the buyer confirm from their order status page. The card shows how many COD orders may still be on hold, with an Open orders button.

Common problems

Nothing happens on COD orders. Check the payment method's name contains COD or Cash on Delivery, and that the OTP+ block is in checkout.

"1 confirmed COD order may still be on hold" (or a higher number). The buyer confirmed, but the hold didn't come off. Click Open orders and release the hold on the order in Shopify.

"We can't tell if any COD orders are still on hold". OTP+ couldn't load its records just now. Try again shortly, or check your orders in Shopify.

A buyer says they got no code. Check the order has a phone number. Without one, the buyer can't confirm by code.

Still stuck? Email [email protected] — we reply within 1 business day, 24/7.