Skip to main content

サポートされているウォレット

ウォレットインストールセルフカストディ備考
Blink組み込み❌ カストディアル最も簡単なセットアップ、GraphQL API
Alby Hub組み込み✅ セルフホストオプションREST API、独自のHubをサポート
カスタムL402Wallet インターフェース独自のウォレットを使用

BlinkWallet

セットアップ

  1. blink.sv でサインアップする
  2. Dashboard → API Keys に移動してキーを作成する
  3. ダッシュボードから ウォレットID をコピーする
export BLINK_API_KEY="your-api-key"
export BLINK_WALLET_ID="your-wallet-id"

Node.js

import { BlinkWallet } from "l402-kit";

const wallet = new BlinkWallet(
  process.env.BLINK_API_KEY!,
  process.env.BLINK_WALLET_ID!,
);

Python

from l402kit.wallets import BlinkWallet

wallet = BlinkWallet(
    api_key=os.environ["BLINK_API_KEY"],
    wallet_id=os.environ["BLINK_WALLET_ID"],
)

仕組み

lnInvoicePaymentSend ミューテーションを使って Blink GraphQL API を呼び出します。決済済みトランザクションから preImage を返します。

AlbyWallet

セットアップ

  1. getalby.com でアカウントを作成する
  2. Settings → Access Tokens に移動して payments:send スコープ付きのトークンを作成する
  3. (任意)セルフカストディのために独自の Alby Hub を実行する
export ALBY_TOKEN="your-access-token"
# 任意 — セルフホストのHubにのみ必要:
export ALBY_HUB_URL="https://your-hub.example.com"

Node.js

import { AlbyWallet } from "l402-kit";

// Alby クラウド
const wallet = new AlbyWallet(process.env.ALBY_TOKEN!);

// セルフホストHub
const wallet = new AlbyWallet(
  process.env.ALBY_TOKEN!,
  process.env.ALBY_HUB_URL,  // optional base URL
);

Python

from l402kit.wallets import AlbyWallet

# Alby クラウド
wallet = AlbyWallet(os.environ["ALBY_TOKEN"])

# セルフホストHub
wallet = AlbyWallet(
    access_token=os.environ["ALBY_TOKEN"],
    base_url=os.environ.get("ALBY_HUB_URL", "https://api.getalby.com"),
)

仕組み

Bearer トークンを使って Alby Hub REST API の POST /payments/bolt11 を呼び出します。レスポンスから payment_preimage を返します。

カスタムウォレット

L402Wallet インターフェースを実装して、任意の Lightning ウォレットを使用できます:
import type { L402Wallet } from "l402-kit";

class PhoenixWallet implements L402Wallet {
  async payInvoice(bolt11: string): Promise<{ preimage: string }> {
    const res = await fetch("http://localhost:9740/payinvoice", {
      method: "POST",
      body: new URLSearchParams({ invoice: bolt11 }),
    });
    const data = await res.json();
    return { preimage: data.paymentPreimage };
  }
}
このインターフェースには単一のメソッドが必要です:
メソッドTypeScriptPython
BOLT11 インボイスを支払うpayInvoice(bolt11): Promise<{ preimage: string }>pay_invoice(bolt11: str) -> str

ウォレットの選び方

  • テスト/プロトタイピング → Blink(カストディアル、即時セットアップ、無料枠あり)
  • 本番エージェント、最大制御 → Alby Hub セルフホスト(ノンカストディアル、REST API)
  • 高スループット/低手数料 → カスタム L402Wallet 経由の Phoenix(ノンカストディアル、ACINQ)
  • エンタープライズ → カスタムウォレット経由の LNbits セルフホスト