# Base URL

> Use the Paymos Merchant API base URL for both test and live requests, select the environment by key prefix, and keep one integration path.

All API endpoints are relative to a single base URL — the environment is selected by the prefix on your API key, not by the host.

## Base URL

```http
https://api.paymos.io/v1
```

A full request URL looks like:

```http
https://api.paymos.io/v1/invoices
```

## Sandbox vs production

Paymos uses one base URL for both environments. The environment is encoded in the key itself — `_test_` for sandbox, `_live_` for production:

| Environment | How to use |
|-------------|------------|
| **Sandbox** | Test API key IDs (`pk_test_…` / `rk_test_…`) with `sk_test_…` secrets |
| **Production** | Live API key IDs (`pk_live_…` / `rk_live_…`) with `sk_live_…` secrets |

Sandbox credentials simulate transactions without processing real funds. No URL change is needed when switching to production — swap the API keys and the host stays the same.

:::tip
Same host, same paths, same payloads — the only thing that differs between sandbox and production is which credentials sign the request. Keep both sets in your config and switch by env var.
:::
