Para aceitar pagamentos em criptomoedas no OpenCart, você precisa de três coisas: uma extensão de pagamento na sua loja, uma chave API de um gateway e um webhook que informa ao OpenCart que o dinheiro realmente chegou. Com o Payora, isso se resume a um módulo gratuito para OpenCart 2 e OpenCart 3 que cria uma fatura para o total do pedido, envia o comprador para um checkout hospedado onde ele escolhe Bitcoin, USDT, TON ou outra moeda, e muda o status do pedido para pago somente quando um callback assinado confirma o pagamento na blockchain. As moedas são depositadas diretamente em carteiras que você controla, porque o Payora apenas mantém seu material de chave pública.
Por que as lojas OpenCart buscam criptomoedas
O OpenCart geralmente é administrado por pessoas que possuem sua própria infraestrutura: sua própria hospedagem, seu próprio banco de dados, seu próprio checkout. A criptomoeda se encaixa nesse público por três razões bastante pouco românticas.
- Compradores internacionais que não podem pagar de outra forma. Um cartão emitido em um país e uma loja registrada em outro é uma questão de sorte. USDT na Tron não se importa onde nenhum de vocês mora.
- Sem estornos. Um pagamento na blockchain é confirmado e está feito. Ninguém reverte isso 90 dias depois por uma reclamação de "produtos não recebidos", que é a única razão pela qual os vendedores de bens digitais consideram isso. Abordamos essa dinâmica com mais profundidade em aceitando pagamentos sem uma conta de comerciante.
- Nenhuma conta de comerciante.Sem chamada de subscrição, sem reserva rotativa, sem mínimo mensal, sem e-mail "sua categoria é de alto risco" seis semanas depois.
Nada disso faz com que o cripto seja um substituto para os cartões. Isso o torna uma segunda via: mantenha seus métodos existentes exatamente onde estão e deixe o cripto capturar os pedidos que você estava perdendo anteriormente.
Como aceitar pagamentos em cripto no OpenCart com o módulo Payora
O módulo é uma extensão de pagamento normal do OpenCart. É gratuito, nós o publicamos nós mesmos junto com o resto dos nossos módulos CMS de fácil instalação, e configurá-lo é em quatro etapas:
- Instale a extensão em sua loja OpenCart 2 ou OpenCart 3 e ative-a como um método de pagamento.
- Cole sua chave API.Crie uma conta gratuita em Payora, gere uma chave, e insira-a nas configurações do módulo.
- Defina a URL do webhook.O módulo expõe um endpoint de callback em seu próprio domínio. Aponte seu projeto Payora para ele, para que faturas confirmadas retornem para sua loja.
- Escolha suas moedas.Ative apenas os ativos que você realmente deseja receber: BTC, USDT na Tron, TON, o que se adequar aos seus compradores. Você não precisa ativar todos os 20+.
Não há nada exótico por trás. O módulo fala a mesma API REST em JSON simples e SDK PHP de um arquivo que uma integração personalizada usaria; ele apenas conecta isso à interface de pagamento do OpenCart, para que você não precise. Se você também tiver uma loja WordPress, o Módulo WooCommerce funciona exatamente nos mesmos princípios.
Uma coisa que vale a pena entender antes de instalar: seus endereços de recebimento são derivados de um xPub, uma chave mestre pública chave. Chaves privadas nunca tocam o servidor, e os pagamentos são assinados offline. Se alguém possuísse seu host OpenCart amanhã, poderia vandalizar seu catálogo, mas não poderia mover um satoshi do que você havia recebido.
O que o comprador realmente vê
Do lado do comprador, é curto e chato, que é o objetivo.
- Eles escolhem Pagar com cripto no checkout e confirme o pedido. O OpenCart cria o pedido em um estado pendente.
- Eles aterrissam na finalização de pagamento hospedada, que mostra o total em fiat, digamos 120 EUR, e uma lista de moedas.
- Eles escolhem uma. TON, por exemplo. A página mostra um valor exato em TON, um endereço, um código QR e uma contagem regressiva.
- Eles pagam de sua carteira. A página rastreia a transação e aguarda a finalização daquela moeda.
- Payora dispara o webhook assinado na sua loja, o módulo marca o pedido como pago, e o comprador é redirecionado para sua página de sucesso.
Se você quiser ver a finalização de pagamento antes de instalar qualquer coisa, a demonstração ao vivo é a coisa real.
A pergunta sobre o status do pedido
Quando você aceita pagamentos em criptomoedas no OpenCart, é aqui que as integrações ficam confusas, então merece sua própria seção. O OpenCart tem uma lista configurável de status de pedidos, e você precisa decidir qual significa "o dinheiro está aqui".
O mapeamento que funciona na prática:
| O que aconteceu | O que o pedido deveria ser |
|---|---|
| Comprador enviado para o checkout, nada pago ainda | Um status de pendente / aguardando pagamento |
| Pagamento visto na blockchain, ainda não final | Ainda pendente, não cumprir |
| Webhook assinado diz que foi pago | Seu status de processamento / pago. Este é o gatilho |
| Janela da fatura expirada, nada chegou | Expirado ou falhou, ou deixe pendente e cancele manualmente |
Escolha o status pago deliberadamente. Se for um status que libera um produto para download ou dispara um e-mail automático, deve ser aquele que apenas o webhook pode definir. Não reutilize um status que sua equipe também define manualmente para transferências bancárias, ou você perderá a capacidade de distinguir os dois quando auditar.
Nunca marque um pedido como pago no redirecionamento do navegador
Quando o comprador voltar para sua página de sucesso, esse redirecionamento é um pedido de um navegador. Os navegadores são fechados. As conexões caem em um trem. E uma URL de sucesso pode ser digitada manualmente por alguém que nunca pagou um centavo. Se sua loja marcar pedidos como pagos na URL de retorno, você criou um botão de produtos gratuitos.
O webhook assinado é a fonte da verdade. É um POST de servidor para servidor que carrega uma assinatura HMAC-SHA256 sobre a carga, um timestamp tão antigo que capturas não podem ser reproduzidas, e uma chave de idempotência para que uma entrega reprocessada não cumpra o pedido duas vezes. Verifique a assinatura, verifique a janela de timestamp, dedupe na chave de idempotência e só então mude o status. O redirecionamento existe para mostrar ao comprador uma página amigável, nada mais. Se um comprador fechar a aba no momento em que paga, o webhook ainda chega e o pedido ainda é concluído.
Precificação quando o preço muda
Você não precifica seu catálogo em Bitcoin. Você deixa o OpenCart exatamente como está, 120 EUR permanece 120 EUR, e a fatura é criada em fiat. No checkout, a Payora converte para a moeda que o comprador escolheu e bloqueia esse valor para a janela da fatura. Se o BTC se mover 3% enquanto eles tiram o telefone do bolso, o valor cotado ainda é o valor.
Subpagamento e sobrepagamento são julgados com base nesse valor bloqueado em vez de um ticker ao vivo, que é o que mantém a decisão de pagamento inequívoca. O que a Payora não faz, e o que nenhum gateway honesto faz, é protegê-lo do que a moeda valerá amanhã. Se você quer certeza em fiat, escolha stablecoins. USDT e USDC estão disponíveis em todas as redes que as suportam, e para a maioria das lojas OpenCart, USDT na Tron é o padrão pragmático.
As trocas honestas
Três delas, e você deve conhecer todas as três antes de aceitar pagamentos em cripto no OpenCart em produção.
- Sem estornos corta para os dois lados.Ninguém pode reaver um pagamento de você, e você também não pode reaver um. Um reembolso é um pagamento manual para o endereço do cliente: uma transação real que você assina, não um botão que desfaz a história. Decida sua política de reembolso antes do seu primeiro pedido, não durante sua primeira disputa.
- As taxas de rede variam muito.O remetente os paga, mas eles ainda moldam o comportamento. Uma taxa de Bitcoin de 2 USD em um pedido de 15 USD é um checkout que seu comprador abandona. Habilitar uma rede barata é a solução; discutir com a física não é.
- Uma cadeia lenta significa um status pago mais lento.A finalização no Bitcoin leva minutos, não milissegundos. Se você vende bens digitais que os compradores esperam instantaneamente, comece com redes rápidas e deixe o BTC ser a opção para as pessoas que o querem.
Sobre o custo: aceitar é 0%. As taxas se aplicam apenas quando você move dinheiro para fora — 1,5% em pagamentos, transferências e retiradas no plano Gratuito (0,75% no Pro, 0,5% no Business), além da taxa da rede da moeda (retirada mínima de 50 USD) — além da taxa da rede on-chain, que o remetente sempre paga. A divisão completa está em preços.
Se você administra uma loja OpenCart e tem afastado silenciosamente compradores cujos cartões não funcionam com você, isso é um trabalho de uma tarde.Crie uma conta gratuita, instale o módulo, aponte o webhook para sua loja e habilite uma moeda para começar.
Comments