Why merchants do this
Hiding, reordering, or renaming payment methods isn't an edge case — it was one of the three original Shopify Script types, and one of the most common uses of the Script Editor before it shut down. Merchants reached for payment scripts constantly because the default checkout treats every configured payment method the same way for every customer, and real stores rarely work that way. Typical reasons:
Region or customer-limited COD
Show Cash on Delivery only for certain regions or customer segments, and hide it everywhere else — useful where COD carries real fulfilment risk outside a known service area.
Hide wholesale-only methods
Keep invoice or net-terms payment methods visible only to tagged wholesale accounts, hidden from retail customers who'd otherwise be confused by a "pay later" option meant for B2B.
Push a preferred method first
Move a lower-fee or preferred payment option to the top of the list instead of leaving the order to chance, nudging checkout behavior without removing anyone's choice.
Rename confusing labels
Replace a payment method's default label — often a processor's internal name — with wording your customers actually recognize and trust at checkout.
None of this is about tricking anyone into paying a certain way. It's about matching the payment list to who's actually buying — a wholesale account, a local customer, someone checking out from a region your fulfilment process doesn't cover — instead of showing every method to every shopper regardless of fit.
What's possible now via Functions apps
Through a Functions app, payment-method rules can be conditioned on:
- Cart total — for example, hide Cash on Delivery above a certain order value.
- Customer tags — for example, show a net-terms invoice method only to accounts tagged "wholesale."
- Products in the cart — for example, hide a payment method when a restricted item is present.
Rules can hide a method, move it up or down in the list, or change its displayed label. Matching happens by the payment method's exact display name (case-insensitive) — Shopify doesn't expose a stable ID for third-party apps to key off of, so the label shown to customers is what your rule matches against.
Conditions can also be combined — for example, hide a wholesale invoice method unless the customer is tagged "wholesale" and the cart total is above a minimum order value, rather than tag alone. This mirrors what a hand-written payment Script could do with conditional logic; it's just expressed as a set of dropdowns and toggles instead of code.
Step-by-step with Scriptly
None of this requires touching code or waiting on a developer. The whole setup lives in Scriptly's rule builder, and nothing goes live until you enable it yourself.
-
Open the "Payment method rules" template
Start from Scriptly's payment-method rule builder.
-
Pick the payment method by its exact display name
For example, "Cash on Delivery (COD)." Case doesn't matter, but the wording has to match what's configured in your Shopify payment settings.
-
Set the action
Hide, reorder, or rename — pick one or combine them.
-
Add conditions if needed
Cart total, customer tag, or products in cart.
-
Preview in the simulator
Test the rule against real cart scenarios before it goes live.
-
Enable the rule
It runs through the same Payment Customization Function Shopify calls at checkout.