@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
TypeScript
/**
* @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;