voko-sdk
Version:
Process payments with ease
49 lines (48 loc) • 1.51 kB
TypeScript
import { PaymentStatus, Currency, PaymentMethod, MobileOperator, BankOperator } from '../types/payment.types';
export interface PaymentRequest {
amount: number;
currency: Currency;
phoneNumber?: string | undefined;
email?: string | undefined;
fullName?: string | undefined;
reference: string;
description?: string | undefined;
callbackUrl?: string | undefined;
metadata?: Record<string, any>;
paymentMethod?: PaymentMethod | undefined;
operator?: MobileOperator | BankOperator | undefined;
accountNumber?: string | undefined;
otp?: string | undefined;
}
export interface PaymentResponse {
success: boolean;
status: PaymentStatus;
transactionId: string;
providerTransactionId?: string;
amount: number;
currency: Currency;
phoneNumber?: string | undefined;
email?: string | undefined;
fullName?: string | undefined;
reference: string;
message?: string;
timestamp: string;
paymentMethod?: PaymentMethod | undefined;
operator?: MobileOperator | undefined;
providerData?: Record<string, any>;
}
export interface PaymentStatusRequest {
transactionId: string;
[key: string]: any;
}
export interface PaymentStatusResponse {
transactionId: string;
providerTransactionId?: string;
status: PaymentStatus;
amount?: number;
currency?: Currency;
reference: string;
completedAt?: string | undefined;
failureReason?: string | undefined;
providerData?: Record<string, any>;
}