RANTANDocs
RANTAN を開く
はじめに

クイックスタート

安全なホステッドチェックアウトを開き、完了した注文を検証します。

RANTAN Hosted Checkout はサーバーが作成する決済フローです。バックエンドで注文を固定し、ブラウザでホステッド UI を開き、バックエンドで完了を検証します。

#始める前に

RANTAN 販売者アカウント、検証済み RANTAN Factory NFT が紐づいた販売中の商品、HTTPS の戻り先が必要です。

#1. Checkout Session を作成

販売者の注文ごとにバックエンドから 1 つのセッションを作成します。自社注文システムの安定した一意の client_reference_id を使用します。

Create session
curl -X POST https://app.rantan.xyz/api/v2/checkout-sessions/ \
  -H "Authorization: Bearer $RANTAN_SELLER_JWT" \
  -H "Content-Type: application/json" \
  -d '{
    "product_id": 123,
    "client_reference_id": "order_20260730_001",
    "quantity": 1,
    "return_url": "https://merchant.example/orders/20260730_001",
    "allowed_origin": "https://merchant.example"
  }'

#セッションレスポンス

verification_key は販売者サーバーで注文と一緒に保存します。ブラウザにはセッション ID、商品 ID、注文参照だけを渡します。

201 Created
{
  "id": "c8a9d48e-68b2-48dd-a754-75635cae71d6",
  "product_id": 123,
  "client_reference_id": "order_20260730_001",
  "quantity": 1,
  "digital_mode": "",
  "request_amount": null,
  "return_url": "https://merchant.example/orders/20260730_001",
  "allowed_origin": "https://merchant.example",
  "status": "open",
  "canceled_at": null,
  "expires_at": "2026-07-30T09:30:00Z",
  "verification_key": "server-only-verification-key",
  "checkout_path": "/checkout/123?session_id=c8a9d48e-...",
  "verification_path": "/api/v2/checkout-sessions/c8a9d48e-.../verify/",
  "cancel_path": "/api/v2/checkout-sessions/c8a9d48e-.../"
}

#2. ホステッド Checkout を開く

ホステッド SDK を読み込み、購入ボタンなどのユーザー操作からセッション専用ポップアップを開きます。

Browser
<button id="buy">Buy with RANTAN</button>
<script src="https://app.rantan.xyz/checkout-v2.js"></script>
<script>
  document.querySelector("#buy").addEventListener("click", async () => {
    const result = await RantanCheckout.open({
      productId: 123,
      sessionId: "c8a9d48e-68b2-48dd-a754-75635cae71d6",
      clientReferenceId: "order_20260730_001",
    });

    // UI notification only. Verify this session from your backend.
    await fetch("/api/orders/20260730_001/verify", { method: "POST" });
  });
</script>

#3. フルフィルメントを検証

ポップアップが完了を通知したとき、または購入者が戻ったとき、バックエンドから検証エンドポイントを呼び出します。

Verify session
curl https://app.rantan.xyz/api/v2/checkout-sessions/$SESSION_ID/verify/ \
  -H "X-Rantan-Checkout-Verification-Key: $CHECKOUT_VERIFICATION_KEY"

#次のステップ