Fórum OpenCart Brasil

Por um e-commerce livre, confiável e profissional

Suporte para extensões de Formas de Pagamento
#62093
Manoel Vidal escreveu:Olá,

Para o PagSeguro se você estiver utilizando a versão 1.0.5.2 da Visie os códigos estão em catalog/controller/payment/pagseguro.php

Localize:
Código: Selecionar todos
            foreach ($cart as $item) {
                $produtos[] = array(
                    'id'         => $item['product_id'],
                    'descricao'  => $item['name'],
                    'quantidade' => $item['quantity'],
                    'valor'      => $item['total'] / $item['quantity'],
                    'frete'      => 0,
                );
            }
E substitua por:
Código: Selecionar todos
        foreach ($cart as $item) {
           $unitario        = $item['total'] / $item['quantity'];
           $percentual    = ($unitario * 5) / 100;
           $totalunitario = $unitario + $percentual;
           $produtos[] = array(
                'id'              => $item['product_id'],
                'descricao'   => $item['name'],
                'quantidade' => $item['quantity'],
                'valor'          => $totalunitario,
                'frete'          => 0,
            );
        }
Para o Paypal Standard, os códigos estão em catalog/controller/payment/pp_standard.php

Localize:
Código: Selecionar todos
			foreach ($this->cart->getProducts() as $product) {
				$option_data = array();
	
				foreach ($product['option'] as $option) {
					$option_data[] = array(
						'name'  => $option['name'],
						'value' => $option['option_value']
					);
				}
				
				$this->data['products'][] = array(
					'name'     => $product['name'],
					'model'    => $product['model'],
					'price'    => $this->currency->format($product['price'], $currency, false, false),
					'quantity' => $product['quantity'],
					'option'   => $option_data,
					'weight'   => $product['weight']
				);
			}
E substitua por:
Código: Selecionar todos
			foreach ($this->cart->getProducts() as $product) {
				$option_data = array();
	
				foreach ($product['option'] as $option) {
					$option_data[] = array(
						'name'  => $option['name'],
						'value' => $option['option_value']
					);
				}
				
           $percentual = ($product['price'] * 5) / 100;
           $unitario = $product['price'] + $percentual;
                                
				$this->data['products'][] = array(
					'name'     => $product['name'],
					'model'    => $product['model'],
					'price'    => $this->currency->format($unitario, $currency, false, false),
					'quantity' => $product['quantity'],
					'option'   => $option_data,
					'weight'   => $product['weight']
				);
			}
O que você faz nestas mudanças é acrescentar 5% em cima do valor de cada produto, veja se resolve.

Espero ter ajudado :D

Olá, você poderia por favor reformular esse código para o opencart 1.5.2.1???

Gente preciso de ajuda urgente. Na migraç&a[…]

Caro @reds , muito obrigado pela resposta.

PHP 8+ incompatibilidade

Toda tradução para a versão 3[…]

Ola @alex3257 Se você precisa apenas ver […]