Entender o modo de cálculo da assinatura

Um certificado é necessário para comunicar com a plataforma de pagamento.

Dois certificados estão disponíveis no seu Back Office a partir do menu Configuração > Loja > aba Certificados.
  • um para o modo de teste
  • um para o modo de produção.

O valor do certificado permite calcular a assinatura numérica.

Para calcular a assinatura:
  • Os campos de tipo numérico não devem ter 0 a esquerda do dígito mais significativo
  • Os campos de tipo bool tomam os valores 1 (true) ou 0 (false)
  • Os campos de tipo string não preenchidos serão vazios
  • Os campos de tipo dateTime devem ser expressos no formato AAAAMMDD.
    Exemplo: para o 2013-03-14T23:00:00+00:00, o valor a ser usado para o cálculo de assinatura é: 20130314

  1. Respeite a ordem dos campos:
    • Criação de uma ordem de pagamento:
    shopId, reference, ctxMode, amount, currency, locale,message, recipients, subject, validationMode, validity, sendMail, expandedData
    • Modificação de uma ordem de pagamento:
    shopId, offerId, reference, ctxMode, amount, currency, locale,message, recipients, subject, validationMode, validity, sendMail, expandedData
  2. Garanta que todos os campos tenham o código UTF-8.
  3. Separe os valores dos campos com o símbolo "+".
  4. Concatene o resultado com o certificado de teste ou de produção, separando-os com o símbolo "+".
  5. Aplicar o algoritmo de hash SHA1 no string.

Em modo TESTE, se o cálculo de assinatura for errado, o código de erro retornado é "BAD_SIGNATURE" e o string de dígitos usado para a assinatura do lado servidor será então retornado no campo extendedCode.