@sen-pay/core
v0.1.0
Published
Core types, errors, and provider interfaces for SenPay
Downloads
89
Maintainers
Readme
@sen-pay/core
Types, erreurs et interfaces provider pour le SDK SenPay.
Ce package est le cœur du SDK. Il est zéro-dépendance et contient :
- Types :
PaymentRequest,PaymentResponse,PaymentStatus, etc. - Erreurs :
SenPayError,AuthError,ValidationError, etc. - Interface :
PaymentProvider— le contrat que chaque provider doit implémenter. - Validation :
validatePaymentRequest()pour valider les entrées. - Constantes :
PAYDUNYA_CHANNEL_MAP,SUPPORTED_METHODS,DEFAULT_CURRENCY.
Installation
pnpm add @sen-pay/coreUsage
import type { PaymentProvider, PaymentRequest } from "@sen-pay/core";
import { validatePaymentRequest, SenPayError } from "@sen-pay/core";
// Valider une requête
try {
validatePaymentRequest(request);
} catch (error) {
if (error instanceof SenPayError) {
console.error(error.code, error.message);
}
}Créer un provider
import type { PaymentProvider } from "@sen-pay/core";
export class MyProvider implements PaymentProvider {
readonly name = "my-provider";
readonly capabilities = ["checkout", "webhook", "status"];
async createPayment(request) { /* ... */ }
async getPaymentStatus(paymentId) { /* ... */ }
async verifyWebhook(payload, signature) { /* ... */ }
}