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

# Checkout Flow

> Control what payment options are displayed at checkout.

## Action: Select payment options

This action allows filtering and/or ordering of the available payment options
displayed at the start of the checkout journey. Each rule in this action
defines a set of payment options to show when the rule is matched. If no rule is
matched, then the whole set of configured and active payment options is
shown. The following conditions can be added:

* Amount: This enables filtering based on the amount for the transaction. Each
  rule defines a single currency for which it applies. A minimum
  amount, maximum amount, or a range for the amount can be specified.

* Browser language: This enables filtering based on a buyer's browser language.

* Country: This enables filtering based on the customer's country as an
  inclusive or exclusive list of countries.

* Currency: This enables filtering based on the transaction currency as an
  inclusive or exclusive list of currencies.

* Metadata: This enables filtering based on key/value strings from an object
  passed to the API. This currently only supports matching/not matching
  string values. For example, `{"foo": "bar"}` could be passed and a
  condition created based on the value of the `foo` key.

* Metadata (Numeric): This enables filtering based on key/value numeric strings
  from an object passed to the API. It only supports numeric comparisons like
  `less than`, `equal to`, `greater than`, `greater than or equal to` and
  `less than or equal to`.
  For example, `{"foo": "200.1"}` could be passed and a condition created based
  on the numeric value `200.1` of the `foo` key.

* Product categories: This enables filtering based on the product categories
  of cart items.

* Product types: This enables filtering based on the product types of cart
  items.

* SKUs: This enables filtering based on the SKUs of cart items.

* Zero amount (any currency): This enables filtering based on a zero amount
  transaction of any currency.

<Warning>
  **Rule Validation**

  * You may only have one amount or currency condition per rule
  * You may only have one browser language condition per rule
  * You may only have one country condition per rule
  * You may only have one product categories condition per rule
  * You may only have one product types condition per rule
  * You may only have one SKUs condition per rule
</Warning>
