
Antes de colocar cripto em uma loja, em um sistema de faturamento ou em um bot, você quer ver o fluxo inteiro funcionando: a fatura é criada, o cliente escolhe uma moeda, o pagamento é confirmado e o seu sistema marca o pedido como pago. Na SnapEX Pay dá para fazer tudo isso sem enviar uma única moeda.
O que é uma fatura de teste
Uma fatura de teste é uma fatura comum da SnapEX Pay com environment igual a test. Ela passa pelos mesmos status e envia os mesmos webhooks que uma fatura real, com data.environment igual a "test" em todos os eventos. Ela nunca altera o seu saldo real.
Não existem chaves de API separadas para testes: você usa a mesma chave e muda só um campo na requisição.
Crie uma fatura de teste pela API
Adicione "environment": "test" à requisição que cria a fatura:
curl -sS -X POST https://pay.snapex.pro/api/v1/merchant/invoices \
-H "Authorization: Bearer <your API key>" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-H "Idempotency-Key: order-15-test" \
-d '{
"amount_usd": "15.00",
"environment": "test",
"external_id": "order-15"
}'
A chave precisa do escopo invoices.write. A resposta traz o link de pagamento, exatamente como em uma fatura real.
Ou crie a fatura no painel do comerciante
No painel, abra “Faturas” e mude o “Modo” para “Teste”. As faturas criadas ali são de teste, e a lista mostra só as faturas de teste, então elas nunca se misturam com os pagamentos reais.
Pague a fatura
Abra o link de pagamento. A página mostra o selo Teste. Escolha qualquer moeda e rede: a página mostra um endereço de teste (não um endereço real) e, cerca de 10 segundos depois, o pagamento se confirma sozinho. Não é preciso enviar nada.
O que conferir do seu lado
- Entrega do webhook. O seu endpoint recebe
invoice.paidcomdata.environment = "test". Confira se a assinatura HMAC é validada e se uma nova entrega com o mesmoWebhook-Idnão marca o pedido como pago duas vezes. - Status do pedido. O pedido no seu sistema só passa a pago com
invoice.paid. - Teste e produção separados. Garanta que o seu código ignore os eventos de teste depois que você entrar em produção, ou que mantenha os pedidos de teste à parte.
Modo de teste nos módulos prontos
Os módulos para WHMCS, BILLmanager, WooCommerce, CS-Cart, FOSSBilling, Paymenter e Remnawave têm um modo de teste que cria faturas de teste. Com ele ativado, no WHMCS só os administradores logados veem o botão de pagamento, e no WooCommerce só os gerentes da loja veem a forma de pagamento; no BILLmanager e no CS-Cart você restringe a forma de pagamento de teste a um cliente ou grupo de usuários de teste. Faça um pedido, pague na página da SnapEX Pay, confira se o pedido passou a pago e depois desative o modo de teste. Os guias de instalação em pay.snapex.pro descrevem esse passo para cada módulo.
Depois, passe para a produção
Remova "environment": "test" (ou desative o modo de teste no módulo) e as próximas faturas já serão reais. Pagamentos de teste nunca são aplicados a pedidos reais.
Referência completa da API: documentação da API da SnapEX Pay.