UNPKG

@jackiemacklein/nettz-utils

Version:

Serviços de imagem, e-mail, códigos de barras, utilitários numéricos e componentes React para apps Node.js com TypeScript

38 lines (37 loc) 2.29 kB
/** * @author Jackiê Macklein * @company Onside tecnologia/Nettz * @copyright Todos direitos reservados. * @description Validação client-side da criação de transação remota (bandeira, parcelas, valor, splits). * Referência: https://evoluservices.github.io/evoluservices-developer/docs/remote-transaction/create-remote-transaction/how-to-create-remote-transaction */ import { type EvoCreateRemoteTransactionBody, type EvoCreateRemoteTransactionResponse } from "./types"; /** Códigos `error` documentados na criação de transação remota (resposta de erro). */ export declare const EvoRemoteTransactionErrorCode: { readonly PAYMENT_BRAND_ID_INVALID: "PAYMENT_BRAND_ID_INVALID"; readonly INSTALLMENTS_INVALID_FOR_DEBIT: "INSTALLMENTS_INVALID_FOR_DEBIT"; readonly INVALID_PAYMENT_BRAND: "INVALID_PAYMENT_BRAND"; readonly INVALID_INSTALLMENTS_QUANTITY_OR_VALUE: "INVALID_INSTALLMENTS_QUANTITY_OR_VALUE"; readonly MERCHANT_ID_INVALID: "MERCHANT_ID_INVALID"; readonly TERMINAL_ID_INVALID: "TERMINAL_ID_INVALID"; readonly MERCHANT_TERMINAL_INVALID: "MERCHANT_TERMINAL_INVALID"; readonly VALUE_FIELD_INVALID: "VALUE_FIELD_INVALID"; readonly NAME_CLIENT_INVALID: "NAME_CLIENT_INVALID"; readonly DOCUMENT_INVALID: "DOCUMENT_INVALID"; readonly SPLIT_SUM_GREATER_THAN_TRANSACTION_VALUE: "SPLIT_SUM_GREATER_THAN_TRANSACTION_VALUE"; readonly SUPPLIER_NOT_FOUND: "SUPPLIER_NOT_FOUND"; readonly SUPPLIER_INVALID: "SUPPLIER_INVALID"; }; /** Mensagem amigável para o código retornado pela API (fallback: o próprio código). */ export declare function getEvoRemoteTransactionErrorMessage(code: string): string; /** Tenta extrair `error` / `success` de um corpo JSON da EvoluServices. */ export declare function tryParseEvoRemoteTransactionResponse(body: string): { success?: string; error?: string; } | undefined; /** * Valida o body antes do POST. Lança `EvoPagamentosApiError` com `status` 400 e corpo JSON com `message`. */ export declare function assertValidCreateRemoteTransactionBody(body: EvoCreateRemoteTransactionBody): void; /** Se a API retornou JSON com success !== true, lança erro com `evoErrorCode`. */ export declare function assertEvoCreateRemoteTransactionSuccess(data: EvoCreateRemoteTransactionResponse): void;