sexta-feira, março 13, 2009

Deficiencia da API do Paysafe

Ao fim de 3 dias de volta do Paysafe consegui aprender relativamente bem como utilizar a API do Paysafe e implementei uma solução que possibilita aos clientes da minha aplicação fazerem pagamentos através do Paysafe card.

Até fiquei espantado 3 dias foi mesmo muito pouco para quem não sabia nada do Paysafe, e isto porque, porque até existem exemplos muito simples de seguir e boa documentação disponibilizada pela Paysafe.

Até aqui tudo bem, o problema foi quando tentei passar para ambiente de produção. O meu ambiente de desenvolvimento é Windows/.NET, ambiente de produção é Linux/Mono, toda a aplicação funcionava em ambos os mundos e é uma aplicação com alguns milhares de ficheiros escritos em C#.

Conforme tento chamar os serviços do Paysafe levo com uma excepção:
Paysafecard.Client.PaysafecardException: Incorrect value in
configuration file. ---> System.DllNotFoundException: crypt32.dll
Vou ver que ficheiro é o crypt32.dll e descubro que é uma dll criptográfica nativa de Windows. Ok 3 dias para implementar era muito rápido, tinha de surgir algum problema. Contactamos a Paysafe para resolver o problema, visto que em .NET existem bibliotecas criptográficas que têm compatibilidade total com o Mono e seria com essas bibliotecas que o código ficaria bem feito e portável para qualquer ambiente.

Resposta foi: "Ah e tal nunca testamos essa siuação, se quiserem ter um ambiente em Linux usem a implementação de Java para comunicar com a Paysafe."

A minha vontade foi responder: "Estão a brincar comigo, não? Vocês são uma empresa com centenas de clientes, somos os primeiros a ter este problema? Eu tenho todo o meu código feito em C# e tudo funciona bem, NÃO vou fazer um módulo em Java só porque meteram um trolha a programar a vossa API."

Pelo menos podiam ter disponibilizado o código fonte da API deles que em último caso fazia eu o código, mas não, além de um código coxo querem que eu implemente também uma solução coxa.

Sem comentários: