> This page is for Developer.

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.bigcommerce.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.bigcommerce.com/_mcp/server.

# GraphQL Storefront API: Payment Methods

Use the `paymentMethods` field on the `site` query to list the payment methods enabled for the current store, channel, and currency. Each payment method returns an `entityId`, a display `name`, and optional `capabilities`. The capabilities describe what the method supports, such as saving payment instruments for future use. For the full schema, see the [paymentMethods field on the site query](/developer/api-reference/graphql/storefront/queries/site#fields.body.paymentMethods).

This field does not require a customer login, so you can call it with a regular storefront token.

The list reflects the shopper's active currency and the channel of the request. The same store can return different methods for different currencies.

If the merchant has translated a payment method's name for the shopper's language, `name` returns the translation.

> **Note**
>
> For some dynamic payment providers, including Stripe, BlueSnap, and Adyen, support for listing alternative payment methods (APMs) is in progress. The list does not yet include every APM that these providers offer, and more APMs from these providers appear as support is added.

## Get the store's enabled payment methods

The example below requests all enabled payment methods with their vaulting capabilities.

#### Request

**`Example query: Get the store's enabled payment methods`**

```graphql title="Example query: Get the store's enabled payment methods"
query {
  site {
    paymentMethods {
      edges {
        node {
          entityId
          name
          capabilities {
            vaulting {
              configuration {
                isCustomerVaultingEnabled
                isGuestVaultingEnabled
              }
              actions {
                isAddSupported
                isEditSupported
                isDeleteSupported
              }
              requirements {
                isInitializationRequired
              }
            }
          }
        }
      }
    }
  }
}
```

#### Response

**`Example query: Get the store's enabled payment methods`**

```json title="Example query: Get the store's enabled payment methods"
{
  "data": {
    "site": {
      "paymentMethods": {
        "edges": [
          {
            "node": {
              "entityId": "adyenv2.scheme",
              "name": "Credit Card",
              "capabilities": {
                "vaulting": {
                  "configuration": {
                    "isCustomerVaultingEnabled": true,
                    "isGuestVaultingEnabled": false
                  },
                  "actions": {
                    "isAddSupported": true,
                    "isEditSupported": true,
                    "isDeleteSupported": true
                  },
                  "requirements": {
                    "isInitializationRequired": true
                  }
                }
              }
            }
          },
          {
            "node": {
              "entityId": "adyenv2.sepadirectdebit",
              "name": "SEPA Direct Debit",
              "capabilities": {
                "vaulting": {
                  "configuration": {
                    "isCustomerVaultingEnabled": true,
                    "isGuestVaultingEnabled": false
                  },
                  "actions": {
                    "isAddSupported": true,
                    "isEditSupported": true,
                    "isDeleteSupported": true
                  },
                  "requirements": {
                    "isInitializationRequired": false
                  }
                }
              }
            }
          },
          {
            "node": {
              "entityId": "bigcommerce.store_credit",
              "name": "Store Credit",
              "capabilities": {
                "vaulting": null
              }
            }
          }
        ]
      }
    }
  }
}
```

If vaulting is supported, `capabilities.vaulting` shows what the method supports. If `requirements.isInitializationRequired` is true, create a vault initialization before you save a payment instrument. See [Create a vault initialization](/developer/docs/storefront/guides/graphql-storefront-api/customers#create-a-vault-initialization). To update or delete a saved instrument, use the [`updateStoredPaymentInstrument`](/developer/docs/storefront/guides/graphql-storefront-api/customers#update-a-customers-stored-payment-instrument) and [`deleteStoredPaymentInstrument`](/developer/docs/storefront/guides/graphql-storefront-api/customers#delete-a-customers-stored-payment-instrument) mutations.

## Resources

### Documentation

* [GraphQL Storefront API overview](/developer/docs/storefront/guides/graphql-storefront-api)
* [GraphQL Storefront API: Customers](/developer/docs/storefront/guides/graphql-storefront-api/customers)

### API reference

* [paymentMethods field on the site query](/developer/api-reference/graphql/storefront/queries/site#fields.body.paymentMethods)