Leo Amarante Posted January 10 Share Posted January 10 Olá Pessoal, Alguém sabe se existe ou pode indicar módulo addon ou hook para definir, remover ou adicionar forma de pagamento de acordo com o valor da fatura. Ex; Faturas abaixo de 20,00 não deve ficar disponível boleto, apenas pix etc; 1 Quote Link to comment Share on other sites More sharing options...
brunow Posted January 11 Share Posted January 11 Veja se esse hook criado pelo ChatGPT pode funcionar <?php use WHMCS\Payment\PaymentGateway; use WHMCS\Database\Capsule; add_hook('ClientAreaPage', 1, function($vars) { $invoice_id = $_GET['invoiceid'] ?? null; if ($invoice_id) { // Recuperar o valor da fatura $invoice = Capsule::table('tblinvoices')->where('id', $invoice_id)->first(); if ($invoice) { $total = $invoice->total; $available_gateways = PaymentGateway::getAvailableGateways(); // Se o total for menor que 20, remover o boleto da lista de gateways if ($total < 20) { unset($available_gateways['boleto']); // 'boleto' é o identificador do método de pagamento } // Aqui você pode personalizar a lógica para outros gateways conforme necessário // Exemplo: Adicionar lógica para mostrar ou ocultar Pix ou outros métodos } } }); 2. Explicação do Código: add_hook('ClientAreaPage', 1, ...): Este hook é executado ao carregar a página do cliente. Você pode mudar para outro hook dependendo da sua necessidade (exemplo: InvoicePaid ou InvoiceCreation). $invoice_id: Obtém o ID da fatura a partir da URL. $invoice->total: Recupera o valor total da fatura. PaymentGateway::getAvailableGateways(): Recupera todos os métodos de pagamento disponíveis no WHMCS. unset($available_gateways['boleto']): Remove o método de pagamento boleto (substitua 'boleto' pelo identificador correto do método de pagamento, caso seja outro). 3. Verifique os Identificadores de Métodos de Pagamento: O WHMCS usa identificadores específicos para os gateways de pagamento, como 'bacs' para transferência bancária, 'paypal' para PayPal, etc. Você pode verificar os identificadores exatos desses gateways diretamente na tabela tblpaymentgateways ou pela interface administrativa do WHMCS. 4. Outros Métodos de Personalização: Se você precisar de uma solução mais robusta ou visual, você pode procurar por módulos específicos que implementem restrições de pagamento condicional no WHMCS, como o Payment Gateway Restrictions. Esses módulos geralmente fornecem interfaces gráficas para você definir as regras sem a necessidade de codificação. 0 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.