Skip to Content
SDK Node.jsVue d'ensemble

SDK Node.js / TypeScript

Version 0.2.0 · non publiée sur npm

@kadryza/sdk est un client TypeScript pour Node.js 22+ (ESM et CommonJS). Il couvre les Payment Sessions, les webhooks (gestion, vérification, parsing) et l’API Transactions historique.

Le paquet n’est pas encore publié sur npm : npm install @kadryza/sdk fonctionnera à la publication. En attendant, l’API HTTP s’utilise sans SDK (voir la référence API), ou installez l’archive fournie par l’équipe Kadryza.

Initialisation

import Kadryza from '@kadryza/sdk' const kadryza = new Kadryza({ apiKey: process.env.KADRYZA_API_KEY!, // kadryza_test_… ou kadryza_live_… // baseUrl: 'https://api.kadryza.app', // par défaut // timeout: 30000, // millisecondes, par défaut })

Le SDK envoie la clé dans X-API-Key. L’environnement est celui de la clé ; il n’y a pas de paramètre environment. baseUrl doit être en HTTPS (sauf localhost).

Méthodes

Payment Sessions

await kadryza.paymentSessions.create(params) await kadryza.paymentSessions.retrieve(id) await kadryza.paymentSessions.retrieveByReference(reference) await kadryza.paymentSessions.listWebhookDeliveries(id) await kadryza.paymentSessions.cancel(id) // sessions de test uniquement

Webhooks

await kadryza.webhooks.create({ url }) await kadryza.webhooks.list() await kadryza.webhooks.delete(id) await kadryza.webhooks.test(id) kadryza.webhooks.verify({ payload, signature, secret }) kadryza.webhooks.verifyAndParse({ payload, signature, secret }) // payload typé ou null

Fonctions exportées : verifyWebhookSignature, parseKadryzaWebhookPayload, getWebhookIdempotencyKey (renvoie event_id quand il existe), isPaymentSessionWebhook, isTransactionWebhook, isKnownWebhookEvent.

Transactions (API historique)

await kadryza.transactions.initiate(params) // test uniquement : 503 avec une clé live await kadryza.transactions.get(id) await kadryza.transactions.list({ limit, offset, status, operator, date_from, date_to, search })

Exemple

creer-session.ts
import Kadryza from '@kadryza/sdk' const kadryza = new Kadryza({ apiKey: process.env.KADRYZA_API_KEY! }) const session = await kadryza.paymentSessions.create({ reference: 'order_2026_001', amount: 5000, currency: 'XAF', operator: 'AIRTEL', customer_phone: '+23566000000', ttl_minutes: 15 }) console.log(session.assigned_collection_number, session.checkout_url)

Non couvert

SurfaceAlternative
Hosted Checkout (POST /v1/hosted-checkouts)API HTTP
Activation/désactivation d’un endpoint (PATCH /v1/webhooks/:id)API HTTP ou dashboard
Liens de paiement, remboursements, solde, retraits, factures, clés APIDashboard

Erreurs

Le SDK lève des classes typées selon le statut HTTP (KadryzaAuthError, KadryzaValidationError, KadryzaNotFoundError, KadryzaDuplicateError, KadryzaGatewayUnavailableError, KadryzaNetworkError, KadryzaError). Pour certains statuts, le code détaillé de l’API est remplacé par un code générique : voir Codes d’erreur — SDK.

Référence complète des méthodes : Référence SDK.