O comércio eletrônico e o Linux

Vendas e compras pela internet já tornaram-se parte do nosso dia-a-dia, mas você sabe se os meios de pagamentos de instituições financeiras são suportadas no Linux?

[ Hits: 20.642 ]

Por: Ragen Dazs em 23/04/2007 | Blog: http://www.orkut.com


Introdução



Esse artigo destina-se a programadores e empresas de desenvolvimento focadas em comércio eletrônico - TEF's discados e outros meios similares não serão abordados, ou seja, esse artigo tratará exclusivamente dos meios de pagamento para internet.

Vamos começar pelo meio de pagamento Visanet - Atualmente utilizado em cerca de 70% das transações financeiras dos comércios eletrônicos que analisei - E a conclusão foi desanimadora: Visanet não suporta Linux.

VisaNet

Existem dois modelos de pagamento, o MOSET e Verified by Visa (VBV). O "Kit de Instalação" possui uma vasta documentação, porém bastante confusa. O conteúdo é mal elaborado e nas versões mais antigas desse kit, durante uma rápida auditoria realizada pela empresa em que trabalho encontramos erros primários de programação na loja exemplo (Em ASP).

O VBV consiste em correr todo o processo no lado dos servidores Visa, ou seja, sem armazenamento de dados do cartão do cliente. E O MOSET, consiste em capturar os dados do cliente e a partir desse, completar o processo de captura/autorização, ou seja, apesar desse meio ser infinitamente mais estável que o VBV a responsabilidade de todo o processo fica à cargo da empresa que o utiliza. Conclusão: O MOSET não se adequa à realidade da maioria dos clientes, pois nem toda empresa possui uma equipe disponível para essa função. Nem continuaremos a análise do VBV, pois os problemas são vários.

A partir de agora vamos definir que a nossa palavra de ordem é paciência. Muita paciência para lidar com a burocracia da Visa e com os problemas do VBV.

Após o processo de homologação concluído - que em média leva em torno de 30 a 40 dias - o sistema demonstrou-se por várias vezes bastante instável, ou seja, o processo burocrático não se justifica. E mais alguns detalhes do sistema são interessantes: em alguns testes conseguimos reproduzir erros reportados por clientes que utilizavam o VBV e novamente não tivemos uma conclusão com um final feliz.

Acreditem, erros por timeout e exceptions como conexão ao banco de dados Oracle são lançados "crus" na tela. E sem dúvida, isso assusta o cliente e negativa bastante a loja/empresa que utiliza esse meio de pagamento, pois o comprador - quase sempre leigo - acredita que o processo seja algo muito seguro e que se isso não ocorreu com perfeição foi devido a algum problema no sistema do lojista/empresa e nunca no Visanet. Afinal, quem tem mais respaldo?

Todavia, para quem precisa utilizar esse meio de pagamento no Linux, ainda existe uma luz no fim do túnel. Porém ainda ficará amarrado ao Windows.

Ou seja, a solução mais viável para conseguir uma homologação desse sistema em Linux é instalar um sistema Windows na VMWare e utilizar Xvfb, ou seja, o Xvfb lhe permite emular um terminal X em servidores Linux que não tem interface gráfica - Toda saída é direcionada para um virtual frame buffer.

Isso quer dizer que o Xvfb, apesar de funcionar com um X server lhe possibilita rodar um programa gráfico através de um shell remota, ou seja, se você administra um servidor Linux em 99% dos casos não precisará de ambiente gráfico. E para acessar o Windows? Fica a seu critério escolher como irá acessar, você poderá até configurar o VNC no Linux para pegar o conteúdo do Xvfb (útil para configurar o VM Player) e outro VNC no sistema operacional Windows que está rodando pela VM Ware. Todavia, como esse não é o foco do artigo, deixo o link do Wikipedia a respeito do Xvfb para os interessados. E a respeito da VM player, www.vmware.com.

Redecard - Mastercard e Diners

No caso dos meios de pagamento fornecidos pela Redecard, a mudança na qualidade das soluções é gritante: foi um dos meios de pagamento com melhor suporte e com documentação satisfatória.

Ao contrário do VisaNet, possui operação auto-homologativa - Entenda-se como um processo sem burocracia, ou seja, a homologação de fato será negada somente se o sistema não se adequar às especificações técnicas. Se restringe a gerar um código de validação utilizando um java class e enviar aos servidores do Redecard.

Possui recursos de captura automática, ou seja, após uma compra o sistema se encarrega de autorizar e capturar o valor da venda. O que por sua vez é "permitido" pelo VBV, mas não recomendado conforme especificações técnicas da Visa - O que torna o processo "automático" e "Verified by Visa" algo no mínimo contraditório, pois a verificação não é exclusiva da Visa e depende de interação com um operador, ou seja, um processo manual.

Por utilizar um componente Java, o Redecard se adequa facilmente à qualquer ambiente, pois possibilita por exemplo a execução desse componente à partir do PHP, Perl, CGI ou qualquer outra linguagem que permita chamadas de sistema (exec(), system(), passthru(), etc), perdendo apenas para o meio do Banco do Brasil em questão de compatibilidade.

Vejam um exemplo de autorização:

- Autenticação Eletrônica do Pedido:
Origem BIN: BRA
No. Hash do Cartão: 93D9912526CEA5D1C3FB04124FAA44E9
No. Cartao: 518491******5849
No. Autorização: 098210
No. Comprovante de Venda: 3445513
No. Autenticação: 657487

Isso é uma autorização real e notem, nenhum dado do cartão do cliente é realmente devolvido.

Itaú Shopline

O Itaú Shopline é o meio de pagamento on-line do banco Itaú, também auto-homologativo. Ele possibilita débito em conta em tempo real e emissão de boletos pela mesma interface. Esse meio de pagamento adota a mesma filosofia dos cartões de crédito Redecard e qualidade de documentação é tão boa quanto a desse último.

BB Débito Eletrônico

Sem dúvida o meio de pagamento mais compatível e de implantação mais simplificada. Consiste em enviar um formulário utilizando método POST para o ambiente de pagamento, ou seja, o restante do processo fica à cargo do banco e possui processo de implantação auto-homologativo.

Bradesco Pagamento Fácil

Compatível com Linux, porém possui documentação confusa e processo de homologação burocrático. Possui uma interface web que lhe possibilita, a partir de login e senha configurar quais serão os meios de pagamentos disponíveis, gerenciar capturas, ou ainda definir a captura como automática, ou seja, quase todas as regras do pagamento são definidos à partir dessa interface. Mas por outro lado utiliza, uma metodologia meio confusa que se distingue de todos os outros meios, ou seja, o Bradesco precisa acessar os dados da compra em um formato específico para dar continuidade ao processo da compra.

Resumindo. Um sistema com qualidade técnica, porém com documentação insuficiente/confusa.

Vejam exemplo de retorno de autorização:

- Autenticação Eletrônica do Pedido:

3F0D14C7FD9DB8523D87395A1C6BAC41C49B39BC50534F5C58D3D1BBFD678BD0
65261C593924A4B92B8F5AB5F023D8D0072AA8128D6623551742DF1891266B05
8E917448F0A374FBDCCE237CB34778B3665A9E47EE1474225692AAF6F6B7AC28
5292457D8AB0E29092BB4BC1FD11F8E09AD4BFA908F3F5CAA1660B122E6BBB1C

    Próxima página

Páginas do artigo
   1. Introdução
   2. Considerações finais
Outros artigos deste autor

Tratamento de dados fornecidos pelo usuário: projetando sistemas com mais segurança

Populando sua SpamTrap com e-mails relevantes

PHP 6.0 - Você está pronto?

Montando um workstation de desenvolvimento web em GNU/Linux

O perigo no gerenciador de uploads do PHP

Leitura recomendada

Blogs de mais, conteúdo de menos

I Semana de Capacitação e Desenvolvimento em Software Livre

A essência de ser Livre

Porque os projetos open-source não são anunciados na mídia?

SL no Estado do Ceará: repensando a nossa forma de atuação e engajamento

  
Comentários
[1] Comentário enviado por jragomes em 23/04/2007 - 12:32h

Realmente, o Moset do VISA é uma m............. Trabalhei num e-commerce, e por dar tanto pau no Moset, optamos por fazer as transações offline com o uso da máquininha... desde então nunca mais tivemos problemas.

[2] Comentário enviado por gustavoh em 23/04/2007 - 18:19h

Muito bom! Poderia explicar também outras partes do processo, desde como entrar em contato com a visanet, mastercard... até um exemplo de como colocar pra funcionar no site!
Mas ta valendo assim mesmo! Gostei do artigo!

[3] Comentário enviado por fabio_lae em 25/04/2007 - 19:30h

Olá,

Primeiramente, parabéns pelo artigo. sem dizer que veio em boa hora.

Quero implementar o Visa no Linux e como vi, vai dar muito trabalho...

Estou imaginando em colocar um servidor windows dentro da minha rede e fazer essa triangulação, cliente, meu servidor linux, servidor windows, Visanet. Será que funcionaria?

Qual é a diferença entre o esquema que quero fazer e o lance do VMWare que vc falou?

Vc chegou a implementar a solução com o VMWare?

Se puder me dar umas dicas, agradeço.

Abraços,

Fabio Laé

[4] Comentário enviado por Ragen em 26/04/2007 - 11:23h

Ola Fabio,

Sim, implementei na VM. Pro meu caso foi a melhor situacao, pois eu dipunha de apenas 1 maquina.

Entao eu elimei completamente o codigo ASP para fazer a integracao. Ou seja, utilizava os componentes da Visa e escrevia e lia os tids (transaction id/s) direto no disco da VM utilizando samba.

As vantagens da VM: facil de restaurar, pois eu gerei uma imagem de 4GB que arquivei num DVD. E a possibilidade de economizar recursos.

[],s,

Ragen

[5] Comentário enviado por adrianoprospero em 24/07/2007 - 22:30h

Bom artigo cara. Realmente o manual do Bradesco é uma via crucis, o banco do Brasil eh bem simples (embora seja um parto achar alguém lá no meio que saiba te explicar alguma coisa diferente do que está no manual ou configurar a coisa direito pra você lá dentro), o VBV eu tive poucos problemas, mas esse eu não programei direto, foi usando um desses gateway, tipo F2B/Real Pague (esse segundo que aliás é um tanto enrolado também...)

[6] Comentário enviado por larama em 28/05/2008 - 20:26h

Fala ai galera.
Ouvi dizer que a visanet esta trabalhando forte desde o inicio do ano em toda a plataforma e-commerce deles. Será !?!?!?! Linux enfim !!!
Até curto o lance do CGI deles que é em C++. Além de melhor performance, deixa o APPServer isolado e isento de memory leak. Curtiria este CGI nativo para Linux :)
Mas...Bem, queria dar um toque para a galera que usa MOSET da Visanet. Os caras disponibilizaram em "OFF" uma nova versão chamada MOSET3. O nome é o mesmo, mas segundo obtive informações (meu amigo trampa como desenvolvedor para um grande site de e-commerce que obteve esta versão), foi inteiro remodelado com todas as features do VBV, mas sem a autenticação. Tem coisa ai !?!? Porque alguns podem ter e outros não !? Alguém sabe ?

[7] Comentário enviado por crixtiano em 10/08/2008 - 15:57h

Eu estou enfrentando problemas sérios ao tentar homologar meu site com o VBV da Visanet.

Quem está fazendo a integração para mim é o pessoal da empresa Cobrebem.

Mas os primeiros testes está dando erros. A Cobrebem joga a culpa na Visanet e a Visanet joga a culpa na Cobrebem.

Enquanto isso, eu aqui no meio do tiroteio, não tenho meu site homologado.

Além disso, a Visanet é muito ruim em termos de respostas ao cliente. Todos os emails são respondidos com mais de 1 semana (quando são).

É horrível, não recomendo usarem homologação da visanet no site de vocês.


[8] Comentário enviado por pierre em 18/08/2008 - 12:05h

Ola Ragen,

Obrigado pelo artigo. Muito bom mesmo.
Estamos com muitos problemas para integrar o VBV da Visanet. Sera que alguem pode nos ajudar? O meu desenvolvidor esta na França, sera que alguem que fale ingles ou Frances, pode nos auxiliar junto com a Visanet?

Abs.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts