Referência da API
Subconjunto da API pública (address, card, checkout.payment-links, coupons, customer, finance, product, receivables, subscription, transaction, variant, wallet, webhook, withdrawal). API REST para pagamentos, clientes, assinaturas, carteiras, recebíveis, webhooks e integrações; autenticação via cabeçalho `selectkey`.
Escopo: esta especificação inclui apenas recursos relacionados a: address, card, checkout.payment-links, coupons, customer, finance, product, receivables, subscription, transaction, variant, wallet, webhook, withdrawal.
Introdução
A API Selectwin segue boas práticas REST: você chama os endpoints com os verbos HTTP corretos, envia e recebe JSON e interpreta o resultado pelos códigos de status. Isso vale para qualquer linguagem ou stack.
Oferecemos chaves de sandbox e produção. Em ambiente de testes você valida fluxos sem impacto financeiro real (por exemplo, sem cobrança real em cartão), antes de ir para produção.
Recursos principais
Gestão de clientes
- Customers — CRUD de clientes.
- Addresses — Endereços vinculados a clientes e contextos compatíveis.
Financeiro e pagamentos
- Transactions — Criação e gestão de transações (vários meios de pagamento).
- Subscriptions — Assinaturas, ciclos e cobrança recorrente.
- Wallets — Carteiras para saques e dados bancários.
- Finance — Consultas de saldo e visão financeira da conta.
- Receivables — Listagem e acompanhamento de recebíveis (ex.:
/v1/receivables). - Withdrawals — Saques.
- Cards — Cadastro e gestão segura de cartões.
Notificações
- Webhooks — Notificações assíncronas: configuração em Endpoints e histórico/reenvio em Events.
Autenticação
Todas as requisições autenticadas devem enviar a chave da API no cabeçalho selectkey (o nome HTTP é case-insensitive; em documentação costuma aparecer como SelectKey). Obtenha as chaves no painel Selectwin.
O prefixo da chave indica o ambiente (por exemplo, chaves de teste vs. produção) e o comportamento associado.
curl -sS -X GET "https://api.selectwin.io/v1/transactions" \
-H "selectkey: sl_live_..." \
-H "Content-Type: application/json" \
-H "Accept: application/json"Códigos de erro e HTTP
A API valida entradas quando aplicável. Em geral: 2xx sucesso; 4xx erro do cliente (validação, permissão, recurso inexistente); 5xx erro no servidor.
Códigos frequentes
| Código | Significado | Quando ocorre |
|---|---|---|
| 200 | OK | Sucesso com corpo de resposta. |
| 201 | Created | Recurso criado. |
| 400 | Bad Request | Requisição malformada ou rejeitada antes da regra de negócio. |
| 401 | Unauthorized | Falha de autenticação (chave inválida/ausente). |
| 403 | Forbidden | Autenticado, mas sem permissão ou bloqueio (IP, escopo, etc.). |
| 404 | Not Found | Recurso não encontrado. |
| 412 | Precondition Failed | Pré-condições não atendidas. |
| 422 | Unprocessable Entity | Payload compreendido, mas dados inválidos para processar. |
| 429 | Too Many Requests | Limite de taxa excedido. |
| 500 | Internal Server Error | Erro inesperado no servidor. |
| 503 | Service Unavailable | Indisponibilidade temporária (ex.: dependência externa). |
Estrutura típica de erro
Respostas de erro costumam incluir metadados como categoria, mensagem e, quando faz sentido, detalhes por campo.
| Campo | Tipo | Descrição |
|---|---|---|
status | string | Texto do status HTTP |
statusCode | number | Código numérico HTTP |
category | string | Categoria (ex.: validation, authentication) |
message | string | Mensagem principal |
details | string | Detalhes adicionais (opcional) |
params | array | Erros por campo/caminho (opcional) |
suggestedActions | array | Sugestões de correção (opcional) |
docUrl | string | Link para documentação (opcional) |
supportUrls | array | Links de suporte (opcional) |
Paginação
Listagens costumam aceitar sort, offset e limit (nomes e limites exatos podem variar por recurso; veja cada operação no schema).
Formato típico de resposta paginada
O envelope abaixo é representativo: o conteúdo de cada item em data depende do recurso.
{
"offset": 0,
"limit": 10,
"total": 6,
"page": {
"offset": { "first": 0, "prev": 0, "next": 0, "last": 0 },
"current": 1,
"total": 1
},
"hasMore": false,
"data": [
{
"id": "res_abc123",
"name": "Nome do recurso",
"updatedAt": "2026-01-26T10:15:00.000Z",
"createdAt": "2026-07-15T08:45:00.000Z"
}
]
}Segurança (TLS e PCI)
Libere saída HTTPS para o host api.selectwin.io no seu firewall/proxy quando aplicável.
- TLS: 1.2 e 1.3 (recomendado 1.3).
- Primitivas: SHA-256 / SHA-384 / SHA-512 conforme negociação TLS.
- Cipher suites: preferir suites com criptografia ≥ 128 bits.
Certificados são renovados periodicamente; integre pelo FQDN do endpoint. Não recomendamos certificate pinning pela chave pública.
Polling
Consultas repetidas em curto intervalo para “adivinhar” mudança de status não são o modelo recomendado e podem ser limitadas.
Use webhooks para mudanças de status e eventos. Configure em /v1/webhooks/endpoints e acompanhe em /v1/webhooks/events, conforme esta especificação.
Recursos da API
Addresses
Gerencie endereços vinculados a clientes e demais contextos compatíveis: criar, listar, consultar, atualizar e excluir registros.
Cards
Cadastre e mantenha cartões tokenizados para cobrança e gestão de meios de pagamento dos seus clientes.
Checkouts - Payment Links
Crie e gerencie links de pagamento compartilháveis para cobrança sem loja completa.
Checkouts - Sessions
Crie e acompanhe sessões de checkout (carrinho, etapas e recuperação de abandono quando disponível).
Coupons
Crie e administre cupons de desconto para checkouts e campanhas compatíveis com a plataforma.
Customers
Com este recurso você pode criar, listar, consultar, atualizar e remover clientes, além de buscas e filtros para integrar CRM, cobrança e suporte.
Finance
Consultas financeiras da conta (ex.: saldos e visões agregadas conforme os endpoints disponíveis).
Products
Gerencie o catálogo de produtos: criar, listar, consultar, atualizar e excluir itens, com filtros e listagens paginadas.
Products - Variants
Gerencie variantes de produto (preços, SKU, atributos): criação e listagem por produto, leitura e exclusão por variante, e listagem global quando disponível.
Receivables
Consulte recebíveis (valores a receber, liquidações e acompanhamento financeiro) com filtros e paginação.
Subscriptions
Gerencie assinaturas recorrentes: criação, alteração de plano, pausa, cancelamento e sub-recursos (ciclos, itens, splits) quando expostos.
Transactions
Crie e acompanhe transações de pagamento (cartão, Pix, boleto, etc.): captura, estorno, disputa e exportação quando disponível.
Wallets
Administre carteiras e dados bancários para recebimentos e saques, incluindo listagens e atualizações permitidas.
Webhooks
Visão geral de webhooks: na seção paths, configure endpoints e eventos; em Webhooks (abaixo) está o modelo do payload que enviamos para a sua URL (eventDelivery).
Webhooks - Dispatches
Consulte o histórico de entregas de webhooks (tentativas, status e diagnóstico).
Webhooks - Endpoints
Configure URLs de webhook, eventos inscritos e cabeçalhos — a plataforma envia POSTs para o seu endpoint quando ocorrerem eventos.
Webhooks - Events
Liste e gerencie eventos de webhook (reenvio, consulta e acompanhamento de notificações).
Withdrawals
Solicite e acompanhe saques da conta para contas bancárias cadastradas.