Checkpost

How to stop products being sold in specific Shopify Markets

Short answer: Block checkout when the buyer's market country is one where certain products can't be sold due to regulation or licensing. In Checkpost, choose “Products unavailable in a market” from Templates, adjust the values, test it, then save and enable the rule.

The problem

Licensing, certification and regulation often apply per country. A product sold freely in the US may need registration in the EU, but the same Shopify product shows in every market.

How to set it up

  1. Install Checkpost from the Shopify App Store.
  2. Open Templates and choose Products unavailable in a market.
  3. Tag the products and list the market country codes.
  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: “Some items are only available in the United States.” at the top of checkout, in the cart and at checkout.

Rule definition (JSON)
{
  "name": "US-only products",
  "match": "all",
  "conditions": [
    {
      "kind": "cart_contains",
      "filter": {
        "productTags": [
          "us-only"
        ]
      }
    },
    {
      "kind": "text",
      "field": "market_country",
      "op": "not_equals_any",
      "values": [
        "US"
      ]
    }
  ],
  "message": "Some items are only available in the United States.",
  "target": "cart",
  "runOn": "always"
}

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

Can you do this without an app?

Shopify Markets can include or exclude products per market catalog. Use a rule when you need an explicit checkout block or conditions that catalogs can't express.

FAQ

What's the difference between market country and shipping country?

Market country is the storefront context the shopper is browsing (currency, language). Shipping country is the address entered at checkout. They usually match but don't have to.

Can I allow several countries?

Yes. List every allowed country code with the "is none of" operator.

Related rules

Add products unavailable in a market to your store