Checkpost

How to stop shoppers who picked store pickup from choosing shipping at checkout

Short answer: If the shopper chose pickup in the cart, block checkout when they then select a shipping rate instead of pickup. In Checkpost, choose “Pickup chosen, but shipping selected” from Templates, adjust the values, test it, then save and enable the rule.

The problem

A shopper can select pickup in a cart integration and then choose a shipping method at checkout. The saved pickup workflow and fulfilment method disagree. This preset blocks that specific conflict when both values are known.

How to set it up

  1. Install Checkpost from the Shopify App Store.
  2. Open Templates and choose Pickup chosen, but shipping selected.
  3. Adjust the delivery types if your pickup app uses shipping rates named "Pickup" instead of Shopify pickup.
  4. Use Try this rule to test a sample cart, then click Save rule.

The rule

Checkout is blocked when all of these conditions are true:

Shoppers see: “You chose store pickup in your cart. Select the pickup option to continue.” at the top of checkout, once they reach checkout.

Rule definition (JSON)
{
  "name": "Pickup needs a pickup method",
  "match": "all",
  "conditions": [
    {
      "kind": "attribute",
      "key": "Checkout-Method",
      "op": "equals_any",
      "values": [
        "pickup"
      ]
    },
    {
      "kind": "text",
      "field": "delivery_method_type",
      "op": "equals_any",
      "values": [
        "SHIPPING",
        "LOCAL"
      ]
    }
  ],
  "message": "You chose store pickup in your cart. Select the pickup option to continue.",
  "target": "cart",
  "runOn": "checkout"
}

Examples with the default settings

These outcomes apply to this rule alone. Other enabled rules may also affect checkout.

Test cartExpected outcome
Cart pickup and checkout PICK_UP agreeAllowed by this rule
Cart pickup but checkout SHIPPING selectedCheckout blocked

Where this rule works

These are cart and checkout validations, including supported accelerated checkouts. They are current-cart policies; they do not track previous purchases of a SKU. Shopify excludes POS, recurring subscription orders and native pre-order/Try Before You Buy flows from this API. See Shopify's validation compatibility.

Tips

FAQ

Will native pickup be allowed?

Yes. A selected PICK_UP method does not match the SHIPPING or LOCAL values blocked by the preset.

What if my pickup option is a shipping rate named Pickup?

The default would reject it because its type is SHIPPING. Customise the condition to distinguish the actual pickup rate by its name before enabling the rule.

Related rules

Add pickup chosen, but shipping selected to your store