Skip to main content
Brand the hosted checkout page with your colors, logo, and typography. Pass an appearance object when you create a session or payment link.
Current checkout layout: On desktop, the customer sees a soft outer page background (default lavender) with a single centered card (~960px): payment form on the left (~56%) and order summary on the right (~44%), plus a brand bar above the card. On mobile, branding and summary stack above the form. There is no API flag to switch to a different layout.
The full field list and edge cases (including fields accepted by the API but not yet used in the UI) are in the Appearance Reference.

Basic Customization

merchantName is required when creating a session; it is stored on the session and drives the store title next to your logo (it is not set through appearance alone).

Appearance Options (common)

Colors

Layout (inside the desktop card)

Valid borderRadius values: none, sm, base, lg, xl, full.

Example: Dark panels

Outer page background (desktop)

The area behind the centered card uses CSS variable --custom-page-background (default lavender). Set it via appearance.cssVariables:
Values in cssVariables are sanitized as colors or size/dimension values (e.g. px, em, %). Values that don’t parse as either are silently dropped. Use customCss for arbitrary styling (within security limits).
As a shorthand, you can also set pageBackground directly in the appearance object instead of via cssVariables:
Both forms are equivalent. cssVariables.page-background takes precedence if both are set.

Full options

See the Appearance Reference for every key, mobile overrides, cart colors, customCss, accessibility warnings, and limitations (for example pay button label is derived from tax context—not a single appearance string).