Voltar

VibeFox PayMongo for OpenCart — Ajuda

Requisitos

OpenCart: 3.0.x (testado na 3.0.5.0) ou 4.0.2 e superior (testado na 4.1.0.3).

PHP: 8.0 ou superior.

Moeda: peso filipino (PHP). O PayMongo só aparece na finalização de compra quando o cliente paga em PHP e o total é de pelo menos ₱100.00. Adicione a moeda em System > Localisation > Currencies se a sua loja ainda não a tiver. Se a moeda padrão da sua loja não for PHP, a página de configurações avisa, e os clientes precisam mudar para PHP para ver o PayMongo.

Conta PayMongo: você precisa das chaves de API secretas da sua conta PayMongo e de um webhook para cada modo (consulte Configuração). Somente as chaves secretas (sk_test_..., sk_live_...) e os segredos de assinatura dos webhooks (whsk_...) são usados. As chaves públicas não são necessárias, porque a página de pagamento é hospedada pelo PayMongo. Os métodos de pagamento que você oferecer precisam estar ativados na sua conta PayMongo.

Chave de licença VibeFox: comprada em vibefox.net. Uma chave funciona em um domínio.

Instalação

O download é um único arquivo zip com os pacotes para as duas versões do OpenCart. Descompacte-o no seu computador. Ele contém README.txt, o pacote do OpenCart 3 wcp_paymongo_payment_gateway-oc3-(version).ocmod.zip e o pacote do OpenCart 4 wcp_paymongo_payment_gateway.ocmod.zip. Instale somente o pacote da sua versão do OpenCart. A chave de licença é a mesma para as duas versões.

OpenCart 3

1. No painel administrativo, acesse Extensions > Installer, clique em Upload e escolha o arquivo wcp_paymongo_payment_gateway-oc3-(version).ocmod.zip. A extensão não tem modificações OCMOD, então Extensions > Modifications não precisa ser atualizado. Em vez do instalador, você pode copiar o conteúdo da pasta upload deste pacote para a pasta raiz da sua loja.

2. Acesse Extensions > Extensions e escolha o tipo Payments. Localize VibeFox PayMongo Payment Gateway e clique em Install (o botão verde +).

3. Clique em Edit (o botão com o lápis) para abrir a página de configurações. Digite sua chave de licença VibeFox em License key, no bloco de licença no topo da página, e clique em Activate (consulte Chave de licença).

4. Cole suas chaves secretas do PayMongo, crie os webhooks no PayMongo e cole os segredos de assinatura deles (consulte Configuração).

5. Selecione os métodos de pagamento, ative Enable/Disable e clique em Save. Teste um pagamento com Test mode ativado e depois desative-o.

OpenCart 4

1. No painel administrativo, acesse Extensions > Installer, clique em Upload e escolha o arquivo wcp_paymongo_payment_gateway.ocmod.zip. Não renomeie o arquivo: o OpenCart 4 obtém o código da extensão a partir do nome do arquivo, e um pacote renomeado não funciona.

2. O pacote aparece na lista de extensões instaladas na mesma página. Clique em Install (o botão verde +) ao lado dele.

3. Acesse Extensions > Extensions e escolha o tipo Payments. Localize VibeFox PayMongo Payment Gateway, clique em Install (o botão verde +) e depois em Edit (o botão com o lápis).

4. Digite a chave de licença, as chaves do PayMongo, os webhooks e os métodos de pagamento como nos passos 3 a 5 do OpenCart 3. A página de configurações e seus campos são os mesmos nas duas versões. Só a URL do webhook é diferente (consulte Webhook).

Uma nova instalação começa com o método de pagamento desativado e o modo de teste ativado.

Configuração

Todas as configurações estão na página da extensão: Extensions > Extensions > Payments > VibeFox PayMongo Payment Gateway > Edit. As seções aparecem à esquerda; o botão Save abaixo da lista salva a página inteira. Acima das configurações, a página avisa quando a moeda padrão da loja não é PHP, quando o modo atual não tem chave secreta (nesse caso o PayMongo não aparece na finalização de compra) ou não tem segredo de webhook (nesse caso os pagamentos só são confirmados quando o cliente volta à sua loja), e mostra Test mode is on: no real payments are made. enquanto o modo de teste estiver ativado.

Ao salvar, Title não pode estar vazio (até 128 caracteres), Sort Order precisa ser um número inteiro (números negativos são permitidos), Total precisa ser um número igual ou maior que 0, e a zona geográfica e os status de pedido selecionados precisam existir; caso contrário, nada é salvo e a página indica o campo. Uma chave com prefixo incorreto não é salva, mas os demais campos são (consulte Chaves de API).

PayMongo

Enable/Disable: Enable PayMongo ativa ou desativa o método de pagamento. Padrão: desativado.

Title: o nome do método de pagamento que o cliente vê na finalização de compra. É também o nome do método de pagamento salvo no pedido. Padrão: PayMongo (Card, GCash, GrabPay, Maya). Obrigatório, até 128 caracteres.

Description: o texto mostrado ao cliente na etapa Confirm Order, acima do botão de confirmação. Padrão: You will be redirected to PayMongo to pay securely with your card, GCash, GrabPay or Maya.

Payment methods: os métodos oferecidos na página de finalização de compra do PayMongo. Selecione apenas os métodos ativados na sua conta PayMongo; caso contrário, o PayMongo recusa a finalização. Se nenhum for selecionado, são usados os padrões. Padrão: Cards, GCash, GrabPay e Maya.

Cards (Visa, Mastercard): pagamentos com cartão; o 3-D Secure é tratado pelo PayMongo.
GCash, GrabPay, Maya, ShopeePay: carteiras digitais.
QR Ph: pagamento por código QR.
BillEase, Atome: compre agora, pague depois.
Direct online banking (BPI, UnionBank): pagamento a partir de uma conta bancária.

Sort Order: a posição do PayMongo entre os métodos de pagamento na finalização de compra. Deixe em branco ou digite um número inteiro.

Geo Zone: oferece o PayMongo somente para endereços de pagamento na zona geográfica selecionada. Padrão: All zones. As zonas geográficas são configuradas em System > Localisation > Geo Zones.

Total: o total da finalização de compra, na moeda padrão da loja, que o pedido precisa atingir antes de o PayMongo ser oferecido, além do mínimo do PayMongo de ₱100.00. Deixe em branco para não ter um mínimo adicional.

Chaves de API

Copie as chaves secretas em PayMongo Dashboard > Developers > API keys (há links para a seção ali). As chaves públicas não são necessárias. Cada chave precisa começar com o prefixo esperado. Um valor com prefixo incorreto, por exemplo uma chave de produção em um campo de teste, não é salvo: a página mostra que o campo deve começar com o prefixo e The previous value was kept.

Test mode: Enable test mode (no real payments). Os novos pagamentos usam as chaves de teste. Os pagamentos feitos antes mantêm o modo em que foram feitos, então as consultas de status e os reembolsos usam a chave correspondente. Padrão: ativado. Desative para receber pagamentos reais. Enquanto estiver ativado, o cliente vê Test mode: no real payment will be made. na etapa Confirm Order.

Test secret key: a chave secreta do modo de teste. Começa com sk_test_.

Test webhook secret: o segredo de assinatura do webhook do modo de teste. Começa com whsk_.

Live secret key: a chave secreta do modo de produção. Começa com sk_live_.

Live webhook secret: o segredo de assinatura do webhook do modo de produção. Começa com whsk_.

As chaves e os segredos salvos nunca são exibidos novamente. O campo fica vazio e mostra Saved — leave empty to keep it. Digite um valor novo somente se quiser alterá-lo. Para remover um valor salvo, marque Clear the saved value on save abaixo do campo e clique em Save.

Webhook

O webhook informa à sua loja que um pagamento foi feito, mesmo quando o cliente fecha o navegador depois de pagar. Crie um webhook no PayMongo Dashboard (ou pela API do PayMongo) para cada modo, teste e produção, com a URL mostrada em Webhook URL nesta seção. No OpenCart 3 ela tem este formato: https://your-store/index.php?route=extension/payment/wcp_paymongo_payment_gateway/webhook, no OpenCart 4: https://your-store/index.php?route=extension/wcp_paymongo_payment_gateway/payment/wcp_paymongo_payment_gateway.webhook, e é montada a partir do endereço da vitrine da sua instalação do OpenCart. Copie a URL exatamente como as configurações a mostram.

Selecione estes eventos (eles também estão listados nesta seção):

checkout_session.payment.paid: o cliente pagou na página de finalização de compra do PayMongo.
payment.paid: um pagamento foi quitado.
payment.failed: uma tentativa de pagamento falhou.

Copie o segredo de assinatura (whsk_...) de cada webhook em Test webhook secret ou Live webhook secret. Webhooks sem assinatura válida são rejeitados. A assinatura é verificada com o segredo do próprio modo, e o modo do evento precisa corresponder a ele, de modo que um webhook de teste nunca confirma um pagamento real. Cada evento é verificado novamente pela API do PayMongo com a chave secreta do modo do pagamento antes de qualquer pedido ser alterado. Eventos de pagamentos que não foram iniciados nesta loja são ignorados. Sem o webhook, um pedido só é confirmado quando o cliente volta à loja depois de pagar.

Pedidos

O OpenCart cria o pedido na etapa Confirm Order sem status (um pedido ausente). Ele recebe um status somente depois que o PayMongo confirma o pagamento. O OpenCart não tem o status On hold: por padrão, o status de aguardando e o de retenção são ambos Pendente, e a aba do PayMongo e as observações do pedido os distinguem. Você pode criar seus próprios status em System > Localisation > Order Statuses e selecioná-los aqui. Cada campo abaixo lista os seus status de pedido do OpenCart.

Order status after payment: o status definido após um pagamento bem-sucedido. Padrão: Processando. Complete é adequado para produtos virtuais ou para download que não precisam de envio.

Awaiting PayMongo payment: o cliente terminou na página do PayMongo, mas o pagamento ainda está em processamento (por exemplo, transferência bancária online). O webhook ou a próxima verificação conclui o pedido. Padrão: Pendente.

PayMongo payment on hold: uma divergência de valor ou de moeda, um pagamento de teste em uma loja ativa, ou um pagamento que chegou depois de o pedido ter sido cancelado. Uma observação explica o motivo. Padrão: Pendente.

Failed status: um pagamento aguardando confirmação falhou depois (payment.failed). Uma tentativa com falha em um pedido sem status o deixa sem status, e o cliente pode pagar de novo. Padrão: Falhou.

Cancelled status: o status que você dá a um pedido cancelado. Um pagamento que chegar depois coloca o pedido em retenção, em vez de concluí-lo. Padrão: Cancelado.

Refunded status: definido quando o pagamento é totalmente reembolsado pela aba do pedido. Padrão: Reembolsado.

Avançado

Debug log: registra as chamadas à API do PayMongo e os eventos de webhook em paymongo_p_debug.log.php, na pasta de logs do OpenCart (storage/logs). O arquivo não pode ser aberto pela web. Erros e avisos são sempre registrados, mesmo com a chave desativada. Chaves e dados de clientes nunca são registrados. Padrão: desativado.

Log: mostra o tamanho e as entradas mais recentes do log. Clique em Clear log para esvaziá-lo.

Delete data on uninstall: quando ativado, desinstalar a extensão exclui as configurações do gateway e o log. Os IDs do PayMongo guardados para pedidos e reembolsos são sempre mantidos, porque são necessários para reembolsos e contabilidade. Padrão: desativado.

Importar / Exportar

Export: Download JSON salva as configurações em um arquivo JSON. Chaves secretas não são exportadas.

Import: cole um JSON exportado anteriormente e clique em Import para restaurar as configurações. As chaves secretas salvas são mantidas.

Finalização de compra

Na etapa Payment Method, o cliente escolhe o método de pagamento (por padrão, PayMongo (Card, GCash, GrabPay, Maya)). Na etapa Confirm Order, o cliente vê a sua descrição e a observação After you confirm the order you will be redirected to PayMongo to complete the payment. O OpenCart cria o pedido nesta etapa, ainda sem status. No OpenCart 4, o cliente escolhe o método de pagamento com o botão Choose do bloco do método de pagamento, na janela Payment method options, e clica em Confirm Order na parte inferior da página de finalização de compra.

Quando o cliente clica em Confirm Order, a extensão cria uma sessão de checkout do PayMongo (Checkout Session) pelo total do pedido em PHP, com uma linha Order # e o número do pedido, e envia o cliente à página de pagamento do PayMongo. O nome, o e-mail, o telefone e o endereço de cobrança do cliente são repassados ao PayMongo. Lá, o cliente escolhe um dos métodos selecionados e paga. Uma observação no pedido registra a sessão de checkout do PayMongo.

Depois de pagar, o cliente volta à sua loja. O pedido só é marcado como pago depois que o PayMongo confirma: a extensão consulta a API do PayMongo sobre o pagamento quando o cliente retorna e quando o webhook chega. O pedido então recebe o seu status da forma padrão do OpenCart, com os e-mails habituais do pedido e a atualização do estoque, e o cliente vê a página de sucesso do pedido do OpenCart com Your PayMongo payment has been received. Se o PayMongo ainda estiver processando o pagamento quando o cliente voltar, o pedido recebe o status de aguardando e a página mostra PayMongo is still processing your payment. Your order will be updated as soon as PayMongo confirms it — please do not pay again. Para um pedido em retenção, ela mostra Your payment was received and is being reviewed. We will update your order shortly. Se o PayMongo não puder ser acessado quando o cliente voltar, uma página Payment confirmation diz Your payment is being confirmed by PayMongo. You will receive an e-mail as soon as it is confirmed — please do not pay again. com um botão Check again; o webhook define o status do pedido assim que chegar. Quando um pedido passa do status de aguardando para pago ou para o status de erro de pagamento, o cliente recebe o e-mail padrão do OpenCart sobre a mudança de status.

Se o cliente cancelar na página do PayMongo ou não concluir o pagamento, ele volta à finalização de compra com You cancelled the PayMongo payment. You can try again or choose another payment method. ou Your PayMongo payment was not completed. You can try again or choose another payment method. O carrinho é mantido. No OpenCart 4, essas mensagens são exibidas acima da página de finalização de compra. Uma nova tentativa (o OpenCart 3 cria um pedido novo sempre que a etapa Confirm Order é exibida; o OpenCart 4 atualiza o pedido da finalização) verifica primeiro a anterior: se ela tiver sido paga nesse meio-tempo, o pagamento é confirmado sem um novo; caso contrário, o link de pagamento anterior do PayMongo expira, de modo que o carrinho não pode ser pago duas vezes. Enquanto o pagamento anterior ainda estiver em processamento, o cliente vê Your previous PayMongo payment for this order is still being processed. Please wait a few minutes before trying again. Se outro pedido do mesmo carrinho já estiver pago ou aguardando pagamento, o cliente é levado à página de sucesso. Uma alteração do carrinho, inclusive uma nova quantidade, conta como um carrinho novo que precisa de um pagamento próprio.

O OpenCart 4 mantém o pedido na finalização de compra até que a página de sucesso seja exibida. Se esse pedido foi fechado nesse meio-tempo (por exemplo, você o cancelou), ou se foi pago para um carrinho diferente, o cliente volta à finalização com a mensagem Your previous order is already closed. Please confirm the order again: the cart will be paid with a new order. O próximo Confirm Order paga um pedido novo. Um pedido pago nunca é mostrado como pago para um carrinho diferente.

Se o PayMongo não conseguir iniciar o pagamento, o cliente permanece na etapa Confirm Order com uma breve mensagem acima do botão, por exemplo The payment could not be started. Please try again or choose another payment method. ou PayMongo could not be reached. Please try again in a moment. O motivo técnico é gravado no log.

O webhook também funciona enquanto a loja estiver em modo de manutenção, porque o OpenCart deixa passar as requisições das extensões de pagamento (no OpenCart 4 a extensão adiciona para isso uma ação de inicialização própria, que também deixa passar o retorno do cliente do PayMongo).

A extensão aceita pagamentos únicos na página do PayMongo. Não há campos de cartão na sua própria página de finalização de compra, nem cartões salvos, nem assinaturas ou pagamentos recorrentes, nem parcelamentos, nem autorização e captura separadas.

Pedidos e reembolsos

Status de pedido

Sem status (pedido ausente): o cliente foi enviado ao PayMongo e não pagou, ou o PayMongo ainda não confirmou o pagamento. Em Sales > Orders, esses pedidos aparecem somente com o filtro Order Status definido como Missing Orders.

Status do pedido após o pagamento (padrão Processando): o pagamento foi confirmado. Uma observação mostra o pagamento do PayMongo, o valor, o método, o modo e como ele foi confirmado (webhook, retorno ou nova tentativa de pagamento).

Pagamento do PayMongo aguardando (padrão Pendente): o cliente voltou enquanto o PayMongo ainda processava o pagamento. O pedido passa ao status de pago quando o PayMongo confirma.

Pagamento do PayMongo em retenção (padrão Pendente): o valor ou a moeda pagos diferem do total do pedido; ou um pagamento foi feito no modo de teste enquanto a loja está no modo de produção, então nenhum dinheiro foi recebido; ou o pagamento chegou depois de o pedido ter sido cancelado. A observação explica isso. Confira o pedido e processe-o ou reembolse o pagamento.

Status de falha (padrão Falhou): um webhook payment.failed assinado informou que a última tentativa de pagamento de um pedido aguardando falhou. A observação mostra o código e a mensagem de falha do PayMongo. Se o mesmo pagamento for bem-sucedido depois, o pedido passa ao status de pago.

Status de reembolsado (padrão Reembolsado): o pagamento foi totalmente reembolsado pela extensão.

Se chegar um segundo pagamento para um pedido que já está pago, ou para outro pedido de um carrinho já pago, o pedido pago não é alterado. Uma observação pede que você reembolse o pagamento duplicado no PayMongo Dashboard. Um pedido que foi pago e depois cancelado ou reembolsado nunca é reaberto.

As observações são entradas do History do pedido que o cliente não vê.

Aba VibeFox PayMongo Payment Gateway

Em Sales > Orders, abra um pedido pago com o PayMongo. Na parte inferior da página do pedido, ao lado de History e Additional, a aba VibeFox PayMongo Payment Gateway mostra o PayMongo payment, o PayMongo payment intent, o PayMongo checkout, o PayMongo mode com a etiqueta Test mode para pagamentos de teste, o Status, os valores Paid / refunded, o formulário de reembolso, o histórico de reembolsos e as Notes do pedido. A aba é exibida para usuários que têm acesso à extensão.

Reembolsos

Na aba VibeFox PayMongo Payment Gateway, informe o Amount (o valor ainda não reembolsado é preenchido), opcionalmente um Reason (optional), e clique em Refund via PayMongo. Confirme a pergunta Refund this amount through PayMongo? This cannot be undone. São aceitos reembolsos totais e parciais, com no máximo duas casas decimais. Você precisa do direito de modificar a extensão (definido em System > Users > User Groups). Os reembolsos são limitados ao valor que o PayMongo realmente cobrou, então, após uma divergência de valor, você pode reembolsar até o que o cliente pagou, e não o total do pedido. O reembolso é enviado com a chave secreta do modo em que o pagamento foi feito (teste ou produção), então essa chave precisa estar configurada. Se o PayMongo não aceitar o reembolso, a aba mostra o erro e nenhum reembolso é registrado. Um reembolso bem-sucedido é incluído no histórico de reembolsos e nas observações, com o ID e o status do reembolso no PayMongo. Um reembolso total define o pedido para o Refunded status sem notificar o cliente e sem devolver produtos ao estoque, como uma alteração manual de status. Um reembolso parcial não altera o status.

As devoluções de produtos em Sales > Returns não devolvem dinheiro pelo PayMongo. Reembolsos feitos no PayMongo Dashboard não são informados ao OpenCart. Faça o reembolso pela aba do pedido ou atualize o pedido manualmente.

Chave de licença

A extensão funciona com uma chave de licença VibeFox obtida em vibefox.net. O bloco de licença License — VibeFox PayMongo Payment Gateway é o primeiro bloco de Extensions > Extensions > Payments > VibeFox PayMongo Payment Gateway > Edit, acima das configurações. Digite 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: opencart-payment-paymongo e o link Manage licenses and domains in your account, que abre a sua conta em vibefox.net. Somente usuários administradores com a permissão Modify para a extensão podem alterar a chave. Os textos do bloco seguem o idioma do painel administrativo (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 com uma data. Depois que o endereço da loja mudar, ou depois que você liberar uma vaga de domínio na sua conta, clique em Check now. Se o servidor de licenças não puder ser acessado, a extensão continua funcionando com o último status conhecido.

Uma chave funciona em um domínio: o endereço da loja nas configurações do OpenCart. Remover a chave da loja não libera a vaga do domínio. Libere a vaga na sua conta em vibefox.net.

Sem uma chave ativa, o PayMongo não é mostrado aos clientes na finalização de compra. Se um pagamento for iniciado mesmo assim, o cliente vê This payment method is not available. Please choose another one. Um usuário administrador conectado ao painel administrativo no mesmo navegador ainda vê o método de pagamento na loja, marcado com (unlicensed — visible to admins only), para que você possa configurar e testar a extensão antes de comprar uma chave. No OpenCart 4 essa prévia não está disponível: a loja não enxerga o login do administrador, então, sem uma chave ativa, o método de pagamento fica oculto para todos. Depois de abrir a página Edit uma vez, um lembrete aparece no Dashboard do painel administrativo. Feche-o com × para ocultá-lo por 7 dias. Os pedidos existentes não são afetados: os pagamentos já iniciados continuam sendo confirmados e os reembolsos funcionam.

Quando uma licença expira, a extensão continua funcionando, mas atualizações e suporte precisam de renovação. O status é verificado novamente automaticamente quando você abre o Dashboard do painel administrativo ou a página Edit: uma vez por dia nos primeiros 14 dias após a chave ser informada, depois uma vez por semana. Não é preciso nenhum cron job. Desinstalar a extensão sempre remove a chave de licença e o status da licença.

Solução de problemas

O PayMongo não aparece na finalização de compra: verifique se a licença está ativa, se Enable/Disable está ativado, se o modo atual tem uma chave secreta (Test secret key no modo de teste, Live secret key no modo de produção), se o cliente paga em PHP e se o total é de pelo menos ₱100.00. Verifique também se o endereço de pagamento está na Geo Zone selecionada e se o pedido atinge o Total definido nas configurações.

O pagamento foi feito, mas o pedido continua sem status: o webhook não está funcionando e o cliente não voltou à loja. No PayMongo Dashboard, verifique se existe um webhook no modo que você usa, se a URL dele é exatamente a mostrada em Webhook URL e se os três eventos estão selecionados. Verifique se o segredo de assinatura dele está no campo correspondente (Test webhook secret ou Live webhook secret).

O webhook responde Invalid signature: o segredo de assinatura desse modo está ausente ou pertence a outro webhook. Cole o segredo de assinatura do webhook no campo do seu modo.

O webhook responde Mode mismatch: um evento de teste foi assinado como produção, ou o contrário. Verifique se cada webhook pertence ao modo certo.

O webhook responde Temporary error: o pagamento não pôde ser verificado pela API do PayMongo, por exemplo porque a chave secreta do modo do pagamento está ausente. O PayMongo repete o webhook automaticamente.

O webhook responde Busy, retry: o pedido estava sendo confirmado por outra requisição no mesmo momento, ou o status do pedido não pôde ser definido. O PayMongo repete o webhook automaticamente. O motivo está no Log.

O webhook responde Ignored: o evento pertence a um pagamento que não foi iniciado nesta loja, ou a outro modo. Nada é alterado.

A URL do webhook mostra Method not allowed no navegador: isso é normal. A URL aceita apenas requisições do PayMongo.

O valor não foi salvo: uma chave foi colada no campo errado. As chaves secretas começam com sk_test_ ou sk_live_, e os segredos de webhook com whsk_.

O cliente vê um erro depois de Confirm Order: veja o campo Log na página da extensão. Uma chave secreta incorreta gera a mensagem de que o método de pagamento está temporariamente indisponível. Um método de pagamento que não está ativado na sua conta PayMongo faz o PayMongo recusar a finalização; remova-o de Payment methods. This payment method is not available. Please reload the checkout page. significa que a sessão de checkout não corresponde mais ao pedido, ou que o método de pagamento foi desativado nesse meio-tempo.

Pagamentos de teste em uma loja ativa: um pagamento de teste que chega enquanto a loja está no modo de produção coloca o pedido no status de retenção, com uma observação informando que nenhum dinheiro foi recebido. Pagamentos reais são sempre reconhecidos, mesmo depois de voltar ao modo de teste, e são reembolsados com a chave de produção.

O pedido está no status de retenção depois do pagamento: leia as observações na aba VibeFox PayMongo Payment Gateway (consulte Status de pedido) e então processe o pedido ou reembolse o pagamento.

Não há formulário de reembolso na aba: o pagamento ainda não está confirmado, foi totalmente reembolsado, ou o seu grupo de usuários não tem direito de modificar a extensão.

O reembolso falha com uma mensagem sobre o modo: o pagamento foi feito no modo de teste ou de produção, e a chave secreta desse modo não está definida. Digite-a e tente novamente.

Para desenvolvedores: antes de a sessão de checkout ser criada, a extensão dispara o evento do OpenCart paymongo_p_checkout_session_data com os dados da sessão e o pedido.

Desinstalação

Acesse Extensions > Extensions, escolha o tipo Payments e clique em Uninstall (o botão vermelho −) ao lado de VibeFox PayMongo Payment Gateway. A chave de licença e o status da licença desta extensão são sempre removidos. O OpenCart sempre remove as configurações próprias da extensão: Enable/Disable, Sort Order, Geo Zone, Total e os status de pedido da seção Orders, que voltam aos padrões em uma reinstalação. O evento do OpenCart da extensão também é removido (no OpenCart 4, os eventos dela e a ação de inicialização que deixa passar o webhook e o retorno do cliente em modo de manutenção). Se Delete data on uninstall estiver ativado, as demais configurações do gateway (título, descrição, métodos de pagamento, modo de teste, chaves, segredos de webhook, registro de log) e o log são excluídos. Se estiver desativado, elas são mantidas para uma reinstalação futura. Os IDs do PayMongo dos pedidos e dos reembolsos são sempre mantidos, então pedidos pagos antes podem ser reembolsados mesmo depois de uma reinstalação. Os pedidos existentes mantêm suas observações de pagamento.

No OpenCart 4, para remover também os arquivos da extensão, acesse Extensions > Installer após a desinstalação, clique em Uninstall (o botão laranja −) ao lado de VibeFox PayMongo Payment Gateway na lista de extensões instaladas e depois em Delete (o botão vermelho com a lixeira) para remover o pacote enviado.

PayMongo é uma marca registrada de seu respectivo titular. Esta extensão não é afiliada nem endossada pelo PayMongo.