Skip to content
WS Themes
Native Shopify Functions App

Precision checkout rules for payments & delivery.

WS Checkout Control is a Dockerized embedded Shopify app that lets merchants conditionally hide, rename, and reorder payment methods, shipping rates, local delivery, and pickup points dynamically during checkout.

ExecutionShopify Functions
PersistencePostgreSQL / Prisma
DeploymentDocker & Dokploy
IP PrivacyZero raw IP logs
Checkout Rule Preview Synchronized
High-Value RuleActive

If Subtotal > $1,000 → MOVE Direct Bank Transfer to #1 & HIDE Credit Cards.

Service Area RestrictionActive

If ZIP outside allowed list → HIDE Local Pickup option.

B2B Wholesale RuleSimulator

If Customer Tag = "wholesale" → RENAME Shipping to "Freight Carrier Net 30".

Capabilities

Control every payment & delivery option.

Engineered for high-volume stores, B2B merchants, multi-market operations, and stores requiring conditional checkout logic.

Payment & delivery customization

Hide, rename, and reorder payment methods, shipping rates, local delivery, and pickup options dynamically.

Multi-signal condition engine

Filter by cart total, currency, quantity, weight, address, country, province, ZIP, customer state, B2B, customer tags, and SKUs.

Privacy-minimizing IP signals

Storefront signals classify buyer IP addresses in server memory without saving raw IP logs to the database.

High-value & pickup presets

Pre-built workflows for prioritizing direct bank transfers on large orders and restricting local pickup by postal area.

Native Shopify Functions

Executes high-performance payment and delivery logic directly inside Shopify checkout via WebAssembly.

Simulator & fail-open protection

Test rules interactively before syncing; built-in fail-open logic ensures checkout continuity for every buyer.

Condition Engine

Comprehensive signal evaluation.

Combine conditions with ALL (AND) or ANY (OR) groups, numerical priority ordering, and real-time evaluation.

Cart & Value Signals

Cart subtotal amount, currency, total item quantity, line count, total weight, physical/digital item contents.

Address & Location

Shipping destination country, province, city, ZIP/postcode, customer state, B2B company status, and customer tags.

Catalog & Products

Specific product IDs, variant IDs, SKU codes, vendor names, product types, and selected delivery option.

Storefront & IP Signals

Storefront locale signals, IP policy classification labels (EU, proxy, regional), and arbitrary cart attributes.

Rule Actions

HIDE options, RENAME display titles on the fly, and MOVE methods to specific numerical priority positions.

Safety & Simulator

Interactive simulator, fail-open execution model, anti-hide-all safety locks, and audit revision history.

Important Payment Limitation

The app controls payment methods Shopify already offers at checkout. It does not create a payment gateway, process a bank transfer, or add a new payment method.

  • High-value orders: First enable a manual payment method (e.g. Direct Bank Transfer) in Shopify Settings → Payments, then create rules that prioritize that method and hide selected card methods above the desired threshold.
  • Accelerated checkout options: Shopify applies plan and geographic restrictions to some payment operations; hiding accelerated checkout options (like Shop Pay, Apple Pay, Google Pay) through a custom app requires Shopify Plus.

First Merchant Setup Checklist

  1. Install the app and grant write_payment_customizations, write_delivery_customizations, and write_app_proxy permissions.
  2. Enable every payment method that rules should control in Shopify Settings → Payments.
  3. Open WS Checkout Control, review disabled preset rules, and replace target names/thresholds with store values.
  4. Enable desired rules and press Synchronize.
  5. Enable the WS Checkout Signals app embed in Online Store theme settings for IP & tag signals.
  6. Run representative checkout tests for every active market, currency, language, and delivery option.

Technical & Local Setup

Node.js 22+, pnpm 10.18+, PostgreSQL, Shopify Partner app, and development store.

cp .env.staging.example .env.staging
pnpm install --no-frozen-lockfile
pnpm run prisma:generate
pnpm run migrate
pnpm run update:config:staging
pnpm run deploy:staging
pnpm run dev
Build something useful

Need a Shopify or web development partner?

Tell us what you are planning, where the current setup falls short, and what success looks like.