# Retailers Checkout Flow

The checkout process depends on specific retailer integration. There are several types of them. You can check what flow supported for which retailer in the [table here](/master/resources/supported-retailers.md).

## Via user credentials

* your app asks the user for their credentials
* your app passes user's credentials and store items to [transfer endpoint](/master/api/carts/checkout.md)
* result: items are added to cart on retailer's site

## Via oauth token

* your app receives user's token via oAuth flow (details are [here](/master/api/retailers/oauth-retailer-flow.md))
* your app passes token and store items to [transfer endpoint](/master/api/carts/checkout.md)
* result: items are added to cart on retailer's site

## Via landing url

* your app passes raw items to [transfer endpoint](/master/api/carts/checkout.md)
* result: [transfer endpoint](/master/api/carts/checkout.md) returns url to the store. user need to open this url to complete checkout

## Retailers group

| RETAILER  | REQUIRE ZIPCODE | RETAILERS GROUP                                                                                                              |
| --------- | --------------- | ---------------------------------------------------------------------------------------------------------------------------- |
| Instacart | true            | Acme, Albertsons, Food Lion, Giant Food, H-E-B, Hy-Vee, Jewel-Osco, Price Rite, Publix, Safeway, ShopRite, Stop & Shop, Vons |


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.whisk.com/master/api/retailers/retailers-checkout-flow.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
