はじめに
クイックスタート
安全なホステッドチェックアウトを開き、完了した注文を検証します。
RANTAN Hosted Checkout はサーバーが作成する決済フローです。バックエンドで注文を固定し、ブラウザでホステッド UI を開き、バックエンドで完了を検証します。
#始める前に
RANTAN 販売者アカウント、検証済み RANTAN Factory NFT が紐づいた販売中の商品、HTTPS の戻り先が必要です。
#1. Checkout Session を作成
販売者の注文ごとにバックエンドから 1 つのセッションを作成します。自社注文システムの安定した一意の client_reference_id を使用します。
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、注文参照だけを渡します。
{
"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 を読み込み、購入ボタンなどのユーザー操作からセッション専用ポップアップを開きます。
<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. フルフィルメントを検証
ポップアップが完了を通知したとき、または購入者が戻ったとき、バックエンドから検証エンドポイントを呼び出します。
curl https://app.rantan.xyz/api/v2/checkout-sessions/$SESSION_ID/verify/ \
-H "X-Rantan-Checkout-Verification-Key: $CHECKOUT_VERIFICATION_KEY"