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

# Choose a payment method

> Pick the payment experience that fits your UI and coverage needs.

Every payment flow starts from the same two things: an authenticated customer
(see [Choose an onboarding path](/platform/guides/onboarding-paths)) and an
executable quote. From there, you choose how much of the payment UI you want
to own. Call `getPaymentMethods()` to see which methods are available for the
customer right now, then pick the guide that matches your experience.

[Guest checkout](/platform/guides/guest-checkout) removes the first
requirement: new customers buy with Apple Pay before they have a MoonPay
account, and verification steps up only when a purchase requires it.

## Compare payment methods

| Payment method                                     | UI control                                                                                                | Coverage                                                                      | Best for                                               |
| -------------------------------------------------- | --------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ------------------------------------------------------ |
| [Apple Pay](/platform/guides/pay-with-apple-pay)   | Headless frame renders the Apple Pay button; you own the rest of the UI                                   | Devices and regions where Apple Pay is available                              | Single-tap checkout on Apple devices                   |
| [Google Pay](/platform/guides/pay-with-google-pay) | Headless frame renders the Google Pay button; you own the rest of the UI                                  | Devices and regions where Google Pay is available                             | Single-tap checkout on devices that support Google Pay |
| [Card](/platform/guides/pay-with-card)             | You build the purchase UI; the headless buy frame runs the pipeline and hosted frames handle card entry   | Stored credit and debit cards; requires card payments enabled on your account | Full control over the purchase UI                      |
| [Buy button](/platform/guides/pay-with-buy-button) | You supply a container; MoonPay renders the button, the payment-method picker, and the confirmation sheet | Apple Pay, Google Pay, or card, depending on what's available to the customer | Fast, low-effort express checkout from a single button |
| [Widget](/platform/guides/pay-with-widget)         | MoonPay renders the entire buy flow inside an iframe                                                      | All payment methods and regions in the standard MoonPay integration           | Broad payment coverage without building purchase UI    |

Every method can require a challenge when a transaction needs extra
verification. You handle it the same way in each flow: render the
[Challenge frame](/platform/frames/challenge) at the URL you receive. See
[Handle challenges](/platform/guides/handling-challenges).

## Payment guides

<CardGroup cols={2}>
  <Card title="Guest checkout" href="/platform/guides/guest-checkout">
    Let new customers buy with Apple Pay before they have a MoonPay account.
  </Card>

  <Card title="Pay with Apple Pay" href="/platform/guides/pay-with-apple-pay">
    Let customers buy crypto headlessly with Apple Pay.
  </Card>

  <Card title="Pay with Google Pay" href="/platform/guides/pay-with-google-pay">
    Let customers buy crypto headlessly with Google Pay.
  </Card>

  <Card title="Pay with card" href="/platform/guides/pay-with-card">
    Let customers buy crypto using stored credit and debit cards.
  </Card>

  <Card title="Pay with the buy button" href="/platform/guides/pay-with-buy-button">
    Add a single express checkout button that handles payment-method selection
    and confirmation.
  </Card>

  <Card title="Pay with widget" href="/platform/guides/pay-with-widget">
    Render the MoonPay-hosted buy widget for all payment methods and regions.
  </Card>

  <Card title="Handle challenges" href="/platform/guides/handling-challenges">
    Render the Challenge frame when a transaction needs extra verification.
  </Card>
</CardGroup>
