# Overview

> How the Delivr Merchant API fits into your checkout, your stores and your order system.

Source: https://docs.delivr.no/overview/

The Delivr Merchant API books same-day deliveries from your stores to your customers. You use it from your own servers: your web shop's checkout, a point-of-sale system, or an order management system.

Delivr offers two kinds of delivery:

| Type        | What the shopper gets                                         | How it is fulfilled                                                            |
| ----------- | ------------------------------------------------------------- | ------------------------------------------------------------------------------ |
| `on_demand` | A driver now. An arrival band such as "today 14:20 to 14:50". | Delivr finds a nearby driver, timed so they arrive when your goods are packed. |
| `window`    | A delivery window, such as "today 17:00 to 19:00".            | Booked on a Delivr transport partner's route for that window.                  |

## How an integration works

1. **Stores.** You register each store or warehouse goods are picked up at as a [location](/guides/locations/).
2. **Quote.** At checkout, your server asks for a [quote](/guides/quotes-and-orders/) from a store to the shopper's address. The answer lists the options with prices and times.
3. **Order.** When the shopper pays, you place an order for the option they chose. Delivr texts the recipient a tracking link.
4. **Fulfil.** Your store tells Delivr when the goods [will be ready](/guides/ready-signals/). A driver picks them up and delivers.
5. **Follow.** [Webhooks](/webhooks/) tell your system about every step, and the order endpoint is always the source of truth.
6. **Pay.** Delivr [bills you](/guides/billing/) weekly for delivered orders. You charge the shopper in your own checkout.

## Environments

| Environment | Base URL                               | Use                                                                              |
| ----------- | -------------------------------------- | -------------------------------------------------------------------------------- |
| Sandbox     | `https://driver-staging-api.delivr.no` | Build and test. No SMS is sent, and [test helpers](/sandbox/) move orders along. |
| Production  | Given at onboarding                    | Real drivers and real deliveries.                                                |

Every route lives under `/v1/merchant/`. Your sandbox and production keys are different.

## The essentials

- **JSON over HTTPS**, field names in `camelCase`. Request bodies are strict: an unknown field is an error, so typos never pass silently.
- **Money** is an integer in minor units (øre), VAT included. `{"amountMinor": 14900, "currency": "NOK"}` is NOK 149.00.
- **Times** are RFC 3339. Answers are in UTC; `timeZone` names the market's zone for display.
- **Writes are idempotent.** Send an `Idempotency-Key` and retry safely. See [Idempotency](/conventions/idempotency/).
- **Forward compatible.** Ignore response fields and webhook types you do not know. See [Versioning](/conventions/versioning/).

## Next steps

- Follow the [quickstart](/quickstart/) to place your first sandbox order.
- Read the [order lifecycle](/guides/order-lifecycle/) before you build status handling.
- Browse the [API reference](/api/) for every field.