Skip to main content
O 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.
Use o SDK só no servidor. A chave de API vai em todo pedido: nunca a coloque no navegador, no app ou num repositório.

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
Sem passar a chave no código, o SDK lê a variável 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

O Pix vale 30 minutos (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 a Idempotency-Key. Passe o código do pedido no seu sistema: repetir a mesma chave devolve o mesmo resultado, sem fazer de novo.
Sem a chave, o SDK cria uma por chamada: protege a nova tentativa automática, mas não protege você de chamar duas vezes. Em dinheiro saindo, passe sempre a sua.

Erros e novas tentativas

Todo erro da API vira um WyzeCashError:
O SDK tenta de novo sozinho só quando é seguro:

Webhooks

Cada aviso chega com o cabeçalho X-Bukio-Signature. Confira com o corpo cru, do jeito que chegou:
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 }), com import WebSocket from "ws".
Detalhes do protocolo, erros e limites em WebSocket.

TypeScript

Os tipos já vêm no pacote. Parâmetros e respostas têm nomes como PaymentsCreateParams 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.