WavisWavis
Quickstart

Stripeをつなぐだけ
決済のたびに適格請求書が自動で出る。

発行者プロフィールを1回設定し、返ってくる受信URLを Stripe の Webhook に貼るだけ。以降あなたのコードは0行です。細かく制御したい開発者向けに、APIを直接叩く方法も用意しています。

A. つなぐだけ(推奨・コード0行)

所要 約3分。$WAVIS_KEY はあなたのAPIキー(早期アクセスでお渡しします)。

1
発行者プロフィールを設定して、受信URLを受け取る

発行者名・登録番号(T+13桁)・配送方法を一度だけ登録します。

# 発行者プロフィールを設定 → あなた専用の受信URL(ingest_url)が返る
curl https://api.wavis.xyz/v1/account/profile \
  -H "Authorization: Bearer $WAVIS_KEY" \
  -d '{"issuer":"あなたの会社","registration_number":"T1234567890123",
       "delivery_mode":"email","delivery_email":"keiri@example.com"}'
# → { "ingest_url": "https://api.wavis.xyz/v1/ingest/ing_xxxxx", ... }
2
その受信URLを Stripe の Webhook に貼る

Stripe ダッシュボード → 開発者 → Webhook → エンドポイントを追加。送信イベントは charge.succeededinvoice.paidinvoice.payment_succeeded

3
以上です。決済が通るたびに自動発行されます。

適格請求書PDFが自動生成され、常にWavisに保存(ダッシュボードで確認)。delivery_mode:"email" なら買い手へ自動送付(あなたをBcc)。同じ決済は二重発行しません(冪等)。

🎁 テストで確認:Stripe のテストモードで 4242 4242 4242 4242 を使って決済すると、すぐに1通発行されます。発行結果は ダッシュボード で確認できます。

B. APIを直接叩く(開発者向け・5行)

決済→発行を自分で制御したい場合。決済オブジェクトをその場で渡して1通だけ生成します。

# 決済オブジェクト(Stripe/PAY.JP/Square/任意JSON)から1通生成
curl https://api.wavis.xyz/v1/invoices/from_payment \
  -H "Authorization: Bearer $WAVIS_KEY" \
  -H "Content-Type: application/json" \
  -d '{"issuer":"あなたの会社","registration_number":"T1234567890123",
       "provider":"stripe","payment_object":{"amount":11000,"currency":"jpy"}}' \
  -o receipt.pdf
# 決済オブジェクトから1通生成(requests)
import requests, os

r = requests.post(
    "https://api.wavis.xyz/v1/invoices/from_payment",
    headers={"Authorization": f"Bearer {os.environ['WAVIS_KEY']}"},
    json={
        "issuer": "あなたの会社",
        "registration_number": "T1234567890123",
        "provider": "stripe",
        "payment_object": {"amount": 11000, "currency": "jpy"},
    },
)
open("receipt.pdf", "wb").write(r.content)
// 決済オブジェクトから1通生成(Node 18+ / fetch)
import { writeFile } from "node:fs/promises";

const r = await fetch("https://api.wavis.xyz/v1/invoices/from_payment", {
  method: "POST",
  headers: {
    "Authorization": `Bearer ${process.env.WAVIS_KEY}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    issuer: "あなたの会社",
    registration_number: "T1234567890123",
    provider: "stripe",
    payment_object: { amount: 11000, currency: "jpy" },
  }),
});
await writeFile("receipt.pdf", Buffer.from(await r.arrayBuffer()));

任意項目から組み立てるなら POST /v1/invoices(明細・税率・源泉徴収を指定)。

⚙️ 専用SDKは不要:OpenAPI 仕様を /openapi.json で公開しています。openapi-generatoropenapi-typescript で好みの言語のクライアントを自動生成できます。対話実行は APIリファレンス(/docs) から。

生成した請求書はどこで見る?

配送は「排他の2択」ではありません。常にWavisに保存(=いつでも確認)したうえで、買い手へ自動メールするかを選びます。

📥 保存(既定)

すべての発行を必ずWavisが保管ダッシュボードで一覧・PDF閲覧・ダウンロード、または GET /v1/invoices/stored でAPI取得。

📧 買い手へ自動メール(任意)

delivery_mode:"email" にすると、決済の買い手へPDFを自動送付(あなたを Bcc)。もちろん保存もされます。

主なエンドポイント

メソッド / パス役割
POST /v1/account/profile発行者プロフィール設定 → 受信URL取得
POST /v1/ingest/{token}決済イベント受信 → 自動発行(Stripeが叩く)
GET /v1/invoices/stored自動発行した請求書の一覧
GET /v1/invoices/stored/{id}保存済みPDFのダウンロード
POST /v1/invoices(/from_payment)JSON/決済から1通だけ生成
GET /v1/meプラン・当月使用量・見込み額

ダッシュボードを開く APIリファレンス