Skip to content

Phone Verification

The phone verification flow sends a one-time passcode (OTP) over WhatsApp. Unlike the order-driven flows, it is not triggered by a Shopify event — it is invoked on demand by storefront features that need to confirm a customer controls a phone number before continuing.

This flow is what powers the Checkout Gate: when a customer is asked to verify their WhatsApp number at checkout, the code they receive is sent through this flow. The same OTP pipeline is also reused to verify guest numbers in the back-in-stock popup.

There is no webhook. The verification message is dispatched when a storefront feature requests a code:

  1. A storefront block (Checkout Gate or back-in-stock popup) requests an OTP for a phone number.
  2. WhatPro verifies the request, runs country, block-list, and rate checks, then generates a code and stores a hashed copy.
  3. The code is delivered through the phone verification flow’s template using the merchant’s WhatsApp number.
  4. The customer enters the code on the storefront, and WhatPro compares it against the stored hash to confirm the number.

Because each OTP is a billable WhatsApp authentication message, the request is signed and rate-limited to prevent anyone from triggering codes to arbitrary numbers.

The phone verification message has a single variable.

VariableDescription
codeThe one-time verification code sent to the customer.

The default message delivers the code with a reminder not to share it with anyone. The code length (and other behavior) is controlled by the storefront feature that requests it — see Checkout Gate.

The phone verification flow underpins the Checkout Gate and guest back-in-stock verification. The Checkout Gate is available on Growth and Plus. Starter and Basic do not include it. See Plans.

The phone verification flow does not tag orders or customers — it verifies a phone number and is not tied to an order. For how WhatPro tags orders in general, see Order tags.