Boa tarde.
Preciso de um profissional que faça a adequação na integração do módulo da empresa konduto com o módulo de pagamento da Master Shop, atualmente a plataforma aceita até 3 cartões para pagamento, porem é necessário alterar o módulo para que funcione corretamente a Konduto, a empresa já passou todas as coordenadas.
As informações de pagamento estão disponíveis para este módulo através da função getAdditionalInformation('chave') no objeto que contém os dados de pagamento da compra/cotação.
Por exemplo:
$compra->getPayment()->getAdditionalInformation('cc_1_numero'); //recupera o número (encriptado) do primeiro cartão utilizado.
Chaves para a função getAdditionalInformation():
cc_qtd => indica quantidade de cartões usadas na compra, sempre 1 na versão padrão, até 3 na versão multi-cartões
substituir o X nos índices a seguir, de 1 até o valor de cc_qtd:
cc_X_bandeira => bandeira do cartão, ex: visa, elo, mastercard, visaelectron, etc
cc_X_numero => número do cartão encriptado pelo Magento. Usar Mage::helper("core")->decrypt($numero)
cc_X_salvar => bool, indica se foi solicitado para salvar dados do cartão (se a operadora suportar)
cc_X_nome => nome do portador do cartão
cc_X_documento => cpf/cnpj preenchido no formulário do cartão
cc_X_expiracao_mes => mês de expiração do cartão (1-2 dígitos)
cc_X_expiracao_ano => ano de expiracao (4 dígitos)
cc_X_parcelas => array serializado com dados de parcelamento, usar função unserialize() para obter este valor. ['Parcelas'] => número de parcelas, ['valor_parcelas'], ['total'] total com juros ou descontos, ['total_original']
cc_X_autorizacao => identificador principal da transação
cc_X_cv => comprovante de vendas (NSU)
cc_X_id_txn => id da transação na operadora
Por exemplo, se estiver usando o módulo no modo de pagamento com apenas um cartão, alterar o arquivo conforme abaixo (>> é o conteúdo original atual, << o texto como deve ficar após substituído):
Arquivo: magento/app/code/community/Konduto/Score/Helper/
Order.php::144
public function getPaymentDetails($order, $ret=array()) {
$payment = $order->getPayment();
>>$cc = $payment->getCcNumber();
<<$cc = $payment->getAdditionalInformation('cc_1_numero');
$ccNumber = is_numeric($cc) ? $cc : Mage::helper('core')->decrypt($cc);
$cc_six = substr($ccNumber, 0, 6);
$ret["type"] = "credit";
$ret["include"] = false;
>>$expmo = sprintf("%02d", $payment->getCcExpMonth());
<<$expmo = $payment->getAdditionalInformation('cc_1_expiracao_mes');
>>$expyear = $payment->getCcExpYear();
<<$expyear = $payment->getAdditionalInformation('cc_1_expiracao_ano');
$expyear = (strlen($expyear) == 2 ? "20" .
$Expyear : $expyear);
if (($expmo) && ($expyear)) {
$ret["expiration_date"] = $expmo . $expyear;
}
esse exemplo é para 1 cartão, para mais de um cartão precisará ajustar/programar o módulo Konduto para enviar um pedido para cada cartão, usando essas instruções (ex: cc_1_numero para o primeiro cartão, cc_2_numero para o segundo cartão, etc)
Delivery term: February 06, 2021