UNPKG

@criapix/saas-assinaturas-client

Version:

SDK JavaScript/TypeScript para o AssinaturasService - Sistema de gestão de assinaturas SaaS com processamento de pagamentos de faturas (cartão, PIX, débito), gerenciamento de métodos de pagamento, pagamentos recorrentes e análise de falhas de pagamento

105 lines (89 loc) 1.83 kB
import { InvoiceStatus } from '../enums'; export interface InvoiceResponse { id: string; subscriptionId: string; invoiceNumber: string; issueDate: string; dueDate: string; amount: number; status: InvoiceStatus; paidAt?: string; paymentMethod?: string; notes?: string; isOverdue: boolean; daysOverdue: number; createdAt: string; updatedAt?: string; } export interface GenerateInvoiceRequest { subscriptionId: string; dueDate: string; notes?: string; } export interface InvoiceFilterRequest { subscriptionId?: string; status?: InvoiceStatus; dueDateFrom?: string; dueDateTo?: string; page?: number; pageSize?: number; } export interface UpdateInvoiceStatusRequest { status: InvoiceStatus; paidAt?: string; paymentMethod?: string; notes?: string; } export interface GenerateBatchInvoicesRequest { month?: number; year?: number; } export interface InvoiceGenerationError { subscriptionId: string; errorMessage: string; } export interface BatchInvoiceResponse { totalSubscriptionsProcessed: number; invoicesGenerated: number; invoicesAlreadyExisted: number; errors: InvoiceGenerationError[]; month: number; year: number; } /** * Response containing aggregated invoice statistics */ export interface InvoiceStatisticsResponse { /** * Total number of invoices */ totalCount: number; /** * Total amount of all invoices */ totalAmount: number; /** * Number of paid invoices */ paidCount: number; /** * Total amount paid */ paidAmount: number; /** * Number of pending invoices */ pendingCount: number; /** * Total pending amount */ pendingAmount: number; /** * Number of overdue invoices */ overdueCount: number; /** * Total overdue amount */ overdueAmount: number; }