Why payment providers vary by branch
Online payment providers are usually tied to a specific merchant account, bank, or even a country. A studio chain with branches in different cities — or with different legal entities behind each branch — often needs to route checkout to different providers.
Each Online Payment Option record carries its own location_id, so the same provider can be enabled at one branch and absent at another. Turning on the settings_payment_options_location_enabled flag tells the admin to expose this per-branch view rather than treating every option as global.
Adding a provider for one location
Go to Admin → Settings → Online Payment Options. With the per-location flag on, use the location selector in the admin header to choose the branch you're configuring, then click Add and pick a provider — for example Stripe, Line Pay, or ECPay — and enter the credentials issued for that branch.
The new record is saved with the selected branch's location_id. Repeat for each branch that needs its own setup. A provider can exist multiple times — once per location — each with its own keys.
What customers see at checkout
At checkout the storefront looks up the cart's branch — usually the location the customer chose when picking a class or appointment — and loads only the Online Payment Options whose location_id matches.
So a customer booking at the Taipei branch might see Line Pay and ECPay, while a customer at the Tokyo branch sees only Stripe. If a branch has no payment option records at all, checkout falls back to whatever shared providers were configured before per-location mode was turned on.
