# 7. Commerce Hub: Payment Methods

<div class="flex basis-auto flex-col -mb-(--composer-overlap-px) [--composer-overlap-px:24px] grow overflow-hidden" id="bkmrk-the-payment-methods-"><div class="relative h-full"><div class="flex h-full flex-col overflow-y-auto [scrollbar-gutter:stable_both-edges] @[84rem]/thread:pt-(--header-height)"><div class="@thread-xl/thread:pt-header-height mt-1.5 flex flex-col text-sm pb-25"><article class="text-token-text-primary w-full" data-scroll-anchor="true" data-testid="conversation-turn-520" dir="auto">The **Payment Methods** section lets you configure which payment options appear in your storefront, per Project. You can enable/disable methods, connect integrations, set currencies, and manage rules and credentials—all without writing code.

##### Accessing Payment Methods

In the left sidebar, expand **Commerce Hub**.  
Click **Payment methods**.

##### Payment Methods List

At the top you’ll find:  
**Total:** Number of methods (updates as you search/paginate)  
**Search…**: Live-search by Name, Merchant ID, or Project  
**+ Add**: Opens the “Add payment method” drawer

Below is a table of all methods visible to you:

<div class="text-base my-auto mx-auto py-5 [--thread-content-margin:--spacing(4)] @[37rem]:[--thread-content-margin:--spacing(6)] @[72rem]:[--thread-content-margin:--spacing(16)] px-(--thread-content-margin)"><div class="[--thread-content-max-width:32rem] @[34rem]:[--thread-content-max-width:40rem] @[64rem]:[--thread-content-max-width:48rem] mx-auto flex max-w-(--thread-content-max-width) flex-1 text-base gap-4 md:gap-5 lg:gap-6 group/turn-messages focus-visible:outline-hidden" tabindex="-1"><div class="group/conversation-turn relative flex w-full min-w-0 flex-col agent-turn"><div class="relative flex-col gap-1 md:gap-3"><div class="flex max-w-full flex-col grow"><div class="min-h-8 text-message relative flex w-full flex-col items-end gap-2 text-start break-words whitespace-normal [.text-message+&]:mt-5" data-message-author-role="assistant" data-message-id="be14d851-cec9-43e0-8b3b-92f7fa5bf575" data-message-model-slug="o4-mini-high" dir="auto"><div class="flex w-full flex-col gap-1 empty:hidden first:pt-[3px]"><div class="markdown prose dark:prose-invert w-full break-words light"><div class="_tableContainer_16hzy_1"><div class="_tableWrapper_16hzy_14 group flex w-fit flex-col-reverse" tabindex="-1"><table class="w-fit min-w-(--thread-content-width)" data-end="2255" data-start="681" style="width: 103.69%;"><thead data-end="854" data-start="681"><tr data-end="854" data-start="681"><th data-col-size="sm" data-end="699" data-start="681" style="width: 12.146%;">Column</th><th data-col-size="lg" data-end="854" data-start="699" style="width: 87.8436%;">Description</th></tr></thead><tbody data-end="2255" data-start="1029"><tr data-end="1203" data-start="1029"><td data-col-size="sm" data-end="1047" data-start="1029" style="width: 12.146%;">**Status**</td><td data-col-size="lg" data-end="1203" data-start="1047" style="width: 87.8436%;">Toggle on (blue) to publish this method in the client-facing list; off (gray) to hide it.</td></tr><tr data-end="1376" data-start="1204"><td data-col-size="sm" data-end="1222" data-start="1204" style="width: 12.146%;">**Name**</td><td data-col-size="lg" data-end="1376" data-start="1222" style="width: 87.8436%;">The internal name or label for this method. In some cases it’s a translated label or icon title.</td></tr><tr data-end="1551" data-start="1377"><td data-col-size="sm" data-end="1395" data-start="1377" style="width: 12.146%;">**Project**</td><td data-col-size="lg" data-end="1551" data-start="1395" style="width: 87.8436%;">The Project this method belongs to. If “–”, it’s available globally.</td></tr><tr data-end="1728" data-start="1552"><td data-col-size="sm" data-end="1570" data-start="1552" style="width: 12.146%;">**Type**</td><td data-col-size="lg" data-end="1728" data-start="1570" style="width: 87.8436%;">**Auto** – Backend–driven (e.g. Stripe, Adyen)   
**Manual** – Offline or custom (e.g. cash, bank transfer)</td></tr><tr data-end="1905" data-start="1729"><td data-col-size="sm" data-end="1747" data-start="1729" style="width: 12.146%;">**Integration**</td><td data-col-size="lg" data-end="1905" data-start="1747" style="width: 87.8436%;">**External** – Uses a third–party connector (Stripe, PayPal)   
**Internal** – Built-in or in-house processor</td></tr><tr data-end="2078" data-start="1906"><td data-col-size="sm" data-end="1924" data-start="1906" style="width: 12.146%;">**Merchant ID**</td><td data-col-size="lg" data-end="2078" data-start="1924" style="width: 87.8436%;">Your account or merchant identifier in the payment provider’s system (e.g. Stripe account ID, PSP merchant code).</td></tr><tr data-end="2255" data-start="2079"><td data-col-size="sm" data-end="2097" data-start="2079" style="width: 12.146%;">**Actions**</td><td data-col-size="lg" data-end="2255" data-start="2097" style="width: 87.8436%;">✏️ **Edit** – Modify configuration (credentials, rules, currencies)   
🗑️ **Delete** – Remove this method (will prompt “Are you sure?”).</td></tr></tbody></table>

</div></div></div></div></div></div></div></div></div></div>##### Searching &amp; Filtering

**Search:** Type any part of a method’s Name, Merchant ID, or Project to instantly filter the list.  
**Toggle Status:** Switch off test or deprecated methods to focus on live options without deleting them.

##### Adding a New Payment Method

Click **+ Add**.  
In the **Add payment method** drawer, complete each section:

**General:**

<div class="text-base my-auto mx-auto py-5 [--thread-content-margin:--spacing(4)] @[37rem]:[--thread-content-margin:--spacing(6)] @[72rem]:[--thread-content-margin:--spacing(16)] px-(--thread-content-margin)"><div class="[--thread-content-max-width:32rem] @[34rem]:[--thread-content-max-width:40rem] @[64rem]:[--thread-content-max-width:48rem] mx-auto flex max-w-(--thread-content-max-width) flex-1 text-base gap-4 md:gap-5 lg:gap-6 group/turn-messages focus-visible:outline-hidden" tabindex="-1"><div class="group/conversation-turn relative flex w-full min-w-0 flex-col agent-turn"><div class="relative flex-col gap-1 md:gap-3"><div class="flex max-w-full flex-col grow"><div class="min-h-8 text-message relative flex w-full flex-col items-end gap-2 text-start break-words whitespace-normal [.text-message+&]:mt-5" data-message-author-role="assistant" data-message-id="be14d851-cec9-43e0-8b3b-92f7fa5bf575" data-message-model-slug="o4-mini-high" dir="auto"><div class="flex w-full flex-col gap-1 empty:hidden first:pt-[3px]"><div class="markdown prose dark:prose-invert w-full break-words light">1. **Project** – Choose a Project or leave blank for global availability.
2. **Type** – Select **Auto** (API-driven) or **Manual** (offline).
3. **Integration** – Pick **External** (third-party) or **Internal**.
4. **Show on main page** – Check to list this method prominently.

</div></div></div></div></div></div></div></div>**Label &amp; Credentials:**

<div class="text-base my-auto mx-auto py-5 [--thread-content-margin:--spacing(4)] @[37rem]:[--thread-content-margin:--spacing(6)] @[72rem]:[--thread-content-margin:--spacing(16)] px-(--thread-content-margin)"><div class="[--thread-content-max-width:32rem] @[34rem]:[--thread-content-max-width:40rem] @[64rem]:[--thread-content-max-width:48rem] mx-auto flex max-w-(--thread-content-max-width) flex-1 text-base gap-4 md:gap-5 lg:gap-6 group/turn-messages focus-visible:outline-hidden" tabindex="-1"><div class="group/conversation-turn relative flex w-full min-w-0 flex-col agent-turn"><div class="relative flex-col gap-1 md:gap-3"><div class="flex max-w-full flex-col grow"><div class="min-h-8 text-message relative flex w-full flex-col items-end gap-2 text-start break-words whitespace-normal [.text-message+&]:mt-5" data-message-author-role="assistant" data-message-id="be14d851-cec9-43e0-8b3b-92f7fa5bf575" data-message-model-slug="o4-mini-high" dir="auto"><div class="flex w-full flex-col gap-1 empty:hidden first:pt-[3px]"><div class="markdown prose dark:prose-invert w-full break-words light">1. **Label** – Choose from your predefined set (e.g. “Credit Card,” “Bank Transfer”), or enter your own custom label.
2. **Name** – The display name clients will see at checkout.
3. **Merchant ID** – Your identifier with that processor.

</div></div></div></div></div></div></div></div>**Currencies:** A JSON array of supported currency codes (e.g. `["USD","EUR"]`).  
Click the `{}` tree icon to append each currency node.

**Rules:** A JSON object defining conditional logic (e.g. minimum order amount, country restrictions).  
Use the tree picker to define key/value pairs.

**Credentials:** A JSON object for API keys, secrets, or other connection parameters.

**Language:** (If available) Translation badges to localize the Label and checkout text.

Click **Save**. The new method appears in your list, set to **Inactive** by default.

##### Editing an Existing Method

Click the ✏️ **Edit** icon in the Actions column.  
Update any of the **General**, **Label**, **Credentials**, **Rules**, or **Currencies** fields.  
Click **Save** to apply changes.

<p class="callout info">**Note**: You cannot change the Type or Integration after creation to avoid mismatched credentials.</p>

##### Deleting a Payment Method

Click the 🗑️ **Delete** icon.  
Confirm “Are you sure?” to permanently remove it.

With Payment Methods properly configured, you can control exactly which options your customers see—tailored by project, region, currency, or any custom business rule—while keeping your checkout flow secure and reliable.

</article></div></div></div></div>