Depot電子マネー決済の統合方法
payment_url
決済作成
POST /v1/payments
顧客をリダイレクト
顧客が決済完了
リダイレクトバック
success_redirect_url
failure_redirect_url
結果確認
// 1. APIで決済を作成 const response = await fetch('https://api.sandbox.zafapay.com/v1/payments', { method: 'POST', headers: { 'Authorization': 'Bearer YOUR_ACCESS_TOKEN', 'Content-Type': 'application/json' }, body: JSON.stringify({ amount: 100, currency: 'usd', external_id: 'order_12345' }) }); const payment = await response.json(); // 2. 顧客をDepot決済ページにリダイレクト window.location.href = payment.payment_url;
// Webhookハンドラー app.post('/webhooks/zafapay', async (req, res) => { const event = req.body; if (event.type === 'payment.completed') { // 注文ステータスを更新 await updateOrder(event.data.external_id, 'paid'); } res.json({ received: true }); });