UNPKG

pancake-client-sdk

Version:
104 lines (103 loc) 2.89 kB
import { PaymentGateway, PaymentMethod, PaymentTransaction, CreatePaymentRequest, PaymentResponse, RefundRequest, PaymentAnalytics, PaymentWebhookEvent, InstallmentPlan, BankTransferInfo } from '../types/payment'; import { BaseResource } from './base'; export declare class PaymentResource extends BaseResource { /** * Get list of payment gateways */ listGateways(): Promise<{ data: PaymentGateway[]; }>; /** * Get gateway by code */ getGateway(code: string): Promise<PaymentGateway>; /** * Update gateway settings */ updateGatewaySettings(code: string, settings: Partial<PaymentGateway['settings']>): Promise<PaymentGateway>; /** * Get list of payment methods */ listMethods(params?: { gateway_code?: string; currency?: string; is_active?: boolean; }): Promise<{ data: PaymentMethod[]; }>; /** * Create payment transaction */ createPayment(data: CreatePaymentRequest): Promise<PaymentResponse>; /** * Get transaction by ID */ getTransaction(transactionId: string): Promise<PaymentTransaction>; /** * List transactions */ listTransactions(params?: { page_size?: number; page_number?: number; gateway_code?: string; status?: string; from_date?: string; to_date?: string; order_id?: string; }): Promise<{ data: PaymentTransaction[]; }>; /** * Refund transaction */ refund(data: RefundRequest): Promise<PaymentTransaction>; /** * Cancel transaction */ cancel(transactionId: string, reason?: string): Promise<PaymentTransaction>; /** * Get payment analytics */ getAnalytics(params?: { from_date?: string; to_date?: string; gateway_code?: string; }): Promise<PaymentAnalytics>; /** * Handle webhook event */ handleWebhook(gatewayCode: string, data: Record<string, any>, signature?: string): Promise<PaymentWebhookEvent>; /** * Get installment plans */ getInstallmentPlans(params: { amount: number; gateway_code?: string; bank_code?: string; }): Promise<{ data: InstallmentPlan[]; }>; /** * Get bank transfer info */ getBankTransferInfo(transactionId: string): Promise<BankTransferInfo>; /** * Verify bank transfer */ verifyBankTransfer(transactionId: string, data: { transfer_proof?: string; bank_reference?: string; amount?: number; transferrer?: string; }): Promise<PaymentTransaction>; /** * Get payment QR code */ getPaymentQR(transactionId: string, params?: { format?: 'svg' | 'png'; size?: number; }): Promise<{ qr_code: string; expires_at: string; }>; }