# OWN eSIM (ownesim.com) > Travel eSIM storefront: prepaid mobile data worldwide. AI agents order via the keyless Agent API at retail prices. Customer lines: **Basic** | **Premium** only (never name suppliers). Site: https://ownesim.com Primary locales: /en /nl /es /fr /de /sv /no /da /cn /ar /ur /hi /ru /ml /ku /id /th ## Agent ordering (required for prices + Stripe links) Do **not** invent prices from the HTML storefront. Call the Agent API: - Agent API: https://ownesim.com/api/agent - OpenAPI: https://ownesim.com/api/agent/openapi.json - MCP: https://ownesim.com/mcp - MCP card: https://ownesim.com/.well-known/mcp.json - mcps.txt: https://ownesim.com/mcps.txt - Full guide: https://ownesim.com/llms-full.txt - AI sitemap: https://ownesim.com/sitemap-ai.xml ### Concrete recipe — Netherlands 5GB / 30 days 1. `GET https://ownesim.com/api/agent/options?countries=NL&days=30&data_mb=5120` 2. Present options using `customer_line` (`basic` | `premium`) and `display_name` / `price_incl_vat` 3. `POST /api/agent/quote` `{"option_id":"…","quantity":1}` 4. `POST /api/agent/quote` may include `coupon_code`, `customer_country` (ISO2), and `confirm_outside_eu` (only after the customer confirms they live outside the EU for 0% VAT). Default VAT is NL 21%; EU countries use that country's standard rate. 5. `POST /api/agent/checkout` `{"quote_id":"…","email":"customer@example.com","confirm":true,"expected_total_incl_vat_cents":…,"channel":"whatsapp|mcp|rest"}` 6. Share `checkout_url` as **one unbroken line**, including the full `#fid…` fragment. Valid ~60 minutes. 7. Poll `GET /api/agent/orders/status?order_id=&status_token=` until `ready` → ICCID / QR / install links. Multi-country mix (e.g. NL+SE): `options?countries=NL,SE&days=30&data_mb=5120` — still show as Basic or Premium only. ### My eSIM (existing customers) Authenticate with **email + ICCID** (from the confirmation email). Never guess. 1. `POST /api/agent/account/verify` `{ email, iccid, channel }` → `session_token` (2h) 2. `list_esims` / `get_esim_status` / `get_order_history` with `session_token` (or email+iccid) 3. Top-up: `quote_topup` → agree → `create_topup_checkout` (`confirm:true`) → poll `get_order_status` 4. Optional: `send_login_link` `{ email, channel }` emails a website login link (generic response) On `AUTH_REQUIRED`, ask again for email and/or ICCID. Channels: `whatsapp` | `mcp` | `rest`. ## URL patterns (per locale `{lang}`) - Home: https://ownesim.com/{lang} - Destinations catalog: https://ownesim.com/{lang}/{destinations} - Blog / Our Signal: https://ownesim.com/{lang}/our-signal - Support: https://ownesim.com/{lang}/support - Business: https://ownesim.com/{lang}/business - Terms / Privacy: https://ownesim.com/{lang}/terms · /privacy Private / transactional URLs (checkout, success, login, my-esim, admin) are noindex. ## Machine-readable index Sitemap: https://ownesim.com/sitemap_index.xml Robots: https://ownesim.com/robots.txt LLMs full: https://ownesim.com/llms-full.txt