Simular pagamentos
Pagar em sandbox
Confirma o pagamento de uma cobrança do sandbox sem dinheiro de verdade. A ValidaPay envia ao seu webhook o mesmo evento de PIX recebido que um pagamento real dispararia, então o seu fluxo de baixa é exercitado ponta a ponta.
Case de uso:
Como desenvolvedor integrando a API, quero marcar uma cobrança do sandbox como paga, para testar meu webhook de confirmação sem transferir dinheiro.
Informe no path o chargeId devolvido na criação da cobrança. A resposta é imediata e traz status: PROCESSING — a confirmação chega pelo webhook; consulte a cobrança depois para vê-la como PAID.
Disponível apenas em contas de sandbox: em produção a chamada é recusada com 400 NOT_SANDBOX_ACCOUNT. Cobrança já paga responde 200 com a mensagem "Cobranca ja foi paga" e cobrança inexistente, 404 CHARGE_NOT_FOUND.
Cartão de crédito não passa por esta rota. No sandbox o resultado da cobrança no cartão é decidido pelo número enviado:
Cartões de teste (sandbox): em conta de sandbox nenhuma cobrança chega ao adquirente — o número do cartão é que define o resultado:
4111111111111111— pagamento aprovado4000000000000002— recusado pela operadora (card_declined)4000000000000004— saldo insuficiente (insufficient_funds)4000000000000006— cartão expirado (expired_card)4000000000000008— CVV inválido (invalid_cvv)4000000000000010— suspeita de fraude (fraud_suspected)
Qualquer outro número de 16 dígitos é aprovado. CVV, validade e nome do titular podem ser quaisquer valores válidos. Em produção o número não muda nada: quem decide é o emissor do cartão.
/v1/wallet/pay/:chargeIdhttps://api.validapay.com.brhttps://sandbox.validapay.com.brAuthorizations
Authorization
string · header · required
Cabeçalho de autenticação Bearer no formato Bearer {{token}} onde {{token}} é o seu token OAuth2.
Escopos requeridos
Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| chargeId | string | Required | Identificador retornado no ato da geraçao da cobrança |
const url = 'https://sandbox.validapay.com.br/v1/wallet/pay/:chargeId';
const options = {
method: 'POST',
headers: {
'Authorization': 'Bearer {{token}}'
},
};
fetch(url, options)
.then(res => res.json())
.then(json => console.log(json))
.catch(err => console.error(err));