EvoPay

Schemas

Referência completa de todos os tipos e objetos usados na API EvoPay.


Enums

TransactionStatus

Status de uma transação.

ValorDescrição
PENDINGAguardando processamento ou pagamento
COMPLETEDConcluída com sucesso
CANCELEDCancelada — ver cancellationReason para o motivo
WAITING_FOR_REFUNDAguardando estorno (infração identificada)
REFUNDEDEstornada com sucesso
EXPIREDCobrança Pix expirou sem pagamento
ERRORErro interno — contate o suporte se persistir

TransactionType

Tipo de movimentação financeira.

ValorDescrição
DEPOSITEntrada de valor via cobrança Pix (cash-in)
WITHDRAWSaída de valor para chave Pix (cash-out)
COMMISSIONComissão interna da plataforma — não gerada pela API

PixType

Tipo de chave Pix usada em saques.

ValorDescrição
cpfCPF do titular (11 dígitos)
cnpjCNPJ da empresa (14 dígitos)
emailEndereço de e-mail
phoneNúmero de telefone com DDD e código do país (ex: +5511999999999)
evpChave aleatória (EVP — Endereço Virtual de Pagamento)

RefundStatus

Status do processo de estorno de uma transação.

ValorDescrição
PENDINGEstorno solicitado, aguardando processamento
COMPLETEDEstorno concluído com sucesso
CANCELEDEstorno cancelado (ex.: infração rejeitada)

RefundReason

Motivo pelo qual o estorno foi iniciado.

ValorDescrição
CUSTOMER_REQUESTSolicitação do cliente
DENY_COMPANY_DEPOSITDepósito recusado pela empresa (ex.: CNPJ bloqueado)
INFRACTIONInfração Pix identificada pelo Banco Central

TransactionSplitStatus

Status de execução de um split configurado numa transação.

ValorDescrição
PENDINGConfigurado na criação, ainda não processado — execução real só acontece na confirmação do pagamento
EXECUTEDSplit executado com sucesso, valor creditado ao recebedor
FAILEDSplit não executado — ver failureReason/failureScope no webhook para o motivo

InfractionStatus

Status de uma infração Pix no sistema do Banco Central.

ValorDescrição
WAITING_PSPAguardando posicionamento do PSP participante
OPENInfração aberta e em análise
ACKNOWLEDGEDInfração reconhecida — o participante concordou com o estorno
DEFENDEDDefesa apresentada pelo participante debitado
ANSWEREDInfração respondida — análise em andamento
WAITING_ADJUSTMENTSAguardando ajustes adicionais
CLOSEDInfração encerrada com resolução
CANCELLEDInfração cancelada antes de resolução

InfractionType

Tipo de infração Pix reportada.

ValorDescrição
FRAUDFraude detectada — transação não reconhecida pelo pagador
REFUND_REQUESTSolicitação de devolução de valor
REFUND_CANCELLEDCancelamento de uma solicitação de devolução

AnalysisResult

Resultado da análise de uma infração.

ValorDescrição
AGREEDO participante concordou com o estorno
DISAGREEDO participante contestou a infração

ReportedType

Participante que reportou a infração.

ValorDescrição
DEBITED_PARTICIPANTO participante debitado (quem enviou o Pix) reportou a infração
CREDITED_PARTICIPANTO participante creditado (quem recebeu o Pix) reportou a infração

Objetos

Transaction

Objeto principal retornado por operações de depósito e saque.

CampoTipoNullableDescrição
idstringnãoID da transação (prefixo EP + 24 hex)
typeTransactionTypenãoDEPOSIT ou WITHDRAW
statusTransactionStatusnãoStatus atual da transação
amountnumbernãoValor em reais (BRL)
serviceFeeChargednumbersimTaxa de serviço cobrada
clientReferencestringsimReferência externa informada na criação
qrCodeTextstringsimPayload Pix Copia e Cola (DEPOSIT)
qrCodeUrlstringsimURL do QR Code em imagem (DEPOSIT)
qrCodeBase64stringsimQR Code em base64 (DEPOSIT)
generatedNamestringsimNome do pagador esperado (DEPOSIT)
generatedDocumentstringsimCPF/CNPJ do pagador esperado (DEPOSIT)
generatedEmailstringsimE-mail do pagador esperado (DEPOSIT)
payerNamestringsimNome de quem pagou (DEPOSIT, pós-pagamento)
payerDocumentstringsimCPF/CNPJ de quem pagou (DEPOSIT, pós-pagamento)
payerInstitutionIspbstringsimISPB da instituição do pagador
payerInstitutionNamestringsimNome da instituição do pagador
receiverNamestringsimNome do recebedor (WITHDRAW, pós-liquidação)
receiverDocumentstringsimCPF/CNPJ do recebedor (WITHDRAW, pós-liquidação)
receiverInstitutionIspbstringsimISPB da instituição do recebedor
receiverInstitutionNamestringsimNome da instituição do recebedor
withdrawPixKeystringsimChave Pix de destino (WITHDRAW via chave)
withdrawPixTypePixTypesimTipo da chave Pix de destino (WITHDRAW via chave)
withdrawQrCodeTextstringsimPayload EMV Pix Copia e Cola usado no saque (WITHDRAW via QR Code)
endToEndIdstringsimID fim a fim Pix (E2EID)
cancellationReasonstringsimMotivo do cancelamento quando status = CANCELED
paidAtstringsimTimestamp ISO 8601 do pagamento
refundEndToEndIdstringsimE2EID do estorno
refundAmountnumbersimValor estornado
refundStatusRefundStatussimStatus do estorno
refundReasonRefundReasonsimMotivo do estorno
refundDescriptionstringsimDescrição livre do estorno
refundedAtstringsimTimestamp ISO 8601 do estorno
createdAtstringnãoTimestamp ISO 8601 de criação
updatedAtstringnãoTimestamp ISO 8601 da última atualização
splitsTransactionSplitItem[]simSplits configurados na venda. Ausente inteiramente (não aparece nem vazio) quando a transação não foi criada com o campo splits no request

TransactionSplitItem

Split configurado numa venda, no formato retornado por POST/GET /pix/. Todo item vem com status: PENDING na criação — a execução real só acontece na confirmação do pagamento.

CampoTipoNullableDescrição
recipientIdstringnãoID do usuário recebedor, cadastrado e ativo na EvoPay
type"fixed" | "percent"nãoTipo do split
valuenumbernãoValor configurado, sempre em reais (nunca centavos). Para fixed, o valor cheio recebido; para percent, o percentual de 0 a 100
protectedbooleansimNull quando type é fixed — só se aplica a percent
statusTransactionSplitStatusnãoStatus de execução do split

TransactionSplitBreakdown

Estado final de um split depois que o webhook de confirmação de pagamento processa a transação. Só aparece no payload do webhook — POST/GET de /pix/ retornam o formato mais enxuto de TransactionSplitItem.

CampoTipoNullableDescrição
recipientIdstringnãoID do usuário recebedor
recipientNamestringsimNome do recebedor. Null quando o split falhou antes de resolver quem é o recebedor
type"fixed" | "percent"nãoTipo do split
valuenumbernãoValor configurado (reais para fixed, percentual 0–100 para percent)
protectedbooleansimNull quando type é fixed
statusTransactionSplitStatusnãoStatus de execução do split
executedAmountnumbersimValor efetivamente creditado ao recebedor. Null quando o split não foi executado
failureReasonstringsimMotivo textual da falha. Null quando o split foi executado com sucesso
failureScope"structural" | "recipient"simstructural quando a falha derrubou o array de splits inteiro (config errada); recipient quando é específica daquele recebedor (inexistente/inativo); null quando o split foi executado

SplitWarning

Aviso de que um split configurado não foi aplicado. Só aparece no webhook, junto com splits.

CampoTipoNullableDescrição
recipientIdstringsimID do recebedor daquele split. Null em falha estrutural — nesse caso a entrada cobre o array de splits inteiro, não um recebedor específico
reasonstringnãoMotivo da falha

Infraction

Infração Pix associada a uma transação.

CampoTipoNullableDescrição
idstringnãoID da infração
protocolstringnãoProtocolo fornecido pelo Banco Central
statusInfractionStatusnãoStatus atual da infração
typeInfractionTypenãoTipo da infração
reportedByReportedTypenãoQuem abriu a infração
reportDetailsstring | nullsimDescrição do motivo da infração
analysisResultAnalysisResultsimResultado da análise (disponível após decisão)
analysisDetailsstringsimJustificativa da decisão
reportedAtstringnãoTimestamp ISO 8601 do reporte
expiresAtstringsimPrazo de resolução (ISO 8601)
createdAtstringnãoTimestamp ISO 8601 de criação
updatedAtstringnãoTimestamp ISO 8601 da última atualização
transactionobjectnãoDados resumidos da transação vinculada
defenseHistoryarraynãoHistórico de defesas apresentadas

AutoWithdraw

Configuração de saque automático da conta. Retornado dentro de GET /v1/user/ quando ativo.

CampoTipoNullableDescrição
amountnumbernãoValor mínimo de saldo para disparar o saque automático
pixKeystringnãoChave Pix de destino do saque automático
pixTypePixTypenãoTipo da chave Pix
activebooleannãoSe o saque automático está habilitado

DailyWithdrawLimit

Limite diário de saques da conta. Retornado dentro de GET /v1/user/ quando configurado.

CampoTipoNullableDescrição
limitnumbernãoLimite diário em reais
usednumbernãoValor já sacado no dia corrente
updatedAtstringnãoTimestamp ISO 8601 da última atualização do limite
lastResetstringsimTimestamp ISO 8601 do último reset do contador diário
EvoPay API Documentation