Pular para o conteúdo principal
Ferramenta gratuita para programadores

Sandbox Redsys para integradores

Gera o Ds_MerchantParameters do teu pedido, verifica que os campos cumprem o formato exigido pela Redsys e tem à mão os cartões do ambiente de testes. Tudo no navegador: não enviamos nada para nenhum servidor.

Parâmetros do pedido

Em euros. A Redsys espera cêntimos; a conversão fazemo-la nós.

Entre 4 e 12 caracteres. Os 4 primeiros têm de ser numéricos.

Parâmetros válidos

JSON antes de codificar

{
  "DS_MERCHANT_AMOUNT": "1000",
  "DS_MERCHANT_ORDER": "1234TEST",
  "DS_MERCHANT_MERCHANTCODE": "999008881",
  "DS_MERCHANT_CURRENCY": "978",
  "DS_MERCHANT_TRANSACTIONTYPE": "0",
  "DS_MERCHANT_TERMINAL": "1",
  "DS_MERCHANT_MERCHANTURL": "https://ejemplo.com/api/redsys/notificacion",
  "DS_MERCHANT_URLOK": "https://ejemplo.com/pago/ok",
  "DS_MERCHANT_URLKO": "https://ejemplo.com/pago/ko"
}

Ds_MerchantParameters

eyJEU19NRVJDSEFOVF9BTU9VTlQiOiIxMDAwIiwiRFNfTUVSQ0hBTlRfT1JERVIiOiIxMjM0VEVTVCIsIkRTX01FUkNIQU5UX01FUkNIQU5UQ09ERSI6Ijk5OTAwODg4MSIsIkRTX01FUkNIQU5UX0NVUlJFTkNZIjoiOTc4IiwiRFNfTUVSQ0hBTlRfVFJBTlNBQ1RJT05UWVBFIjoiMCIsIkRTX01FUkNIQU5UX1RFUk1JTkFMIjoiMSIsIkRTX01FUkNIQU5UX01FUkNIQU5UVVJMIjoiaHR0cHM6Ly9lamVtcGxvLmNvbS9hcGkvcmVkc3lzL25vdGlmaWNhY2lvbiIsIkRTX01FUkNIQU5UX1VSTE9LIjoiaHR0cHM6Ly9lamVtcGxvLmNvbS9wYWdvL29rIiwiRFNfTUVSQ0hBTlRfVVJMS08iOiJodHRwczovL2VqZW1wbG8uY29tL3BhZ28va28ifQ==

A assinatura calcula-se no servidor

Esta ferramenta gera apenas Ds_MerchantParameters, que é JSON codificado em Base64 e não leva segredos. O Ds_Signature calcula-se derivando uma chave por pedido (3DES sobre o número do pedido com a sua chave de comerciante) e assinando com HMAC-SHA256. Essa chave nunca deve chegar ao navegador: se a incluir no frontend, qualquer pessoa pode assinar pagamentos em seu nome. Faça sempre esse passo no backend.

Cartões do ambiente de testes

NúmeroValidadeCVVCIP (3DS)Nota
4548 8120 4940 000412/34123123456Cartão padrão autenticado com 3DS

Como se usa

1

Preenche os dados do pedido

Montante, número do pedido, código de comerciante e terminal. A ferramenta valida o formato enquanto escreves: o número do pedido, por exemplo, tem de começar por quatro dígitos e não passar de doze caracteres.

2

Copia o Ds_MerchantParameters

É o JSON da operação codificado em Base64. Esse valor vai tal como está no formulário que envias para o TPV virtual.

3

Calcula a assinatura no teu backend

O Ds_Signature precisa da tua chave de comerciante e nunca deve ser calculado no navegador. Deriva a chave do pedido com 3DES e assina com HMAC-SHA256 a partir do teu servidor.

4

Testa com os cartões de teste

Usa o cartão do ambiente de testes contra o endpoint sis-t.redsys.es antes de mexer em produção.

Perguntas frequentes

Esta ferramenta envia os meus dados para algum lado?

Não. Todo o cálculo acontece no teu navegador. Não há pedidos a servidores nem armazenamento do que escreves.

Porque não calcula o Ds_Signature?

Porque para assinar é precisa a chave secreta do teu comércio. Se essa chave chegasse ao navegador, qualquer pessoa poderia inspecioná-la e assinar pagamentos em teu nome. A assinatura calcula-se sempre no backend.

Qual é o cartão de teste da Redsys?

O mais habitual do ambiente de teste é o 4548 8120 4940 0004, com qualquer data de validade futura, CVV 123 e código de autenticação 123456 quando o fluxo pede 3D Secure. A lista atual e completa está no portal de programadores da Redsys.

O montante vai em euros ou em cêntimos?

A Redsys espera o montante em cêntimos e sem separadores. Aqui escreve-lo em euros e a ferramenta faz a conversão ao gerar os parâmetros.

Estás a integrar pagamentos e a complicar-se?

Já integrámos Redsys, Stripe e Adyen em ecommerce e marketplaces com casuísticas difíceis: pagamentos recorrentes, split de pagamentos, reconciliação e devoluções parciais. Se ficaste preso, conta-nos.

Agende uma call gratuita →