Acredito que muito desenvolvedores, como eu, já sofreram na mão da RedeCard, bem nada contra sério eles, mas material técnico de 2004, para implementar uma Loja Virtual, está meio ultrapassado, mas acreditem, eu não tenho nada contra isso, o que me deixo muito, mais muito bravo, foi enviar um e-mail na sexta-feira, e não haver resposta, e ter de esperar meu cliente me dar sua senha pessoal de acesso ao sistema para então eu poder baixar o Código Verificador, que depois de alguns testes constatei que não havia necessidade para funcionamento, mas ai que está, mandei outro e-mail agora perguntando se é necessário o tal código, e não obtive resposta até agora.
Bem isso, me deixo bem, ******, e claro como estou sendo pago para fazer tal integração, não poderia deixar faltar nada, nem mesmo esse tal código verificador no sistema, aih que entra outro problema, o tal código chega a mim, em 3 formatos, .class em java, que diga de se passagem que mierda, um .exe, um .dll, seguindo ainda enviam o projeto em visual basic, e que de longe não funciona, pois ao abrir da erro de leitura, bem, puto da vida, já cansado de sofrer na mão deles, e vendo que meu servidor não iria permitir rodar o java de dentro do php, nem mesmo apelando para um exec em modo cgi.
Me vi obrigado a apartir para ignorância e usar engenharia reversa no .class, bem como sou ignorante em java, não consegui, estava puto da vida, e há essas horas, já havia digitado todas as possibilidades no google, olhado o histórico de todas as listas possivelmente de php e java, e nada, até que me surge em um fórum http://www.guj.com.br a minha salvação um pobre mortal desenvolvedor como eu, já havia sido torturado por eles e bingo, ele decompilo o class.
Com base nesse class, e um pouco de boa vontade (para ser franco foi 45 minutos) refiz o java em PHP, para qualquer mortal poder usar:
PS: não dou garantia nenhuma, é por sua conta e risco
Código java original:
import java.util.Date;
class CodVer {
public static void main(String[] args) {
Date date = new Date();
if (args.length < 3) {
System.out
.println("Numero de argumentos invalidos!nnUso:java CodVer ");
System.out
.println("n: Numero de filiacaon: Valor total da compran: IP Address do browser cliente");
} else {
for (int i = 0; i < args.length; i++) {
/* empty */
}
int numfil = 0;
try {
numfil = Integer.parseInt(args[0]);
} catch (Exception exception) {
System.out.println("Erro - Numero de filiacao invalido.");
}
int total = 0;
try {
String parteInteira = args[1]
.substring(0, args[1].indexOf('.'));
total = Integer.parseInt(parteInteira);
} catch (Exception exception) {
System.out.println("Erro - Preco invalido. Use: ####.##");
System.exit(-1);
}
int segundosAgora = date.getSeconds();
int segundosAgoraCodificados = 0;
switch (segundosAgora) {
case 0:
segundosAgoraCodificados = 11;
break;
case 1:
segundosAgoraCodificados = 17;
break;
case 2:
segundosAgoraCodificados = 21;
break;
case 3:
segundosAgoraCodificados = 31;
break;
case 4:
segundosAgoraCodificados = 56;
break;
case 5:
segundosAgoraCodificados = 34;
break;
case 6:
segundosAgoraCodificados = 42;
break;
case 7:
segundosAgoraCodificados = 3;
break;
case 8:
segundosAgoraCodificados = 18;
break;
case 9:
segundosAgoraCodificados = 13;
break;
case 10:
segundosAgoraCodificados = 12;
break;
case 11:
segundosAgoraCodificados = 18;
break;
case 12:
segundosAgoraCodificados = 22;
break;
case 13:
segundosAgoraCodificados = 32;
break;
case 14:
segundosAgoraCodificados = 57;
break;
case 15:
segundosAgoraCodificados = 35;
break;
case 16:
segundosAgoraCodificados = 43;
break;
case 17:
segundosAgoraCodificados = 4;
break;
case 18:
segundosAgoraCodificados = 19;
break;
case 19:
segundosAgoraCodificados = 14;
break;
case 20:
segundosAgoraCodificados = 9;
break;
case 21:
segundosAgoraCodificados = 20;
break;
case 22:
segundosAgoraCodificados = 23;
break;
case 23:
segundosAgoraCodificados = 33;
break;
case 24:
segundosAgoraCodificados = 58;
break;
case 25:
segundosAgoraCodificados = 36;
break;
case 26:
segundosAgoraCodificados = 44;
break;
case 27:
segundosAgoraCodificados = 5;
break;
case 28:
segundosAgoraCodificados = 24;
break;
case 29:
segundosAgoraCodificados = 15;
break;
case 30:
segundosAgoraCodificados = 62;
break;
case 31:
segundosAgoraCodificados = 25;
break;
case 32:
segundosAgoraCodificados = 34;
break;
case 33:
segundosAgoraCodificados = 59;
break;
case 34:
segundosAgoraCodificados = 37;
break;
case 35:
segundosAgoraCodificados = 45;
break;
case 36:
segundosAgoraCodificados = 6;
break;
case 37:
segundosAgoraCodificados = 25;
break;
case 38:
segundosAgoraCodificados = 16;
break;
case 39:
segundosAgoraCodificados = 27;
break;
case 40:
segundosAgoraCodificados = 63;
break;
case 41:
segundosAgoraCodificados = 26;
break;
case 42:
segundosAgoraCodificados = 35;
break;
case 43:
segundosAgoraCodificados = 60;
break;
case 44:
segundosAgoraCodificados = 38;
break;
case 45:
segundosAgoraCodificados = 46;
break;
case 46:
segundosAgoraCodificados = 7;
break;
case 47:
segundosAgoraCodificados = 26;
break;
case 48:
segundosAgoraCodificados = 17;
break;
case 49:
segundosAgoraCodificados = 28;
break;
case 50:
segundosAgoraCodificados = 14;
break;
case 51:
segundosAgoraCodificados = 36;
break;
case 52:
segundosAgoraCodificados = 2;
break;
case 53:
segundosAgoraCodificados = 39;
break;
case 54:
segundosAgoraCodificados = 47;
break;
case 55:
segundosAgoraCodificados = 8;
break;
case 56:
segundosAgoraCodificados = 29;
break;
case 57:
segundosAgoraCodificados = 22;
break;
case 58:
segundosAgoraCodificados = 55;
break;
case 59:
segundosAgoraCodificados = 33;
break;
}
segundosAgora = segundosAgoraCodificados;
String pad;
if (segundosAgora < 10)
pad = "0";
else
pad = "";
String ipremoto = args[2];
int tamIP = ipremoto.length();
int i_5_ = total + segundosAgora;
int i_6_ = segundosAgora + tamIP;
int i_7_ = segundosAgora * numfil;
String string_8_ = String.valueOf(i_7_);
System.out.print(String.valueOf(i_7_) + "" + i_5_ + "" + i_6_ + "-"
+ string_8_.length() + pad + segundosAgora);
int i_9_ = i_7_ / segundosAgora;
}
}
}
Código em PHP
function RedeCard_CodVer($n_filiacao,$total,$ip) {
/*By Renato Elias 2006 - renato.elias@gmail.com - blog.s2n.com.br**/
$data = getDate();
$segundosAgora = $data['seconds'];
$segundosAgoraCodificados = 0;
switch ($segundosAgora) {
case 0:
$segundosAgoraCodificados = 11;
break;
case 1:
$segundosAgoraCodificados = 17;
break;
case 2:
$segundosAgoraCodificados = 21;
break;
case 3:
$segundosAgoraCodificados = 31;
break;
case 4:
$segundosAgoraCodificados = 56;
break;
case 5:
$segundosAgoraCodificados = 34;
break;
case 6:
$segundosAgoraCodificados = 42;
break;
case 7:
$segundosAgoraCodificados = 3;
break;
case 8:
$segundosAgoraCodificados = 18;
break;
case 9:
$segundosAgoraCodificados = 13;
break;
case 10:
$segundosAgoraCodificados = 12;
break;
case 11:
$segundosAgoraCodificados = 18;
break;
case 12:
$segundosAgoraCodificados = 22;
break;
case 13:
$segundosAgoraCodificados = 32;
break;
case 14:
$segundosAgoraCodificados = 57;
break;
case 15:
$segundosAgoraCodificados = 35;
break;
case 16:
$segundosAgoraCodificados = 43;
break;
case 17:
$segundosAgoraCodificados = 4;
break;
case 18:
$segundosAgoraCodificados = 19;
break;
case 19:
$segundosAgoraCodificados = 14;
break;
case 20:
$segundosAgoraCodificados = 9;
break;
case 21:
$segundosAgoraCodificados = 20;
break;
case 22:
$segundosAgoraCodificados = 23;
break;
case 23:
$segundosAgoraCodificados = 33;
break;
case 24:
$segundosAgoraCodificados = 58;
break;
case 25:
$segundosAgoraCodificados = 36;
break;
case 26:
$segundosAgoraCodificados = 44;
break;
case 27:
$segundosAgoraCodificados = 5;
break;
case 28:
$segundosAgoraCodificados = 24;
break;
case 29:
$segundosAgoraCodificados = 15;
break;
case 30:
$segundosAgoraCodificados = 62;
break;
case 31:
$segundosAgoraCodificados = 25;
break;
case 32:
$segundosAgoraCodificados = 34;
break;
case 33:
$segundosAgoraCodificados = 59;
break;
case 34:
$segundosAgoraCodificados = 37;
break;
case 35:
$segundosAgoraCodificados = 45;
break;
case 36:
$segundosAgoraCodificados = 6;
break;
case 37:
$segundosAgoraCodificados = 25;
break;
case 38:
$segundosAgoraCodificados = 16;
break;
case 39:
$segundosAgoraCodificados = 27;
break;
case 40:
$segundosAgoraCodificados = 63;
break;
case 41:
$segundosAgoraCodificados = 26;
break;
case 42:
$segundosAgoraCodificados = 35;
break;
case 43:
$segundosAgoraCodificados = 60;
break;
case 44:
$segundosAgoraCodificados = 38;
break;
case 45:
$segundosAgoraCodificados = 46;
break;
case 46:
$segundosAgoraCodificados = 7;
break;
case 47:
$segundosAgoraCodificados = 26;
break;
case 48:
$segundosAgoraCodificados = 17;
break;
case 49:
$segundosAgoraCodificados = 28;
break;
case 50:
$segundosAgoraCodificados = 14;
break;
case 51:
$segundosAgoraCodificados = 36;
break;
case 52:
$segundosAgoraCodificados = 2;
break;
case 53:
$segundosAgoraCodificados = 39;
break;
case 54:
$segundosAgoraCodificados = 47;
break;
case 55:
$segundosAgoraCodificados = 8;
break;
case 56:
$segundosAgoraCodificados = 29;
break;
case 57:
$segundosAgoraCodificados = 22;
break;
case 58:
$segundosAgoraCodificados = 55;
break;
case 59:
$segundosAgoraCodificados = 33;
break;
}
$segundosAgora = $segundosAgoraCodificados;
$pad = '';
if ($segundosAgora < 10) {
$pad = "0";
} else {
$pad = "";
}
$tamIP = strlen($ip);
$total = intval($total);
$numfil = intval($n_filiacao);
$i5 = $total + $segundosAgora;
$i6 = $segundosAgora + $tamIP;
$i7 = $segundosAgora * $numfil;
$i8 = strlen($i7);
return "$i7$i5$i6-$i8$pad$segundosAgora";
}
30 Responses to “RedeCard (Komerci) vs Locaweb vs Java vs PHP”
o_0
Olá Renato. Trabalho no segmento desde 1997. Não tenho portfólio pessoal, mas trabalho nesta empresa: http://www.firecreative.com.br.
E você, trabalha onde?
No caso do MasterCard, tô precisando de ajuda: foi necessário instalar algum componente no servidor? Você tem essa documentação da MasterCard pra me arranjar? Como o cliente ainda não fechou contrato com a Redecard, não tivemos acesso à documentação e arquivos do sistema deles (komerci). Só que o prazo de entrega do site já tá correndo… pra variar.
É que o Visanet, onde consegui falar hoje, eles me informaram que tem que ser implementado em servidor Windows, pois é necessário instalar componentes que só rodam em Windows.
Olá, atualmente estou tentando levar minha própria start-up s2n, idéia, é ser totalmente free-lancer e contratar amigos para me auxilar em projetos maiores,
mastercard: eu tenho os documentos, vou lhe enviar, mas já aviso, não adiantara de nada, a não ser que você já tenha o código de afiliação, mas da para ter uma idéia do processo.
sério que só windows, acredito que não, eles tem essa mania de falar windows, pq ganham “comissão” mas vai ver é algum processo bobo como esse do código de verificação que não tem muito mistério.
O sistema que você desenvolveu para Komerci é todo em PHP? Tá funcionando bem?
Sobre a Visanet, provavelmente deve ser algo como esse class que foi descompilado mesmo.
A questão é que na Visanet eles mandam tudo pronto. E este pacote deles, tem alguns componentes que eles fizeram (dll’s e tal) que só rodam em ambiente windows.
Valeu pelo manual.
Sim, está, mas vai entrar em ambiente de produção daqui 1 mês,
visanet, huum, se for dll, vou usar um 3 elemento, envolvendo um computador para isso, em todo caso, vou pesquisar agora sobre isso, e assim que tiver alguma novidade postarei no blog.
Você tem os arquivos que a Mastercard envia junto com a documentação para me arranjar?
Aliás, quanto cobraria para me ceder o sistema Komerci em PHP que você desenvolveu?
Oi Renato.
Quero parabeniza-lo pela RedeCard_CodVer e pela iniciativa.
Muito bom.
Eu estou concluindo tbm a integracao da minha loja com a redecard e em seguida vou para o Visanet. Como minha loja tbm é em php, que tal juntarmos esforços?
Cordialmente,
Gilmar Pupo
Cara, achei que ia ter todo esse trampo de novo! kkkkkk
Eu refiz o itau.class para php também, usando um programa chamada cavaj, se precisar eu te mando!
Valeu!
Obrigado, que bom que gostou da reportagem…
Olá Renato,
Você poderia me enviar essa documentação?
Vou ter que mexer com isso em PHP também, mas to vendo que não vai ser facil!
Obrigado!
Bruno
Olá Renato, tudo bem?
Estou com problemas para implementar a solução Komerci da Redecard na empresa onde trabalho.
Todos os passos são realizados com sucesso, menos o último. A confirmação de Redecard fica retida no browser e não retorna para a minha urlback.
O “maravilhoso” suporte deles informa que preciso utilizar componentes, mas sinceramente tentei e não consegui. A minha área de PHP.
Por acaso você conseguiu implementar esta solução? Vc possui o código e pode fornecer? Será que você poderia me ajudar?
Desde já agradeço a sua atenção e fico no aguardo por uma resposta.
Alô Renato, estou procurando por documentação do Komerci e não tenho encontrada, você poderia me enviar algo? Pretendo fazer um módulo de pagamento com cartão para o oscommerce. Obrigado!
Paulo
Olá Thiago e Paulo,
Thiago, eu consegui sem maiores problemas além desse código aih que tive de desenvolver, o resto do código usei a base da loja da locaweb, ps: Aconselho você testar muito essa integração.
Paulo, a documentação do Komerci é fornecida quando se contrata ela, para oscommerce, existe um modulo da CobreBem, que faz isso mediante a pagamento, o bom é que não precisa contratar nada com a RedeCard (essa informação não é confirmada, estou falando de cabeça)
Olá Renato,
Estou tentando implementar o komerci em uma loja, mas estou tendo um unico problema, que é no URLBACK, não estou sabendo como fazer para trazer nesta pagina(URLBACK) o VALOR, FILIACAO E PARCELAS, se vc puder me ajudar nisso.
Obs: Os outros passos está correto, somente este acima que estou passando fixo e não consigo ver uma forma de obter estes dados que falo acima.
Aguardo seu retono e muito obrigado
Nivalod
oi nivaldo, você tem de salvar essas dados no seu banco de dados antes né,
assim você cria o numero do pedido e ja deixa esses dados salvo na sua tabela,
quando a urlback volta vc em o numero do pedido, e use algum cookie ou dado extra do inicio da operação para voltar a sessão da pessoa, com isso você garante a integridade do pedido, e rele o banco de dados, aih você pode saber quanto foi a operação.
. . Errmmm… Sou só eu ou todo mundo aqui tem problemas pra ler texto branco no fundo cinza? O que acontece nesse box de envio de comentários aqui? Por que essa escolha de cores? Não testado no Opera, talvez?
. . Anyway… Só queria dar uma dica: pra diminuir *muito* o tamanho do código, você poderia usar algo como…
$data = getDate();
$secsCod=Array(11, 17, 21, 31, 56, 34, 42, ……….);
$segundos=$secsCod[$data['seconds']];
/* mimimi */
. . Pra não precisar do “pad”, é só usar os valores menores que 10 como string e colocar no Array como ’01′, ’02′, ’03′…
. . Amplexos.
diego, acho que é bug do theme msm, usei aquele wordpress generator, preguiça de fazer sabe….
vou arrumar depois,
haha, quanto a sua dica, porra eu já fiz isso varias vezes e não percebi, tava tão puto com o caras, que cópia o codigo, troquei as variaves e mandei bala…
quanto ao “pad” não entedi essa lógica veio da classe da REDECARD =)
obrigado pelo puxão de orelha
Renato, parabéns pela iniciativa….!!!!
Pra mim foi muito importatante, obrigado!!
Se puder ajudá-lo em alguma coisa, estarei aqui….
Estava passando pelo mesmo problema do renato…
entao fiz a mesma coisa, só que pro ASP!
sirvam-se
function RedeCard_CodVer(n_filiacao,total,ip)
data = FormatDateTime(Now)
segundosAgora = DatePart(“S”,now)
segundosAgoraCodificados = 0
If segundosAgora = 0 then
segundosAgoraCodificados = 11
end if
If segundosAgora = 1 then
segundosAgoraCodificados = 17
end if
If segundosAgora = 2 then
segundosAgoraCodificados = 21
end if
If segundosAgora = 3 then
segundosAgoraCodificados = 31
end if
If segundosAgora = 4 then
segundosAgoraCodificados = 56
end if
If segundosAgora = 5 then
segundosAgoraCodificados = 34
end if
If segundosAgora = 6 then
segundosAgoraCodificados = 42
end if
If segundosAgora = 7 then
segundosAgoraCodificados = 3
end if
If segundosAgora = 8 then
segundosAgoraCodificados = 18
end if
If segundosAgora = 9 then
segundosAgoraCodificados = 13
end if
If segundosAgora = 10 then
segundosAgoraCodificados = 12
end if
If segundosAgora = 11 then
segundosAgoraCodificados = 18
end if
If segundosAgora = 12 then
segundosAgoraCodificados = 22
end if
If segundosAgora = 13 then
segundosAgoraCodificados = 32
end if
If segundosAgora = 14 then
segundosAgoraCodificados = 57
end if
If segundosAgora = 15 then
segundosAgoraCodificados = 35
end if
If segundosAgora = 16 then
segundosAgoraCodificados = 43
end if
If segundosAgora = 17 then
segundosAgoraCodificados = 4
end if
If segundosAgora = 18 then
segundosAgoraCodificados = 19
end if
If segundosAgora = 19 then
segundosAgoraCodificados = 14
end if
If segundosAgora = 20 then
segundosAgoraCodificados = 9
end if
If segundosAgora = 21 then
segundosAgoraCodificados = 20
end if
If segundosAgora = 22 then
segundosAgoraCodificados = 23
end if
If segundosAgora = 23 then
segundosAgoraCodificados = 33
end if
If segundosAgora = 24 then
segundosAgoraCodificados = 58
end if
If segundosAgora = 25 then
segundosAgoraCodificados = 36
end if
If segundosAgora = 26 then
segundosAgoraCodificados = 44
end if
If segundosAgora = 27 then
segundosAgoraCodificados = 5
end if
If segundosAgora = 28 then
segundosAgoraCodificados = 24
end if
If segundosAgora = 29 then
segundosAgoraCodificados = 15
end if
If segundosAgora = 30 then
segundosAgoraCodificados = 62
end if
If segundosAgora = 31 then
segundosAgoraCodificados = 25
end if
If segundosAgora = 32 then
segundosAgoraCodificados = 34
end if
If segundosAgora = 33 then
segundosAgoraCodificados = 59
end if
If segundosAgora = 34 then
segundosAgoraCodificados = 37
end if
If segundosAgora = 35 then
segundosAgoraCodificados = 45
end if
If segundosAgora = 36 then
segundosAgoraCodificados = 6
end if
If segundosAgora = 37 then
segundosAgoraCodificados = 25
end if
If segundosAgora = 38 then
segundosAgoraCodificados = 16
end if
If segundosAgora = 39 then
segundosAgoraCodificados = 27
end if
If segundosAgora = 40 then
segundosAgoraCodificados = 63
end if
If segundosAgora = 41 then
segundosAgoraCodificados = 26
end if
If segundosAgora = 42 then
segundosAgoraCodificados = 35
end if
If segundosAgora = 43 then
segundosAgoraCodificados = 60
end if
If segundosAgora = 44 then
segundosAgoraCodificados = 38
end if
If segundosAgora = 45 then
segundosAgoraCodificados = 46
end if
If segundosAgora = 46 then
segundosAgoraCodificados = 7
end if
If segundosAgora = 47 then
segundosAgoraCodificados = 26
end if
If segundosAgora = 48 then
segundosAgoraCodificados = 17
end if
If segundosAgora = 49 then
segundosAgoraCodificados = 28
end if
If segundosAgora = 50 then
segundosAgoraCodificados = 14
end if
If segundosAgora = 51 then
segundosAgoraCodificados = 36
end if
If segundosAgora = 52 then
segundosAgoraCodificados = 2
end if
If segundosAgora = 53 then
segundosAgoraCodificados = 39
end if
If segundosAgora = 54 then
segundosAgoraCodificados = 47
end if
If segundosAgora = 55 then
segundosAgoraCodificados = 8
end if
If segundosAgora = 56 then
segundosAgoraCodificados = 29
end if
If segundosAgora = 57 then
segundosAgoraCodificados = 22
end if
If segundosAgora = 58 then
segundosAgoraCodificados = 55
end if
If segundosAgora = 59 then
segundosAgoraCodificados = 33
end if
segundosAgora = segundosAgoraCodificados
pad = ”
if (segundosAgora
Amigo, tu merece um beijo na boa, não da minha boca.
Bom, diminui um pouco do código, tá aà a minha contribuição:
—–
function _RedeCard_CodVer($n_filiacao,$total,$ip) {
/*By Renato Elias 2006 – renato.elias@gmail.com – blog.s2n.com.br**/
$data = getdate();
$segundosAgora = $data['seconds'];
$_secCodificado = array(
0 => 11,
1 => 17,
2 => 21,
3 => 31,
4 => 56,
5 => 34,
6 => 42,
7 => 3,
8 => 18,
9 => 13,
10 => 12,
11 => 18,
12 => 22,
13 => 32,
14 => 57,
15 => 35,
16 => 43,
17 => 4,
18 => 19,
19 => 14,
20 => 9,
21 => 20,
22 => 23,
23 => 33,
24 => 58,
25 => 36,
26 => 44,
27 => 5,
28 => 24,
29 => 15,
30 => 62,
31 => 25,
32 => 34,
33 => 59,
34 => 37,
35 => 45,
36 => 6,
37 => 25,
38 => 16,
39 => 27,
40 => 63,
41 => 26,
42 => 35,
43 => 60,
44 => 38,
45 => 46,
46 => 7,
47 => 26,
48 => 17,
49 => 28,
50 => 14,
51 => 36,
52 => 2,
53 => 39,
54 => 47,
55 => 8,
56 => 29,
57 => 22,
58 => 55,
59 => 33
);
$segundosAgora = $_secCodificado[ $segundosAgora ];
$pad = ”;
if ($segundosAgora
Olá Renato, estou com o mesmo problema de algumas pessaos que acessaram seu blog, na integração do Komerci parei na última etapa, o retorno, código de retorno e mensagem ficam retidos no browser e não consigo tratar. Podes me ajudar de alguma forma ? Muito obrigado, parabéns, Hélcio.
Renato,
como que você fez em php para a confirmação de dados para a redecard?
Porque eu já desenvolvi em .net e nele existe componetes que geram um post, já em php eu não conheço.
pode me ajudar?
obrigado,
Bruno
Amigos, boa tarde quero propor um desafio.
tenho implantado
90% da rotina do cartao de credito American Express
60% da rotina dos cartoes de credito Redecard (Mastercard, Diners (sendo que sao a mesma coisa mudando somente a bandeira))
10% da rotina do cartao de credito Visanet (essa vai ser fogo pra terminar)
0% dos outros bancos (Bradescofacil, Itaushopline)
Sendo que as rotinas que implemento sao em php, e suporte 0, pq ligar no suporte e nao ligar é a mesma coisa. Como a procura é grande por esses projetos, decidi montar uma proposta e um desafio.
Ajuda na implementação das formas de pagamento, em troca de comutação das informações. Resumindo, se todo mundo ta querendo, tem gente que sabe desenvolver, eu nao sei muito mais o pouco que sei, vou ajudar quem precisa, se quem sabe me ajudar, vamos formar uma corrente grande, assim todo mundo fica feliz pq vai ter o codigo de todas as operadoras.
Quem tiver disposto a enfrentar me envie um email. tenho todos manuais, e vou colocar esse post em outros foruns que tenho conta.
Aguardo contato
Marlon Souza
Sei que a discusão é antiga, mas achei interessante, e vou postar a minha versão do código em C#. Ai vai:
public string GeraCod(string filiacao,string total,string ip) {
DateTime data = DateTime.Now;
string strData = data.ToString();
string strSegundo = “”;
int intTotal = Convert.ToInt32(total.Substring(0, total.IndexOf(“.”)));
int segundosAgora = data.Second;
int segundosAgoraCodificados = 0;
int[] arrSegCod=new int[60] {11,17,21,31,56,34,42,3,18,13,12,18,22,32,57,35,43,4,19,14,9,20,23,33,58,36,44,5,24,15,62,25,34,59,37,45,6,25,16,27,63,26,35,60,38,46,7,26,17,28,14,36,2,39,47,8,29,22,55,33};
segundosAgoraCodificados=arrSegCod[segundosAgora];
strSegundo = string.Format(“{0:00}”,segundosAgoraCodificados);
int lenIp = ip.Length;
int i5 = segundosAgoraCodificados + intTotal;
int i6 = segundosAgoraCodificados + lenIp;
Int64 i7 = segundosAgoraCodificados * Convert.ToInt32(filiacao);
int i8 = i7.ToString().Length;
return i7.ToString() + i5.ToString() + i6.ToString() + “-” + i8.ToString() + strSegundo;
}
Alguem poderia ceder o sistema da master card para lojas em PHP que não seja especificadamente para OsCommerce?
Ola amigo, estou precisando de ajuda para implementar o komerci numa loja virtuastore que é em asp. me ajuda por favor?
Otima função! Já estava me descabelando com esse CodVer! Abraço! Quando terminar a integração Master ai vou partir pra porcaria da VisaNet!
Olá Renato, te achei no Google e meu caso é praticamente igual ao seu. Estamos na faze final de um projeto de e-commerce, meu cliente já fechou com a Komerci da RedeCard e com a Cielo. Após receber o e-mail do cliente com os dados das empresas, liguei na Cielo para buscar uma solução, pois a integração deles só funciona com ASP, o atendente/técnico foi muito marrento, não quis me passar nem uma informação, finalizei a ligação e liguei novamente me passando pelo cliente e consegui mais respostas, porém todas inutil. O atendente teve a capacidade de me desmoralizar informando que o serviço deveria ser feito com a LOCAWEB. Bem, será que tem uma venda CASADA? Eu questionei o mesmo informando que eu era a provedora e não tinha interesse em trabalhar com a LOCAWEB e o mesmo disse que não poderia fazer nada. (Muito foda, fiquei mais puto ainda)… Bem com a Kormeci até agora está sendo + tranquilo, contei um pouco da minha história para você ver o drama que estou passando… Tenho um projeto para entragar mas não consigo por várias barreiras que as empresas estão impondo. Bem, gostaria muito de uma ajuda sua! Já vasculhei tudo… Após várias orações e tempo no Deus Google, a única pessoa que encontrei foi você… Poderia me enviar esse material de integração para o Kormeci, caso de certo, certamente irei dar uma contribuição por isso. Agradeço se poder me ajudar.
Bom dia, Renato
Primeiramente Parabéns pelo blog e tópico.
Possuo o código de filiação e demais dados.
Mas estou com dificuldades nos demais processos de comunicação.
Redecard -> Loja Virtual
Loja-Virtual -> Redecard
Se tiver a documentação e demais código do php e poder me enviar fico grato.
Obrigado, a 1ª vez é sempre complicado…rsrs
Olá Marcus e outros usuários que precisam de ajuda nessa merda de integração da Redecard/Komerci. Os manuais de integração podem ser pegos por esse link ‘http://www.komerciredecard.com.br/como_instalar.html’, ali tem todas as opções que eles fornecem.
Bizarramente, quando a redecard te dá acesso ao portal deles (www.redecard.com.br), na seção de manuais diversos > Vendas pela internet e televendas, você tem o famoso arquivo CodVer.class/CodVer.exe e mais alguns do pacote. Outro manual que eles fornecem é o da integração Komerci (o mesmo do site do Komerci), entretanto, totalmente desatualizado. No momento, o manual do site Komerci está na versão 3.0, enquanto que o manual no portal Redecard está no 2.2.
Então, para a integração é só pegar no site do Komerci, mas o que emperra é o maldito arquivo gerador do Código de Verificação (que por sinal é uma gambiarra fudida).
Abraço