Options
All
  • Public
  • Public/Protected
  • All
Menu

Class ShopperPayments<ConfigParameters>

*Download API specification

API Overview

Use the Shopper Payments API to:

  • Retrieve payment configuration information for storefronts when Salesforce Payments is enabled.

The API returns the available payment methods, merchant account details, and payment gateway configurations for a specific payment zone site assignment.

The response includes:

  • Zone ID: The unique identifier for the Payments zone.
  • Payment Method Set Accounts: List of configured payment processor accounts with API keys, vendor information (Stripe, Adyen, PayPal, etc.), and live/test mode indicators.
  • Payment Methods: List of available payment methods with their associated accounts, payment method types, and supported payment modes.

Authentication & Authorization

The client requesting payment configuration must have access to the /payment-configuration resource. The Shopper Payments API requires a shopper access token from the Shopper Login and API Access Service (SLAS).

For details on how to request a shopper access token from SLAS, see the guest user flows for public clients and private clients in the SLAS guides.

You must include sfcc.shopper-baskets-orders, sfcc.shopper-baskets-orders.rw, or sfcc.shopper-standard in the client ID used to generate the SLAS token. For a full list of permissions, see the Authorization Scopes Catalog.

Use Cases

Retrieve Payment Configuration

Retrieve payment configuration settings for Stripe, PayPal, and Adyen based on the payment methods enabled in the merchant's payment zone site. This includes API keys, vendor details, and live/test mode status. Specify a zone via zoneId or use currency and countryCode for automatic resolution.*

Simple example:

  import { ShopperPayments } from "commerce-sdk-isomorphic";

  const clientConfig = {
    parameters: {
      clientId: "XXXXXX",
      organizationId: "XXXX",
      shortCode: "XXX",
      siteId: "XX"
    }
  };
  const shopperPaymentsClient = new ShopperPayments(clientConfig);
API Version: 0.0.33
Last Updated:

Type parameters

Hierarchy

  • ShopperPayments

Index

Constructors

Properties

Methods

Object literals

Constructors

constructor

Properties

clientConfig

clientConfig: ClientConfig<ConfigParameters> & { baseUri: string }

Static Readonly defaultBaseUri

defaultBaseUri: "https://{shortCode}.api.commercecloud.salesforce.com/checkout/shopper-payments/v1" = currentBaseUri

Static Readonly paramKeys

paramKeys: { getPaymentConfiguration: ["organizationId", "siteId", "currency", "countryCode", "zoneId", "amount"]; getPaymentConfigurationRequired: ["organizationId", "siteId", "currency"] } = {getPaymentConfiguration: ['organizationId','siteId','currency','countryCode','zoneId','amount',],getPaymentConfigurationRequired: ['organizationId','siteId','currency',],} as const

Type declaration

  • getPaymentConfiguration: ["organizationId", "siteId", "currency", "countryCode", "zoneId", "amount"]
  • getPaymentConfigurationRequired: ["organizationId", "siteId", "currency"]

Methods

getPaymentConfiguration

  • Retrieves the payment configuration for the organization.

    Parameters:*

    • siteId: Required. The site identifier for context-specific configuration
    • currency: Required. Three-letter currency code (ISO 4217) for payment method configuration
    • countryCode: Optional. Two-letter country code (ISO 3166-1 alpha-2) for country-specific payment configuration
    • amount: Optional. Transaction amount for payment method configuration
    • zoneId: Optional. Payment zone identifier to retrieve zone-specific configuration

    Response Behavior:*

    • Returns payment configuration data when available
    • Returns null values for missing data (e.g., when account not found or payments zone not found)

    If you would like to get a raw Response object use the other getPaymentConfiguration function.

    Parameters

    Returns Promise<PaymentConfiguration>

    A promise of type PaymentConfiguration.

  • Retrieves the payment configuration for the organization.

    Parameters:*

    • siteId: Required. The site identifier for context-specific configuration
    • currency: Required. Three-letter currency code (ISO 4217) for payment method configuration
    • countryCode: Optional. Two-letter country code (ISO 3166-1 alpha-2) for country-specific payment configuration
    • amount: Optional. Transaction amount for payment method configuration
    • zoneId: Optional. Payment zone identifier to retrieve zone-specific configuration

    Response Behavior:*

    • Returns payment configuration data when available
    • Returns null values for missing data (e.g., when account not found or payments zone not found)

    Type parameters

    • T: boolean

    Parameters

    • Optional options: RequireParametersUnlessAllAreOptional<{ headers?: undefined | {}; parameters?: CompositeParameters<{ amount?: number | null; countryCode?: undefined | string; currency: string; organizationId: string; siteId: string; zoneId?: string | null } & QueryParameters, ConfigParameters> }>

      An object containing the options for this method.

    • Optional rawResponse: T

      Set to true to return entire Response object instead of DTO.

    Returns Promise<T extends true ? Response : PaymentConfiguration>

    A promise of type Response if rawResponse is true, a promise of type PaymentConfiguration otherwise.

Object literals

Static Readonly apiPaths

apiPaths: object

getPaymentConfiguration

getPaymentConfiguration: string = "/organizations/{organizationId}/payment-configuration"

Generated using TypeDoc