<primer-payment-method>
Renders the appropriate payment interface for a specified type. Only displays if the method is configured in your Dashboard and available for this checkout.Quick Reference
Examples
Multiple Methods
Disabled
Dynamic Rendering
Disable During Processing
Properties
Events
<primer-payment-method> does not emit its own events. Payment outcomes are reported by the parent <primer-checkout> component.
Relevant Parent Events
Checking availability before rendering
Common Types
See Available Payment Methods for full list.
Rendering Behavior
Renders only when all conditions are met:typeattribute is set- Method is enabled in Primer Dashboard
- Method is returned by server for this checkout
Configuration
Configure via SDK options on<primer-checkout>:
CSS Properties
CSS properties vary by payment method type. Each renders different internal components.Card Form (PAYMENT_CARD)
Uses Input Styling Tokens for input fields.Native Payment Buttons (APPLE_PAY, GOOGLE_PAY, PAYPAL)
Note: Apple Pay, Google Pay, and PayPal buttons use their native styling which cannot be customized via CSS properties. Button appearance is controlled through SDK options.
Alternative Payment Methods (KLARNA, ADYEN_BLIK, etc.)
States
Type-Specific States
Card Form (PAYMENT_CARD):- Inherits states from
<primer-card-form>
- Loading, Ready, Processing states managed by native SDKs
- May show additional states like category selection or code entry
Usage Guidelines
Do
- Use
primer:methods-updateto discover available methods - Disable all methods during processing
- Configure payment options on
<primer-checkout>
Don’t
- Don’t use alongside
<primer-card-form>forPAYMENT_CARD(causes duplicate) - Don’t assume a method is available — check
primer:methods-update
Content Guidelines
Section headings
Unavailable method messaging
See also
primer-payment-method-container
Declarative filtering
SDK options reference
Payment method options
Available payment methods
Full list of supported payment methods