Visão geral
As Transações representam todas as operações de pagamento realizadas através da Upay Gateway API. Cada transação contém informações completas sobre o pagamento, incluindo método utilizado, status, valores e dados do cliente.Pré-requisitos
Antes de começar, você precisa:- Uma conta ativa na Upay
- Sua API Key configurada (veja Autenticação)
- Conhecimento básico de APIs REST
Funcionalidades
- Múltiplos métodos de pagamento: PIX, Cartão de Crédito/Débito, Boleto
- Rastreamento em tempo real: Acompanhe o status de cada transação
- Histórico completo: Consulte todas as transações com paginação
- Detalhes do cliente: Informações completas do pagador
- Webhooks: Receba notificações automáticas de mudanças de status
- Filtros avançados: Busque por status, método de pagamento, período e mais
Criando uma transação
Requisição Básica - PIX
Resposta
O campo
displayId é preenchido com o ID externo gerado pela adquirente após o processamento. O campo pixCopiaECola contém o código PIX copia-e-cola pronto para uso.Campos disponíveis
Campos obrigatórios
| Campo | Tipo | Descrição |
|---|---|---|
product | string | Nome ou descrição do produto/serviço. Máximo 255 caracteres. |
amountCents | number | Valor em centavos. Exemplo: 9900 = R$ 99,00. |
clientName | string | Nome completo do cliente. Máximo 255 caracteres. |
clientEmail | string | Email válido do cliente. |
clientDocument | string | CPF ou CNPJ do cliente (apenas números). Mínimo 11 dígitos. |
Campos opcionais
| Campo | Tipo | Descrição | Padrão |
|---|---|---|---|
paymentMethod | string | Método de pagamento: "PIX", "CARD", "BOLETO". | "PIX" |
clientPhone | string | Telefone do cliente (apenas números). Exemplo: 11999999999. | — |
installments | number | Número de parcelas (apenas cartão). Mínimo: 1, Máximo: 12. | 1 |
paymentLinkId | string (UUID) | ID do link de pagamento associado. | — |
dueDate | string (ISO 8601) | Data de vencimento da cobrança. | — |
metadata | object | Dados adicionais personalizados (ex: orderId, source). | — |
postbackUrl | string (URL) | URL para receber notificações de mudança de status da transação. | — |
trackingParams | object | Parâmetros UTM para rastreamento de campanhas. | — |
📖 Exemplos Completos
Transação com Cartão de Crédito
Transação com Boleto
Transação com Metadata (integração de parceiros)
Consultando transações
Listar Todas as Transações
Resposta
Buscar Transação Específica
Filtros Disponíveis
📊 Status da Transação
| Status | Descrição | Ação |
|---|---|---|
PENDING | Aguardando pagamento | Aguardar confirmação |
PROCESSING | Processando pagamento | Aguardar processamento |
COMPLETED | Pagamento confirmado | Liberar produto/serviço |
FAILED | Pagamento falhou | Tentar novamente |
CANCELLED | Transação cancelada | Criar nova transação |
REFUNDED | Pagamento reembolsado | Registrar reembolso |
EXPIRED | Transação expirada | Criar nova transação |
Métodos de pagamento
PIX
- Tempo de expiração: 30 minutos (padrão)
- Confirmação: Instantânea
- Retorno: Código copia-e-cola e data de expiração
- Webhook:
transaction.completedquando confirmado
Cartão de Crédito
- Parcelamento: Até 12x
- Confirmação: Imediata ou em até 2 dias úteis
- Retorno: Status da autorização
- Webhook:
transaction.completedoutransaction.failed
Cartão de Débito
- Parcelamento: Não disponível
- Confirmação: Imediata
- Retorno: Status da autorização
- Webhook:
transaction.completedoutransaction.failed
Boleto
- Vencimento: 3 dias úteis (padrão)
- Confirmação: 1-3 dias úteis após pagamento
- Retorno: URL do boleto e código de barras
- Webhook:
transaction.completedquando compensado
Postback URL
Se você prefere receber notificações de status por transação sem precisar cadastrar uma assinatura de webhook global, use o campopostbackUrl na criação da transação.
Quando o status mudar para COMPLETED ou FAILED, a UPay enviará automaticamente um POST para a URL informada com o seguinte payload:
X-Webhook-Signature é enviado com assinatura HMAC-SHA256 para validação de autenticidade (mesmo formato dos webhooks). Seu endpoint deve responder com status 2xx para confirmar o recebimento.
🔔 Webhooks
Configure webhooks para receber notificações automáticas sobre mudanças de status:Segurança
Validação de Dados
Sempre valide os dados antes de criar uma transação:Proteção contra Duplicatas
Usemetadata para rastrear transações e evitar duplicatas:
Boas práticas
- Sempre use webhooks: Não confie apenas em polling para verificar status
- Armazene o ID da transação: Guarde o
idedisplayIdno seu banco de dados - Trate erros adequadamente: Implemente retry com backoff exponencial
- Valide dados do cliente: Verifique CPF/CNPJ, email e telefone antes de enviar
- Use metadata: Armazene informações adicionais para rastreamento
- Monitore expiração: PIX expira em 30 minutos, boleto em 3 dias
- Implemente timeout: Configure timeout adequado nas requisições
Casos de uso
E-commerce
Processe pagamentos de produtos com múltiplos métodos e parcelamento.Assinaturas
Crie transações recorrentes para cobranças mensais.Marketplace
Gerencie transações entre múltiplos vendedores.Doações
Aceite doações via PIX com confirmação instantânea.Serviços
Cobre por serviços prestados com boleto ou cartão.📚 Próximos Passos
Referência da API
Veja todos os endpoints disponíveis
Links de pagamento
Crie links para receber pagamentos
Webhooks
Configure notificações em tempo real

