PayHubPayHub
GuiaAPI Reference
PayHubPayHub
IntroduçãoAutenticaçãoErrosPaginação e Filtros

Erros

Códigos de erro e como tratá-los na API SoarLabz

Formato de Erro

Quando uma requisição falha, a API retorna um objeto com a seguinte estrutura:

{
  "message": "Cobrança não encontrada",
  "error": "CHARGE_NOT_FOUND",
  "status": 404
}
CampoTipoDescrição
messagestringMensagem descritiva em português
errorstringCódigo de erro programático em inglês
statusnumberCódigo HTTP da resposta

Códigos HTTP

CódigoSignificadoDescrição
200OKRequisição bem-sucedida
201CreatedRecurso criado com sucesso
400Bad RequestDados inválidos ou parâmetros ausentes
401UnauthorizedAutenticação ausente ou inválida
403ForbiddenSem permissão para acessar o recurso
404Not FoundRecurso não encontrado
409ConflictConflito (recurso já existe)
422Unprocessable EntityErro de validação nos dados enviados
429Too Many RequestsLimite de requisições excedido
500Internal Server ErrorErro interno do servidor

Códigos de Erro Comuns

Autenticação

CódigoDescrição
UNAUTHORIZEDAutenticação ausente, token/chave inválida ou IP fora da whitelist
INSUFFICIENT_PERMISSIONSem permissão para a ação solicitada
NO_ACTIVE_MERCHANTNenhum merchant ativo selecionado
API_KEY_REVOKEDChave de API foi revogada

Rate Limiting

CódigoDescrição
RATE_LIMIT_EXCEEDEDLimite de requisições excedido

Recursos

CódigoDescrição
NOT_FOUNDRecurso não encontrado
MERCHANT_ID_REQUIREDID do merchant é obrigatório
CHARGE_NOT_FOUNDCobrança não encontrada
WALLET_NOT_FOUNDCarteira não encontrada

Cobranças

CódigoDescrição
IDEMPOTENCY_CONFLICTJá existe uma cobrança com a chave de idempotência informada
BILLING_ADDRESS_REQUIREDEndereço de cobrança obrigatório para o método de pagamento informado
PAYMENT_METHOD_NOT_ALLOWEDMétodo de pagamento não habilitado para a empresa
CHARGE_AMOUNT_EXCEEDS_LIMITValor da cobrança excede o limite máximo permitido por transação para a empresa
THREE_DS_REQUIREDAutenticação 3DS obrigatória para esta cobrança
FRAUD_ANALYSIS_REQUIREDAnálise de fraude obrigatória para esta cobrança
TOKEN_NOT_FOUNDToken de pagamento não encontrado
NO_ACTIVE_ORCHESTRATOR_FLOWNenhum fluxo de orquestração ativo configurado
ORCHESTRATOR_RESOLUTION_FAILEDErro interno ao resolver o fluxo de orquestração
MERCHANT_WALLET_NOT_FOUNDEmpresa não possui carteira configurada
SUBMERCHANT_WALLET_NOT_FOUNDSubmerchant não possui carteira configurada
CHARGE_AUTHORIZATION_FAILEDPagamento recusado pela adquirente
CHARGE_FAILEDFalha ao processar a cobrança
FETCH_FAILEDFalha ao buscar a cobrança

Captura

CódigoDescrição
CHARGE_ALREADY_CAPTUREDCobrança não pode ser capturada no estado atual
CAPTURE_FAILEDFalha ao capturar a cobrança

Estorno

CódigoDescrição
CHARGE_ALREADY_REFUNDEDCobrança não pode ser estornada no estado atual
REFUND_AMOUNT_EXCEEDS_CHARGEValor do estorno excede o valor da cobrança
CHARGE_STATE_CHANGEDEstado da cobrança mudou durante o estorno
REFUND_FAILEDFalha ao estornar a cobrança

Tratamento de Erros

Recomendamos sempre verificar o campo error da resposta antes de processar os dados:

const response = await fetch('https://api.payhubrasil.com.br/v1/charges', {
  headers: { 'Authorization': `Basic ${credentials}` },
});

const result = await response.json();

if (result.error) {
  console.error(`Erro: ${result.error} - ${result.message}`);
  // Trate o erro conforme o código
  return;
}

// Processe os dados normalmente
const charges = result.data;

Autenticação

Como autenticar requisições na API SoarLabz

Paginação e Filtros

Como paginar resultados e aplicar filtros nas listagens

On this page

Formato de ErroCódigos HTTPCódigos de Erro ComunsAutenticaçãoRate LimitingRecursosCobrançasCapturaEstornoTratamento de Erros