UNPKG

intopays

Version:

Intopays - Gateway de integração bancária

154 lines (153 loc) 5.46 kB
import { IntegrationEnum } from "../enums/IntegrationEnum"; import { StateEnum } from "../enums/StateEnum"; import { FineTypeEnum } from "../enums/FineTypeEnum"; import { InterestEnum } from "../enums/InterestEnum"; import { PaymentStatus } from "../enums/PaymentStatus"; import { DiscountEnum } from "../enums/DiscountEnum"; /** * Representa um boleto bancário com todos os dados necessários para emissão e integração. */ export declare class Boleto { constructor(data?: Partial<Boleto>); /** Identificador único do boleto */ id: number; /** Valor do boleto em centavos */ amount: number; /** Data de vencimento do boleto */ dueDate: Date; /** Dias após o vencimento para cancelamento automático */ daysAfterDueDateForCancellation: number; /** CPF ou CNPJ do pagador */ payerDocument: string; /** Nome completo do pagador */ payerName: string; /** E-mail do pagador */ payerEmail: string; /** Telefone do pagador */ payerPhone: string; /** CEP do pagador */ payerZipCode: string; /** Número do endereço do pagador */ payerNumber: string; /** Complemento do endereço do pagador */ payerComplement: string; /** Bairro do pagador */ payerNeighborhood: string; /** Cidade do pagador */ payerCity: string; /** * Estado (UF) do pagador. * Ex: `SP`, `RJ`, `MG`, etc. * Valores válidos: `AC`, `AL`, `AP`, `AM`, `BA`, `CE`, `DF`, `ES`, `GO`, `MA`, `MT`, * `MS`, `MG`, `PA`, `PB`, `PR`, `PE`, `PI`, `RJ`, `RN`, `RS`, `RO`, `RR`, `SC`, `SP`, `SE`, `TO`. */ payerState: StateEnum; /** Endereço completo do pagador */ payerAddress: string; /** Mensagem personalizada (linha 1) */ messageLine1: string; /** Mensagem personalizada (linha 2) */ messageLine2: string; /** * Tipo de desconto aplicado: * - `NO_DISCOUNT`: Sem desconto * - `FIXED_VALUE_UNTIL_INFORMED_DATE`: Valor fixo até a data informada * - `PERCENTAGE_UNTIL_INFORMED_DATE`: Percentual até a data informada */ discount1Code: DiscountEnum; /** Percentual do primeiro desconto */ discount1Rate: number; /** Valor fixo do primeiro desconto */ discount1Value: number; /** Data limite para o primeiro desconto */ discount1Date: Date; /** * Tipo de desconto aplicado: * - `NO_DISCOUNT`: Sem desconto * - `FIXED_VALUE_UNTIL_INFORMED_DATE`: Valor fixo até a data informada * - `PERCENTAGE_UNTIL_INFORMED_DATE`: Percentual até a data informada */ discount2Code: DiscountEnum; /** Percentual do segundo desconto */ discount2Rate: number; /** Valor fixo do segundo desconto */ discount2Value: number; /** Data limite para o segundo desconto */ discount2Date: Date; /** * Tipo de multa a ser aplicada: * - `NO_FINE`: Sem multa * - `AMOUNT`: Valor fixo * - `PERCENT`: Percentual sobre o valor do boleto */ fineCode: FineTypeEnum; /** Data de início da multa */ fineDate: Date | null; /** Percentual da multa */ fineRate: number; /** Valor fixo da multa */ fineValue: number; /** * Tipo de juros aplicável ao boleto: * - `AMOUNT_PER_DAY`: Valor fixo por dia de atraso * - `MONTHLY_RATE`: Percentual mensal de juros * - `EXEMPT`: Isento de juros */ interestCode: InterestEnum; /** Data de início da cobrança de juros */ interestDate: Date | null; /** Percentual dos juros */ interestRate: number; /** Valor fixo dos juros */ interestValue: number; /** Nome do beneficiário final do boleto */ finalBeneficiaryName: string; /** Documento (CPF/CNPJ) do beneficiário final */ finalBeneficiaryDocument: string; /** CEP do beneficiário final */ finalBeneficiaryZipCode: string; /** Endereço do beneficiário final */ finalBeneficiaryAddress: string; /** Bairro do beneficiário final */ finalBeneficiaryNeighborhood: string; /** Cidade do beneficiário final */ finalBeneficiaryCity: string; /** * Estado (UF) do beneficiário final. * Ex: `SP`, `RJ`, `MG`, etc. * Valores válidos: `AC`, `AL`, `AP`, `AM`, `BA`, `CE`, `DF`, `ES`, `GO`, `MA`, `MT`, * `MS`, `MG`, `PA`, `PB`, `PR`, `PE`, `PI`, `RJ`, `RN`, `RS`, `RO`, `RR`, `SC`, `SP`, `SE`, `TO`. */ finalBeneficiaryState: StateEnum; /** Código de barras do boleto */ barcode: string; /** Linha digitável do boleto */ digitableLine: string; /** Código QR para pagamento instantâneo (ex: PIX) */ qrcode: string; /** Código de referência interno do sistema */ referenceCode: string; /** Código de integração com a instituição bancária */ integrationBankingCode: string; /** * Tipo de integração utilizada com a instituição bancária: * - `SICOOB` * - `SICREDI` * - `INTER` * - `SANTANDER` * - `BANCODOBRASIL` * - `BRADESCO` * - `ITAU` */ integrationType: IntegrationEnum; /** * Status atual do boleto: * - `EXPIRED`: Expirado (data de validade final ultrapassada) * - `OVERDUE`: Vencido (vencimento ultrapassado, mas ainda válido) * - `OPEN`: Aberto (ainda aguardando pagamento) * - `PAID`: Pago * - `CANCELLED`: Cancelado * - `PROCESSING`: Em processamento (aguardando confirmação bancária) */ status?: PaymentStatus; }