← Files BirdARCHIVED FILE
skills/bird-cli/references/esim-purchase.md
1.61 KB · Oct 8, 2026 · 18:03 UTC
# Purchase an eSIM package Follow [authentication](authenticate.md). Confirm `esim:read` and `esim:write` access. If retrying a submitted purchase, read its order before creating another; reuse its idempotency key. 1. Find the destination with `bird esim zones list`, then use `bird esim offers list` to find a package for that zone. Use the price returned for this workspace in its published currency. 2. Read `bird esim offers checkout-options` and `bird esim offers requirements` for the selected offer. For a top-up, start with `bird esim compatible-offers` for the existing eSIM. 3. Show the buyer the package, destination, duration, and quoted price. Obtain their approval before purchasing. Follow any confirmation link returned by the command. 4. Inspect `bird esim orders create --example` and prepare the request with the selected `offer_id`. Pin `offer_revision` and `expected_price` for a one-time purchase. Omit `esim_id` for a new profile or set it for a top-up. Do not set `delivery`; send installation details separately after the order completes. 5. Preview with `--body-file order.json --dry-run`, then submit with a stable `--idempotency-key`. Reuse that key on retry. 6. Read `bird esim orders get` until the order is `completed` or `failed`. HTTP 201 can carry either terminal state. An order in `charging` needs the balance described by `funding`; a failed order must not be described as a successful purchase. Done when the order is completed or failed and the buyer knows the result. For a completed new profile, continue to [installation credentials](esim-credentials.md) or [delivery](esim-delivery.md) when requested.
SHA-256: bc28c10d3f8bf1a73c11633daeca76829b50a727f5c255fa524ab78010325daa