Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá.
Estou tentando configurar meu site para fazer vendas com cartao de credito - REDECARD Komerci
Tem 5 etapas:
1. Loja-virtual -> Redecard
A loja virtual deverá enviar os seguintes parâmetros para a Redecard, quando da chamada para a tela de captura do Komerci:
Tranquilo.
2. Redecard -> Loja-virtual 2
Transação Aprovada
Se a transação for aprovada e bem sucedida, a Redecard retornará os seguintes parâmetros para a loja-virtual, em método GET, através de sua URLBACK (previamente cadastrada ou fornecida em parâmetro):
Deu para fazer
3. Loja-Virtual -> Redecard
Caso a transação tenha sido aprovada pelo emissor, a loja-virtual deverá confirmá-la, retornando os seguintes parâmetros para o endereço:
http://ecommerce.red...l/confirma.asp:
O tráfego destes dados não deverá ocorrer através do browser do usuário ou com sua interferência, ou seja, o webserver da loja-virtual deverá comunicar-se diretamente com o ambiente da Redecard.
Pode-se, por exemplo, utilizar componentes, serviços, servlets, etc.
Este procedimento garante a segurança do tráfego dos dados entre a Redecard e a sua lojavirtual.
Quando chega aqui, minha loja envia os dados para a redecard mas nõ volta o codigo de retorno para a urlback. Esse codigo de retorno é exibido com sucesso na propria pagina da redecard e ai o script para.
Veja meu script.
Veja onde estou errando:
<?
header('Content-Type: text/html; charset=utf-8');
include ("TMySQL.php");$MySQL = new TMySQL();
$MySQL->connect($host, $db, $user, $pass);
$DATA = $_GET['DATA'];//8 Data da transação
$NUMPEDIDO = $_GET['NUMPEDIDO']; //16 Número do Pedido
$NR_CARTAO = $_GET['NR_CARTAO']; //16 Número do Cartão mascarado
$ORIGEM_BIN = $_GET['ORIGEM_BIN']; //3 Código de Nacionalidade do Emissor
$NUMAUTOR = $_GET['NUMAUTOR']; //6 Número de Autorização
$NUMCV = $_GET['NUMCV']; //9 Número do Comprovante de Venda (NSU)
$NUMAUTENT = $_GET['NUMAUTENT']; //27 Número de Autenticação
$NUMSQN = $_GET['NUMSQN']; //12 Número seqüencial único
$NUMPRG = $_GET['NUMPRG']; //1 Número correspondente ao programa de captura utilizado
///CASO DE ERROS
$CODRET = $_GET['CODRET']; //2 Código de erro
$MSGRET = $_GET['MSGRET']; //200 Mensagem de erro $consulta=$MySQL->query("select PRECO_TOTAL from pedidos_cliente where ID_PEDIDO_CLIENTE=$NUMPEDIDO");
list($PRECO_TOTAL) = mysql_fetch_array($consulta);
$url= "[http://ecommerce.redecard.com.br/pos_virtual/confirma.asp?"](http://ecommerce.redecard.com.br/pos_virtual/confirma.asp?)
."DATA=$DATA&"
."TRANSACAO=203&"
."TRANSORIG=04&"
."PARCELAS=00&"
."FILIACAO=30355141&"
."DISTRIBUIDOR=&"
."TOTAL=$PRECO_TOTAL";
."NUMPEDIDO=$NUMPEDIDO&"
."NUMAUTOR=$NUMAUTOR&"
."NUMCV=$NUMCV&"
."NUMSQN=$NUMSQN&"
."ORIGEM_BIN=$ORIGEM_BIN&"
."NUMPRG=$NUMPRG";
print "<script>document.location='$url'</script>";
}else if ( $CODRET==58 or $CODRET==63 or $CODRET==65 or $CODRET==69 or $CODRET==72 or $CODRET==77 or $CODRET==96 )
{ print $MSGRET; exit; }else if ( $CODRET >=0 and $CODRET <=49 )
{
?>
<form name="redirectform" id="redirectform" method="get" action="[https://ecommerce.redecard.com.br/pos_virtual/cupom.asp"](https://ecommerce.redecard.com.br/pos_virtual/cupom.asp) target="_self">
<input type="hidden" name="DATA" value="<?=$_GET["DATA"]?>">
<input type="hidden" name="TRANSACAO" value="201">
<input type="hidden" name="NUMAUTOR" value="<?=$_GET["NUMAUTOR"]?>">
<input type="hidden" name="NUMCV" value="<?=$_GET["NUMCV"]?>">
<input type="hidden" name="LANGUAGE" value="">
</form>
<script type="text/javascript">
function enviaform() {
document.redirectform.submit();
}
try {
enviaform();
} catch(e) {
// Mozzila...
setTimeout('enviaform()', 250);
}
</script>Carregando comentários...