wyzecash é o SDK oficial da WyzeCash para Node.js 20+, Bun e Deno. Ele fala com a mesma API da documentação, só que com tipos, listas que passam de página sozinhas, novas tentativas seguras, conferência dos webhooks e o WebSocket prontos.
Sem dependências
Usa só o
fetch e o crypto que já vêm no Node, no Bun e no Deno.Tipos em português
Todo campo e toda resposta têm tipo e descrição. O editor mostra ao passar o mouse.
Seguro com dinheiro
O que tira dinheiro nunca é repetido sozinho.
Instalar
Começar
1
Crie a chave de API
No painel, em Integrações e API › Chaves de API, crie uma chave
bk_live_… só com as permissões que o seu sistema usa (ex.: /payments/create e /payments/get).2
Guarde a chave no ambiente
.env
WYZECASH_API_KEY.3
Crie a primeira cobrança
4
Receba o aviso de pago
Pelo webhook (seu servidor tem endereço HTTPS) ou pelo tempo real (não tem). Libere o pedido só no
payment.paid.Não existe ambiente de testes: todo pedido é de verdade. Para testar, faça uma cobrança pequena e pague com o seu banco.
Configurar o cliente
Cada chamada também aceita opções próprias no último parâmetro:
idempotencyKey, timeout, maxRetries e signal (um AbortSignal para cancelar).
Recursos
Os métodos seguem as rotas da API. Cada um precisa da permissão daquela rota na chave.Exemplos
- Pix
- Cartão
- Cripto
- Cliente paga a tarifa
- Saque
- Estorno
expiresAt).Listas
await traz a primeira página. for await passa por todas, buscando a próxima só quando precisa.
Idempotency-Key
Criar cobrança, saque, estorno e os envios das subcontas pedem aIdempotency-Key. Passe o código do pedido no seu sistema: repetir a mesma chave devolve o mesmo resultado, sem fazer de novo.
Erros e novas tentativas
Todo erro da API vira umWyzeCashError:
O SDK tenta de novo sozinho só quando é seguro:
Webhooks
Cada aviso chega com o cabeçalhoX-Bukio-Signature. Confira com o corpo cru, do jeito que chegou:
- Express
- Fastify
- Next.js, Bun ou Deno
O segredo
whsec_… fica em Integrações e API › Webhooks. Veja Validando a assinatura e a lista de eventos.
Tempo real (WebSocket)
Os mesmos eventos dos webhooks, na hora, sem precisar de um endereço HTTPS seu. Bom para bots e workers.- Caiu? Conecta de novo sozinho, esperando cada vez mais (até 30 s), e pede o que perdeu desde o último evento (até 24 horas).
- Chave apagada, inválida ou sem permissão (fechamento
1008) não reconecta. - No Node 20, que não tem WebSocket, passe o do pacote
ws:wyzecash.realtime({ WebSocket }), comimport WebSocket from "ws".
TypeScript
Os tipos já vêm no pacote. Parâmetros e respostas têm nomes comoPaymentsCreateParams e PaymentsCreateResponse:
Onde roda
Outras linguagens
Também há SDK oficial para Python (pip install wyzecash) e PHP (composer require wyzecash/wyzecash), com as mesmas regras de novas tentativas e de idempotência.
O SDK é opcional. Qualquer linguagem que faça requisição HTTP integra: veja os exemplos em cURL, Python e PHP em Sua primeira cobrança e a Referência da API.