---
api: 'Merchant API'
---

# Locations

The Locations API is designed to help merchants manage multiple points of sale, including both **online storefronts** and **physical stores**. Registering locations lets you differentiate and group your orders from different stores. You can also introduce custom business logic for each location, such as different inventory management, pricing, or shipping rules.

To start using locations, follow the relevant use case for your business:

### Online locations

  1. Register an online location using the [Create a location](/docs/api/merchant#create-a-location) endpoint, setting the `type` to `online`.
  1. Configure your custom processes on your backend for each registered location (e.g., grouping orders, custom pricing, etc.).
  1. Send the `location_id` parameter in the request body during [order creation](/docs/api/merchant#create-an-order) to assign the order to a specific location.

### Physical locations

  1. Register a physical location using the [Create a location](/docs/api/merchant#create-a-location) endpoint, setting the `type` to `physical`.
  1. In case of Revolut POS, our system handles order creation including `location_id` to associate the order with your location.

## Fast checkout for multiple storefronts

Locations are particularly useful for tailoring the user experience on each of your online storefronts, especially when using features like [**Fast checkout**](/docs/guides/merchant/optimise-checkout/fast-checkout).

For example, if you operate two online stores with different shipping rules, you can register two separate `online` locations. By then using the `location_id` to [register a distinct address validation endpoint](/docs/api/merchant#register-address-validation-endpoint-for-fast-checkout) for each one, your backend can apply the correct shipping logic and pricing for the specific storefront a customer is buying from.
