VibeFox CorvusPay for PrestaShop — Ajuda
Requisitos
PrestaShop: 8.0 a 9.x.
PHP: 8.0 ou superior. O módulo se recusa a ser instalado em versões anteriores do PHP.
Moeda: AUD, BAM, BHD, CAD, CHF, CZK, DKK, EUR, GBP, HRK, HUF, ISK, MKD, NOK, PLN, RON, RSD, RUB, SEK ou USD. Em qualquer outra moeda do carrinho, o método de pagamento fica oculto na finalização de compra. Os valores são enviados com 2 casas decimais; um total com mais casas decimais (por exemplo, em uma loja com preços em BHD de 3 casas decimais) é recusado, em vez de arredondado.
Conta na CorvusPay: você precisa de uma conta de comerciante na CorvusPay. A CorvusPay emite um Store ID e uma Secret Key para cada loja, separadamente para a loja de teste e a de produção; eles são exibidos no CorvusPay Merchant Center. A Success URL e a Cancel URL do módulo devem ser cadastradas ali (veja Configuração).
Chave de licença VibeFox: comprada em vibefox.net. Uma chave funciona em um único domínio.
Instalação
1. No back office, vá em Modules > Module Manager e clique em Upload a module. Escolha o arquivo ZIP do módulo.
2. Quando o envio terminar, clique em Configure ou, depois, encontre VibeFox CorvusPay Gateway na lista de módulos e clique em Configure.
3. Informe a sua chave de licença VibeFox em License key no bloco de licença no topo da página Configure e clique em Activate (veja Chave de licença).
4. Informe o Store ID e a Secret Key da sua loja de teste na CorvusPay (e os da loja de produção, para pagamentos reais). Copie a Success URL e a Cancel URL exibidas na página Configure para o CorvusPay Merchant Center, tanto para a loja de teste quanto para a de produção.
5. Ative Enable/Disable e clique em Save. Faça um pedido de teste e, depois, desative Test Mode para entrar em produção.
Na instalação, o módulo cria o status de pedido CorvusPay payment on hold. O PrestaShop vincula um novo módulo de pagamento às moedas, aos grupos de clientes e aos países ativos naquele momento. Você pode alterar isso em Payment > Preferences; um país que você ativar depois precisa ser marcado ali para o módulo.
Configuração
Todas as configurações ficam na página do módulo: Modules > Module Manager > VibeFox CorvusPay Gateway > Configure. Cada seção tem o seu próprio botão Save, que salva a página inteira. Acima dos campos, a página mostra O modo de teste está ativado. Os pagamentos vão para o ambiente de teste da CorvusPay — nenhum dinheiro real é cobrado. enquanto o modo de teste estiver ativado; avisa quando o gateway está habilitado, mas o Store ID ou a Secret Key do modo atual está vazio (nesse caso ele fica oculto na finalização de compra até que sejam preenchidos), e quando a moeda padrão da sua loja não é suportada pela CorvusPay.
CorvusPay
Enable/Disable: Enable CorvusPay Gateway liga ou desliga o método de pagamento. Padrão: desligado.
Title: o nome do método de pagamento que o cliente vê na finalização de compra. Ele também é o nome do método de pagamento salvo no pedido. Padrão: Credit/Debit Card (CorvusPay).
Description: o texto exibido abaixo do método de pagamento na finalização de compra. Padrão: Pay securely with your credit or debit card via CorvusPay. No modo de teste, é acrescentado (Modo de teste — nenhum pagamento real é cobrado.).
Credenciais da loja
O Store ID e a Secret Key são emitidos pela CorvusPay para cada loja (teste e produção separadamente) e exibidos no CorvusPay Merchant Center.
Test Mode: usa o ambiente de teste da CorvusPay (wallet.test.corvuspay.com) e o Store ID e a Secret Key de teste. Padrão: ligado. Desligue para receber pagamentos reais em wallet.corvuspay.com.
Test Store ID: o Store ID numérico da sua loja de teste na CorvusPay.
Test Secret Key: a Secret Key da sua loja de teste na CorvusPay, usada nas assinaturas HMAC-SHA256.
Live Store ID: o Store ID numérico da sua loja de produção na CorvusPay.
Live Secret Key: a Secret Key da sua loja de produção na CorvusPay, usada nas assinaturas HMAC-SHA256.
Clear saved secrets: marque Test Secret Key ou Live Secret Key e clique em Save para removê-la.
O Store ID deve conter apenas dígitos. Se você digitar outra coisa, a página mostra … deve conter apenas dígitos — o valor anterior foi mantido. e os demais campos são salvos mesmo assim. As Secret Keys salvas nunca são exibidas novamente: o campo fica vazio e mostra Salva — deixe vazio para mantê-la. Digite um novo valor apenas se quiser alterá-la. Um pagamento é sempre verificado com a Secret Key da loja em que foi iniciado, por isso mantenha a chave de teste preenchida enquanto ainda puderem chegar pagamentos de teste.
Success URL e Cancel URL
Copie os dois endereços exibidos nesta seção para o CorvusPay Merchant Center, tanto para a loja de teste quanto para a de produção. A CorvusPay devolve o cliente a eles após o pagamento. Copie-os exatamente como a página os mostra; com URLs amigáveis, eles têm a aparência dos exemplos abaixo, possivelmente com um código de idioma como /en/.
Pagamento
Transaction Type: como o cartão é cobrado.
Payment Page Language: o idioma da página de pagamento da CorvusPay. Site language (padrão) usa o idioma atual da sua loja quando a CorvusPay o oferece; caso contrário, inglês. Você também pode escolher Hrvatski, English, Deutsch, Italiano, Srpski ou Slovenščina.
Order Status After Payment: o status do pedido após um pagamento Sale bem-sucedido. O pedido é criado diretamente nesse status.
Avançado
Logging: grava informações de depuração em logs/corvuspay_p_debug.log.php, na pasta do módulo. O arquivo não pode ser aberto pela web. Os erros são sempre registrados, mesmo quando esta opção está desligada; segredos, assinaturas e dados dos clientes nunca são registrados. Padrão: desligado.
Log: mostra o tamanho e as últimas entradas do log. Clique em Clear log para esvaziá-lo.
Delete Data: quando ligado, desinstalar o módulo remove as configurações do módulo e os arquivos de log. Pedidos, dados de transação da CorvusPay e o status do pedido são sempre mantidos. Padrão: desligado.
Finalização de compra
Na etapa de pagamento, o cliente escolhe o método de pagamento (por padrão, Credit/Debit Card (CorvusPay)) e confirma. A página seguinte mostra Redirecionando para a CorvusPay para o pagamento. Aguarde... e envia o formulário assinado para a página de pagamento da CorvusPay. Se o redirecionamento não começar, o cliente clica em Pay via CorvusPay; Back to checkout retorna à finalização de compra. São enviados o total do carrinho, a moeda, uma breve descrição (número do carrinho e nome da loja) e os dados do endereço de cobrança e o e-mail (para preencher previamente a página de pagamento). Nesse momento, ainda não existe pedido. O mesmo número de pedido da CorvusPay é reutilizado enquanto o valor, a moeda, o modo e o tipo de transação não mudarem, e a CorvusPay não aceita um segundo pagamento para ele.
Após o pagamento, a CorvusPay devolve o cliente à Success URL. O pedido só é marcado como pago depois que a CorvusPay confirma: o número do pedido da CorvusPay precisa ter sido emitido por esta loja, a assinatura precisa corresponder à Secret Key da loja em que o pagamento foi iniciado, e o valor e a moeda precisam corresponder ao carrinho. Então o pedido é criado e o cliente vê a página padrão de confirmação do pedido com Seu pagamento CorvusPay foi recebido. No caso de Authorize only, a página mostra Seu pagamento CorvusPay foi autorizado. O valor será cobrado quando a loja processar o seu pedido. e, para um pedido em espera, Seu pagamento foi recebido e está sendo analisado pela loja.
Se o pedido não puder ser criado naquele momento (por exemplo, porque outra requisição está confirmando o mesmo carrinho), o cliente vê Seu pagamento está sendo confirmado com um botão Check again, que leva à confirmação do pedido assim que o pedido existir. Se a requisição à Success URL não puder ser verificada, o cliente vê Pagamento não confirmado e Não foi possível confirmar este pagamento CorvusPay. Se o seu cartão foi cobrado, entre em contato com a loja — não pague novamente. Nada é alterado. A Success URL funciona mesmo com a loja em modo de manutenção.
Se o cliente cancelar na página da CorvusPay, ele volta à finalização de compra com o carrinho intacto e O pagamento CorvusPay foi cancelado e o pedido não foi pago. Seu carrinho continua aqui — você pode tentar novamente ou escolher outro método de pagamento.
Se o pagamento não puder ser iniciado, o cliente permanece na finalização de compra com uma breve mensagem: CorvusPay não está configurada. Escolha outro método de pagamento., A CorvusPay não aceita pagamentos em … ou Este total do pedido não pode ser pago pela CorvusPay (deve ser maior que zero e ter no máximo 2 casas decimais). Escolha outro método de pagamento.
O pedido só é confirmado quando a CorvusPay devolve o cliente à Success URL; não há notificações de servidor para servidor. Se o cliente fechar o navegador logo após pagar, nenhum pedido é criado. O módulo não oferece reembolsos, capturas nem anulações pelo PrestaShop (a API de servidor da CorvusPay exige um certificado de cliente), nem cartões salvos, assinaturas, parcelamentos ou formulário de cartão no site.
Pedidos
Status do pedido
Ainda sem pedido: o cliente foi enviado à CorvusPay e não voltou com um pagamento confirmado. Só existe o carrinho. Se o cliente pagou, mas não voltou, verifique o pagamento no CorvusPay Merchant Center e crie o pedido manualmente.
Payment accepted, Delivered ou CorvusPay payment on hold: o pagamento Sale foi confirmado. O status segue Order Status After Payment. O pagamento é registrado com o ID da transação na CorvusPay ou, se a CorvusPay não enviar um, com o número do pedido na CorvusPay, pelo qual o pagamento pode ser localizado no Merchant Center. Uma nota privada do pedido mostra o número do pedido na CorvusPay, o código de aprovação e o tipo de cartão.
CorvusPay payment on hold, authorized: Authorize only está selecionado. Capture o pagamento no CorvusPay Merchant Center e, em seguida, altere o pedido para Payment accepted.
CorvusPay payment on hold, amount/currency mismatch: o valor ou a moeda pagos não correspondem ao carrinho, por exemplo porque o carrinho foi alterado em outra aba. O pagamento é registrado com o valor efetivamente pago quando ele está na moeda do pedido. Não envie o pedido antes de verificar o pagamento no CorvusPay Merchant Center.
CorvusPay payment on hold, payment after cancel: chegou um pagamento bem-sucedido referente a uma tentativa que o cliente havia cancelado. Atenda o pedido ou reembolse o pagamento no CorvusPay Merchant Center.
Se chegar outro pagamento bem-sucedido, diferente, para um carrinho que já tem pedido, o pedido não é alterado. Uma nota pede que você verifique o CorvusPay Merchant Center e reembolse o pagamento duplicado, se necessário.
Bloco de pagamento da CorvusPay
A página do pedido mostra um bloco CorvusPay payment com o número do pedido na CorvusPay, o status da tentativa de pagamento, o tipo de transação (Sale ou Authorize only), o valor (e o valor recebido, se a CorvusPay o informou), o código de aprovação, a transação e o tipo de cartão. Pagamentos de teste são marcados com Test.
Reembolsos: reembolsos, capturas e anulações pelo PrestaShop não são suportados. Faça-os no CorvusPay Merchant Center e registre o resultado no PrestaShop manualmente.
Chave de licença
O módulo funciona com uma chave de licença VibeFox obtida em vibefox.net. O bloco de licença License — VibeFox CorvusPay Gateway é o primeiro bloco de Modules > Module Manager > VibeFox CorvusPay Gateway > Configure, acima das configurações. Informe a chave em License key e clique em Activate. Depois disso, o bloco mostra a chave mascarada, o status (por exemplo, a data até a qual a licença está ativa e o seu domínio) e os botões Check now para verificar o status novamente, Change key para informar outra chave e Remove key para remover a chave desta loja. Abaixo deles ficam a linha Product: presta-payment-corvuspay e o link Gerenciar licenças e domínios na sua conta, que abre a sua conta vibefox.net. Somente funcionários com a permissão Configure do módulo podem alterar a chave. Os textos do bloco seguem o idioma do back office (inglês e russo estão incluídos).
Se a chave não for aceita, o bloco informa o motivo, por exemplo Key not found, This key belongs to another product, Domain limit reached ou License expired on seguido de uma data. Depois que o endereço da loja mudar, ou depois de liberar uma vaga de domínio na sua conta, clique em Check now. Se o servidor de licenças não puder ser acessado, o módulo continua funcionando com o último status conhecido.
Uma chave funciona em um domínio: o domínio da loja principal, também em uma configuração multiloja. Remover a chave da loja não libera a vaga de domínio. Libere a vaga na sua conta vibefox.net.
Sem uma chave ativa, a CorvusPay não é exibida aos clientes na finalização de compra. Se, mesmo assim, um pagamento for iniciado, o cliente vê Este método de pagamento não está disponível. Escolha outro. A vitrine do PrestaShop não sabe que você está conectado ao back office, então o método de pagamento também fica oculto para você: é possível configurar o módulo antes de comprar uma chave, mas não testá-lo na finalização de compra. Um lembrete aparece em Modules > Module Manager, na aba Alerts. Os pedidos existentes não são afetados: pagamentos já iniciados continuam sendo confirmados quando o cliente retorna da CorvusPay.
Quando uma licença expira, o módulo continua funcionando, mas atualizações e suporte exigem renovação. O status é verificado novamente de forma automática enquanto você trabalha no back office: uma vez por dia nos primeiros 14 dias após a chave ser informada e, depois, uma vez por semana. Não é necessário nenhum cron job. Desinstalar ou redefinir o módulo sempre remove a chave de licença e o status da licença.
Solução de problemas
A CorvusPay não aparece na finalização de compra: verifique se a licença está ativa, se Enable/Disable está ligado, se o Store ID e a Secret Key do modo atual estão preenchidos (Test Store ID e Test Secret Key no modo de teste, Live Store ID e Live Secret Key no modo de produção) e se a moeda do carrinho é suportada pela CorvusPay. Em Payment > Preferences, verifique se o módulo está permitido para a moeda do carrinho, o país do cliente e o grupo do cliente.
O pagamento foi concluído, mas nenhum pedido foi criado: provavelmente a Success URL não foi cadastrada no CorvusPay Merchant Center, ou a Secret Key no PrestaShop não corresponde à loja. Procure INVALID signature no campo Log da página do módulo (os erros são sempre registrados). Nenhum pedido é criado também se o cliente fechou o navegador antes de voltar; nesse caso, verifique o pagamento no Merchant Center e crie o pedido manualmente.
O cliente vê Pagamento não confirmado: a requisição à Success URL foi rejeitada: faltavam campos obrigatórios, o número do pedido da CorvusPay não foi emitido por esta loja, a Secret Key dessa loja está vazia ou a assinatura não correspondeu. Nada é alterado. O log indica o motivo.
O cliente vê Seu pagamento está sendo confirmado por muito tempo: o pedido não pôde ser criado, por exemplo porque o módulo estava desativado ou o carrinho não é mais válido. O log indica o motivo; verifique o pagamento no Merchant Center.
O cliente vê Este total do pedido não pode ser pago pela CorvusPay: o total é zero ou tem mais de 2 casas decimais.
O cliente vê A CorvusPay não está configurada ou A CorvusPay não aceita pagamentos em …: falta o Store ID ou a Secret Key do modo atual, ou a moeda do carrinho não é suportada.
O pedido está em CorvusPay payment on hold: leia as notas privadas do pedido. Authorize only está selecionado, o valor ou a moeda pagos não correspondiam ao carrinho, o pagamento chegou depois que o cliente cancelou, ou Order Status After Payment está definido como em espera.
Desinstalação
Vá em Modules > Module Manager, abra o menu ao lado de VibeFox CorvusPay Gateway e escolha Uninstall. A chave de licença e o status da licença deste módulo são sempre removidos. Se Delete Data estiver ligado, as configurações do módulo e os arquivos de log são removidos. Se estiver desligado, todas as configurações são mantidas para uma reinstalação posterior. Os dados de transação da CorvusPay e o status do pedido CorvusPay payment on hold são sempre mantidos, portanto o bloco da CorvusPay dos pedidos antigos volta após uma reinstalação. Os pedidos existentes mantêm suas notas de pagamento e IDs de transação.
A CorvusPay é uma marca registrada de seu respectivo titular. Este módulo não é afiliado nem endossado pela CorvusPay.
