---
title: "Buy a Freeland prepaid travel eSIM directly with x402"
method: POST
path: "/api/esim/purchase"
---

# Buy a Freeland prepaid travel eSIM directly with x402

`POST /api/esim/purchase`

## Request

- Base URL: `https://api.x402card.org`
- URL: `https://api.x402card.org/api/esim/purchase`
- Auth: none declared

Public agent marketplace entrypoint. The payment payer becomes the eSIM owner. Omit planId to select the cheapest currently available plan.

## Request body

- object
  - `planId` string: Live plan id from GET /api/esim/plans. Omit to buy the cheapest available plan.
  - `idempotencyKey` string, required: Stable caller-generated key. Reuse it after an ambiguous response.

## Response `200`

Settled eSIM order with inline credentials when fulfillment completes within the bounded wait, plus a private delivery-token continuation fallback

## Other responses

- `402`: Payment Required
- `409`: Plan terms changed or order is no longer payable
- `503`: Purchase or fulfillment is paused

---

[API](https://skmtc.dev/x402card/apis/x402card-virtual-cards-and-freeland-esim-api.md) · [All operations](https://skmtc.dev/x402card/apis/x402card-virtual-cards-and-freeland-esim-api/llms.txt) · [OpenAPI document](https://skmtc.dev/x402card/apis/x402card-virtual-cards-and-freeland-esim-api/revisions/90ffb84a664e?raw)
