Skip to main content

Deux modes

ModeProviderFraisTestnet / SandboxConfiguration
GéréManagedProvider0,3% par sat❌ (utiliser mock dans les tests)Adresse Lightning uniquement
SoberanoBlink0%❌ mainnet uniquementCompte custodial gratuit
SoberanoLNbits0%✅ RegTest / signetAuto-hébergé ou instance publique
SoberanoOpenNode0%testMode: trueCompte sandbox gratuit
SoberanoAlby Hub0%✅ via portefeuille testnet HubNœud cloud auto-custodial
SoberanoBTCPay0%✅ Support RegTestNœud auto-hébergé
SoberanoPersonnalisé0%✅ selon votre configurationN’importe quel backend Lightning
Mode géré — l402kit.com héberge le nœud Lightning. Vous ajoutez votre adresse Lightning. Nous vous reversons automatiquement 99,7% de chaque sat. Mode Soberano — Vous connectez votre propre portefeuille/nœud Lightning. 0% de frais, garde totale, fonctionne avec n’importe quel provider.

ManagedProvider (Recommandé)

Aucun nœud Lightning requis. Ajoutez votre adresse Lightning et commencez à gagner — l402kit.com gère toute la création de factures et le routage des paiements. Frais : 0,3% par sat reçu. 99,7% arrive directement dans votre portefeuille Lightning. Aucun abonnement mensuel.
import { l402, ManagedProvider } from 'l402-kit';
import express from 'express';

const app = express();
const lightning = ManagedProvider.fromAddress('you@yourdomain.com');

app.get('/premium', l402({ priceSats: 10, lightning }), (req, res) => {
  res.json({ data: 'Payment confirmed ⚡' });
});

app.listen(3000);
// 0.3% fee · no node setup · works immediately
Comment ça fonctionne :
  1. Votre API appelle ManagedProvider.fromAddress("you@domain.com")
  2. Lorsqu’un appelant atteint votre endpoint, l402kit.com crée une facture Lightning
  3. L’appelant paie → Lightning règle → 99,7% transféré instantanément vers votre adresse Lightning
  4. Votre API vérifie la preuve cryptographique et renvoie 200 OK
Les frais de routage de 0,3% constituent le seul coût. Aucun abonnement mensuel. Aucune inscription de compte. Toute adresse Lightning fonctionne (Blink, Phoenix, Alby, Strike, Wallet of Satoshi, etc.).

Confiance & disponibilité

Qui gère l402kit.com ? ShinyDapps (open source, MIT). L’infrastructure gérée fonctionne sur Cloudflare Workers — distribuée mondialement, aucun serveur unique susceptible de tomber en panne. Disponibilité : Surveillée 24h/24 et 7j/7 sur stats.uptimerobot.com/57uOzF17jK. Objectif SLA : 99,9%. Et si l402kit.com disparaît ? Votre logique de vérification est locale — SHA256(preimage) == paymentHash s’exécute dans votre processus, sans aucun appel réseau. Seule la création de factures touche l402kit.com. Si le service géré tombe en panne, basculez vers n’importe quel provider soberano en une seule ligne :
// Avant (géré)
const lightning = ManagedProvider.fromAddress("you@yourdomain.com");

// Après (soberano — 0% de frais, garde totale)
const lightning = new BlinkProvider(process.env.BLINK_API_KEY!, process.env.BLINK_WALLET_ID!);
Aucune autre modification de code. Les tokens déjà payés continuent de fonctionner — la vérification est purement cryptographique. Puis-je auto-héberger la couche gérée ? Oui. Le code source complet est sur GitHub sous licence MIT. cloudflare/ contient le worker de l’API gérée — déployez-le sur votre propre compte Cloudflare en 5 minutes.
Blink est un portefeuille Bitcoin Lightning custodial gratuit avec une API GraphQL. Pas de KYC, pas d’abonnement mensuel, configuration instantanée. Utilisez-le pour fonctionner en mode soberano avec 0% de frais.
Plan de secours : Blink est un service gratuit — leurs tarifs peuvent changer. Si Blink ajoute des frais ou limite l’API, basculez vers un autre provider soberano en une seule ligne de code (aucune autre modification requise, les tokens déjà payés continuent de fonctionner). Zéro verrouillage. Bonnes alternatives : LNbits (auto-hébergé, 0% à jamais), OpenNode (SLA commercial), Alby Hub (auto-custodial), ou BTCPay (entièrement souverain).
Pour commencer :
  1. Créez un compte sur dashboard.blink.sv
  2. Allez dans API Keys → créez une nouvelle clé
  3. Copiez votre BTC Wallet ID depuis la page du portefeuille
import { BlinkProvider } from 'l402-kit';

const blink = new BlinkProvider(
  process.env.BLINK_API_KEY!,    // blink_xxx...
  process.env.BLINK_WALLET_ID!,  // UUID
);
Variables d’environnement :
BLINK_API_KEY=blink_xxxxxxxxxxxxxxxxxxxxxxxx
BLINK_WALLET_ID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

LNbits (Soberano — 0% de frais)

LNbits est un serveur de portefeuille Lightning open source. Hébergez-le vous-même ou utilisez une instance publique. Pour commencer :
  1. Installez LNbits (auto-hébergé ou utilisez legend.lnbits.com)
  2. Créez un portefeuille → copiez la clé Invoice/read
import { LNbitsProvider } from 'l402-kit';

const lnbits = new LNbitsProvider(
  process.env.LNBITS_KEY!,
  process.env.LNBITS_URL ?? 'https://legend.lnbits.com',
);
Variables d’environnement :
LNBITS_KEY=your-invoice-read-key
LNBITS_URL=https://your-lnbits-instance.com

OpenNode (Soberano — 0% de frais)

OpenNode est un provider Lightning avec un sandbox gratuit pour les tests. Pour commencer :
  1. Créez un compte sur app.opennode.com
  2. Allez dans IntegrationsAPI Keys → créez une clé
import { OpenNodeProvider } from 'l402-kit';

const opennode = new OpenNodeProvider(
  process.env.OPENNODE_KEY!,
  process.env.NODE_ENV !== 'production', // testMode
);

Alby Hub (Soberano — 0% de frais)

Alby Hub est un nœud Lightning auto-custodial dans le cloud. Vos clés, vos sats — aucun dépositaire. Pour commencer :
  1. Créez un Hub sur hub.getalby.com (ou auto-hébergez)
  2. Allez dans Settings → Access Tokens → créez un token avec les portées invoices:create + invoices:read
  3. Copiez votre URL Hub et votre token d’accès
import { AlbyProvider } from 'l402-kit';

const alby = new AlbyProvider(
  process.env.ALBY_ACCESS_TOKEN!,  // Hub → Settings → Access Tokens
  process.env.ALBY_HUB_URL!,       // ex. "https://your-name.getalby.com"
);
Variables d’environnement :
ALBY_ACCESS_TOKEN=your-alby-access-token
ALBY_HUB_URL=https://your-name.getalby.com

BTCPay Server (Soberano — 0% de frais)

BTCPay Server est entièrement souverain en matière de Bitcoin + Lightning. Votre nœud, vos clés, zéro garde. Compatible avec : auto-hébergé (Umbrel, Start9, VPS) ou géré (Voltage, LunaNode). Pour commencer :
  1. Boutique BTCPay → Lightning → Settings
  2. Account → API Keys → générez une clé avec la portée btcpay.store.cancreatelightninginvoice
  3. Copiez votre Store ID depuis l’URL de la boutique
import { BTCPayProvider } from 'l402-kit';

const btcpay = new BTCPayProvider(
  process.env.BTCPAY_URL!,       // ex. "https://btcpay.yourdomain.com"
  process.env.BTCPAY_API_KEY!,   // Account → API Keys
  process.env.BTCPAY_STORE_ID!,  // depuis l'URL de la boutique
);
Variables d’environnement :
BTCPAY_URL=https://btcpay.yourdomain.com
BTCPAY_API_KEY=your-api-key
BTCPAY_STORE_ID=your-store-id

Provider personnalisé (Soberano — 0% de frais)

Implémentez l’interface LightningProvider pour utiliser n’importe quel backend Lightning :
import type { LightningProvider, Invoice } from 'l402-kit';

class MyProvider implements LightningProvider {
  async createInvoice(amountSats: number): Promise<Invoice> {
    // Call your Lightning node API
    const result = await myNode.createInvoice(amountSats);
    const macaroon = Buffer.from(
      JSON.stringify({ hash: result.hash, exp: Date.now() + 3_600_000 })
    ).toString('base64');
    return {
      paymentRequest: result.bolt11,
      paymentHash: result.hash,
      macaroon,
      amountSats,
      expiresAt: Date.now() + 3_600_000,
    };
  }

  async checkPayment(paymentHash: string): Promise<boolean> {
    return myNode.isPaid(paymentHash);
  }
}