> ## Documentation Index
> Fetch the complete documentation index at: https://docs.fusioncore.us/llms.txt
> Use this file to discover all available pages before exploring further.

# Payment Types Overview

> Configure how money moves in fusionCore: set up Payment Types per Business Unit, control where each option appears, and govern refunds.

## Overview

A **Payment Type** tells fusionCore *how* money can move for a part of your organization. Each one names a payment method (such as Card, Check, or Account Credit), says where it can be used, and controls whether it can issue refunds.

Each Payment Type you create is one record in the `Payment_Type__c` custom object. These records are configuration, not transactions. The actual money movement is recorded separately on Financial Event (`Financial_Event__c`) records when staff or members pay or refund.

You set up a Payment Type for a **Business Unit** (`Business_Unit__c`), which is a branded operating division of your organization. This lets you control exactly which payment options appear, per division and per currency. For example, you can offer "Card via Stripe" to portal members, restrict "Check" to back-office staff, and offer "Account Credit" to both.

<Info>
  Payment Types are the main lever you pull when the right payment option is not showing up on a pay or refund screen. Most "my payment method is missing" problems trace back to a Payment Type's settings — see the **Limitations and Common Pitfalls** section on the category page for your method.
</Info>

## Payment Type Categories

There are three categories of Payment Type. Each category page walks through its full setup — the fields to set, the components it uses, and the rules enforced when you save.

<CardGroup cols={3}>
  <Card title="Online (Stripe) Payment Types" icon="credit-card" href="/end-user-guides/accounting/payment-types/setting-up-stripe-payment-types/index" arrow="true">
    Stripe-backed Card and ACH methods that can appear in the portal and be saved as wallet items.
  </Card>

  <Card title="Offline Payment Types" icon="money-check-dollar" href="/end-user-guides/accounting/payment-types/setting-up-offline-payment-types" arrow="true">
    Staff-only Check, Cash, and Account Credit methods that do not use a payment processor.
  </Card>

  <Card title="Custom Payment Types" icon="gear" href="/end-user-guides/accounting/payment-types/setting-up-custom-payment-types" arrow="true">
    Add a payment method beyond the built-in options, which needs extra configuration.
  </Card>
</CardGroup>

## Record Types

`Payment_Type__c` has two **record types**:

| Record type      | Label       | What it is                                                                      |
| ---------------- | ----------- | ------------------------------------------------------------------------------- |
| `FC_Payment`     | Payment     | A payment option offered at checkout or pay time.                               |
| `FC_Wallet_Item` | Wallet Item | A saved payment method (a stored card or bank account) that a member can reuse. |

When you click **New**, Salesforce asks which record type you want. Choose **Payment** for a checkout option, or **Wallet Item** for a saveable stored method.

## Before You Begin

Before you can create or edit Payment Types, an admin must assign you the right **permission set**.

| Permission set                   | Grants                                                                                                        |
| -------------------------------- | ------------------------------------------------------------------------------------------------------------- |
| `FC_Commerce_Manage_Config_Data` | Full create, read, update, and delete on `Payment_Type__c`. This is the set you need to set up Payment Types. |
| `FC_Commerce_View_Config_Data`   | Read-only access to `Payment_Type__c`.                                                                        |
| `FC_Commerce_Order_Pay`          | Use of the pay flow at runtime.                                                                               |
| `FC_Commerce_Refund`             | Use of the **Refund** action on a Financial Event.                                                            |

For Stripe orgs, staff who pay or refund also need `FC_Stripe_Access` or `FC_Stripe_Manage`.

## Fields on a Payment Type

The category pages walk through setup for each category. The table below is the shared field reference for all of them.

| Field                               | API name                                 | Purpose                                                                                                                                                                                 |
| ----------------------------------- | ---------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Business Unit                       | `Business_Unit__c`                       | The division this Payment Type belongs to. Required on Wallet Item records.                                                                                                             |
| Payment Method                      | `Payment_Method__c`                      | The medium of payment: `Account Credit`, `ACH`, `Alipay`, `Card`, `Cash`, `Check`, or `WeChat Pay`.                                                                                     |
| Payment Provider Account            | `Payment_Provider_Account__c`            | Links the Payment Type to a payment provider (Stripe). Required for provider-backed methods.                                                                                            |
| Deposit Account                     | `Deposit_Account__c`                     | The GL Account (`GL_Account__c`) that receives the funds. The lookup only shows GL Accounts in the same Business Unit.                                                                  |
| Display Payment Type                | `Display_Payment_Type__c`                | Where the option appears: `Portal and Staff`, `Portal`, `Staff`, or `Disabled`. Only `Staff` and `Portal and Staff` appear in staff pay and refund flows.                               |
| Supported Currencies                | `Supported_Currencies__c`                | The currencies this Payment Type supports (`AUD`, `GBP`, `CAD`, `EUR`, `INR`, `JPY`, `SGD`, `AED`, `USD`). Only applies in a multi-currency org. Leave blank to support all currencies. |
| Refund Behavior                     | `Refund_Behavior__c`                     | How the Payment Type handles refunds: `Cannot Refund`, `Refund only if original payment`, or `Valid for All Refunds`.                                                                   |
| Allow as Wallet Item                | `Allow_As_Wallet_Item__c`                | When checked, lets a member save this method as a Wallet Item. Restricted to `Card` and `ACH`.                                                                                          |
| Auto-Update Payment FE To Succeeded | `Auto_Update_Payment_FE_To_Succeeded__c` | When checked, the payment's Financial Event is marked Succeeded automatically. For offline methods only.                                                                                |
| Auto-Update Refund FE To Succeeded  | `Auto_Update_Refund_FE_To_Succeeded__c`  | When checked, the refund's Financial Event is marked Succeeded automatically. For offline methods only.                                                                                 |
| Payment Component                   | `Payment_Component__c`                   | The Lightning Web Component that collects the payment at pay time. (A Lightning Web Component, or LWC, is a Salesforce front-end component.)                                            |
| Refund Component                    | `Refund_Component__c`                    | The component shown at refund time.                                                                                                                                                     |
| Wallet Item Component               | `Wallet_Item_Component__c`               | The component shown when adding or editing a saved wallet method.                                                                                                                       |
| Payment Terms                       | `Payment_Terms__c`                       | Rich-text terms shown at pay time.                                                                                                                                                      |
| Saved Wallet Terms                  | `Saved_Wallet_Terms__c`                  | Rich-text terms shown when saving a wallet method.                                                                                                                                      |
| Staff Order                         | `Staff_Order__c`                         | The sort position of this Payment Type in the staff payment-method dropdown.                                                                                                            |

<Note>
  The component fields (`Payment_Component__c`, `Refund_Component__c`, `Wallet_Item_Component__c`) are not on the default page layout. The category pages explain which component each method uses and how to set them.
</Note>

## How Paying and Refunding Work

Payment Types control which options appear in the runtime flows; they do not move money themselves.

* **Paying:** Staff pay from an Order using the **Pay Order** quick action, or from a Financial Event using **Pay**. Members pay through the portal checkout. On success, fusionCore creates a Financial Event (`Financial_Event__c`) with its event lines, and, for provider-backed payments, a parallel Payment Provider Event (`Payment_Provider_Event__c`).
* **Refunding:** Staff refund from a Financial Event using the **Refund** quick action, then enter the amount and choose a method. The methods on offer depend on the original payment and on each Payment Type's **Refund Behavior**.

For the full Stripe pay and refund walkthrough, see [Taking and refunding a Stripe payment](/end-user-guides/accounting/payment-types/setting-up-stripe-payment-types#taking-and-refunding-a-stripe-payment).

## Related Features

<CardGroup cols={2}>
  <Card title="Taking and refunding a Stripe payment" icon="rotate-left" href="/end-user-guides/accounting/payment-types/setting-up-stripe-payment-types#taking-and-refunding-a-stripe-payment" arrow="true">
    Walk through paying and refunding an Order with Stripe.
  </Card>

  <Card title="Business Units" icon="building" href="/end-user-guides/accounting/business-units/index" arrow="true">
    Every Payment Type belongs to a Business Unit and deposits into that unit's GL Accounts.
  </Card>

  <Card title="Stripe" icon="stripe-s" href="/end-user-guides/stripe/index" arrow="true">
    Provider-backed Payment Types link to a Stripe Payment Provider Account.
  </Card>

  <Card title="Paying on an Order" icon="cash-register" href="/end-user-guides/orders/orders/paying-on-an-order/index" arrow="true">
    Where the Payment Types you configure appear in the staff pay flow.
  </Card>

  <Card title="Account Credit" icon="wallet" href="/end-user-guides/orders/account-credit/index" arrow="true">
    The Account Credit payment method is offered through an Account Credit Payment Type.
  </Card>

  <Card title="Installments" icon="calendar-days" href="/end-user-guides/orders/installments/index" arrow="true">
    Installments require a provider-backed, wallet-eligible Payment Type to charge over time.
  </Card>

  <Card title="Wallet item page (Portal)" icon="id-card" href="/end-user-guides/portal/wallet-item-page" arrow="true">
    Wallet Item Payment Types let portal members save a card or bank account to reuse.
  </Card>
</CardGroup>
