Construindo um gateway de pagamento on-line completo como o Paypal [fechado]


160

Portanto, esta pergunta não é sobre a integração de um gateway de pagamento existente no meu site. Esta é mais uma questão de arquitetura.

Eu quero construir um sistema semelhante ao Paypal. Agora entendo que o Paypal oferece muitos recursos sob o teto e não posso implementar todos eles de uma só vez. Quero implementar a funcionalidade principal do Paypal e outros serviços desse tipo.

Portanto, minha pergunta é (em vez disso é a discussão) sobre como alguém poderia construir tal sistema. Alguns pontos para discutir:

  1. Lidar com pagamentos através de bancos existentes. Suponho que precisaria acessar protocolos bancários locais para conseguir isso.
  2. Permitir que os usuários armazenem e processem seus pagamentos com segurança
  3. Como o Paypal lida com as transações?

Pensamentos?


2
esta questão foi votada muito. Estou pensando nos documentos técnicos, etc, mais difíceis de encontrar hoje em dia, porque essas plataformas não desejam que essas informações estejam prontamente disponíveis.
Filthy_wizard # 1/19

muito verdade. Tenho visto muitos grandes questões, infelizmente, desanimado
Ralph Dingus

Respostas:


214

O que você está falando é se tornar um provedor de serviços de pagamento. Estive lá e fiz aquilo. Era muito mais fácil há 10 anos do que é agora, mas se você tem uma quantidade fenomenal de tempo, dinheiro e paciência disponível, ainda é possível .

Você precisará entrar em contato com um banco adquirente. Você não disse em que região do mundo está, mas com isso não quero dizer uma agência bancária local. Cada banco principal geralmente possui um braço de aquisição de cartão separado. Portanto, aqui no Reino Unido, temos (por exemplo) o banco Natwest , que usa o Streamline (ou Worldpay) como seu braço adquirente. No total, apesar de termos dezenas de grandes bancos, todos eles acabam usando um dos cinco ou mais adquirentes de cartões.

Felizmente, todos os adquirentes de cartões do Reino Unido usam um protocolo padrão para comunicação de solicitações de autorização e liquidação no final do dia. Você encontrará peculiaridades menores, nas quais alguns bancos adquirentes suportam alguns recursos e possuem sintaxe ligeiramente diferente, mas as diferenças são bastante pequenas. Os padrões do Reino Unido são publicados pela Association for Payment Clearing Services (APACS) (que agora é conhecida como UKPA). Os padrões ainda são comumente referidos como APACS 30 (autorização) e APACS 29 (liquidação), mas agora são formalmente conhecidos como APACS 70 (livros 1 a 7).

Embora o padrão APACS seja amplamente suportado em todo o Reino Unido (Amex e Discover também aceitam mensagens neste formato), ele não é usado em outros países - cada país possui o seu próprio - por exemplo: Carte Bancaire na França, CartaSi na Itália, Sistema 4B no Espanha, Dankort na Dinamarca etc. Está em andamento um esforço para unificar os protocolos em toda a Europa - veja EPAS.org

A comunicação com o banco adquirente pode ser feita de várias maneiras. Novamente, porém, isso dependerá da sua região. No Reino Unido (e na maior parte da Europa), temos um gateway de comunicação que fornece conectividade a todos os principais adquirentes, eles são chamados TNS e existem dezenas de maneiras de se comunicar através deles para o banco adquirente, a partir de modems dial-up de 9600 bauds, ISDN, HTTPS, VPN ou linha dedicada. Por fim, a solicitação de autorização será convertida para o protocolo X25, que é o protocolo usado por esses bancos adquirentes ao se comunicarem.

Em resumo, então: tudo depende da sua região.

  • Entre em contato com um grande banco e tente acessar o ramo de aquisição de cartões.
  • Explique que você está configurando como um provedor de serviços de pagamento e solicite detalhes no formato de comunicação para solicitações de autorização e arquivos de liquidação no final do dia
  • Configure uma conta de comerciante de teste, desenvolva um software de autenticação / liquidação e passe pelo processo de credenciamento. A maioria dos adquirentes ajuda você nesse processo gratuitamente, mas quando você deseja se registrar como um PSP credenciado, alguns pedem uma taxa.
  • você também precisará cumprir alguns regulamentos, por exemplo, pode ser necessário registrar-se como instituição de pagamento

Depois de registrado e credenciado, você poderá aceitar clientes e configurar contas de comerciante em nome do banco / s em que está credenciado (tendo em mente que cada adquirente geralmente oferece suporte a vários bancos). Enxágue e repita com outros adquirentes conforme achar necessário.

Além disso, você tem muitos outros problemas, principalmente no PCI-DSS. Esse é outro tópico e já existem algumas perguntas e respostas neste site. Como eu disse, é um empreendimento fenomenal - provavelmente um projeto de vários anos, mesmo para uma equipe de tamanho razoável, mas certamente é possível.


1
Obrigado Paul, que é uma ótima informação. Era exatamente o que eu estava procurando. Um de nossos clientes está procurando uma solução para implementar no sul da Ásia. Não tínhamos 100% de certeza, portanto, as perguntas sobre SO.
Obaid

1
Obrigado @PaulG, também agradeço sua resposta. Por favor, deixe-me saber uma coisa. O que é o braço de aquisição de cartões? É o mesmo com a organização que fornece o processador do banco Merchant. Você poderia me dar alguma referência sobre isso?
quer

Olá Paul e @Obaid Estou tentando criar meu próprio gateway de pagamento. No entanto, estou construindo em torno de criptomoeda e não estou lidando com bancos. A infraestrutura para transferir fundos está concluída, mas quero saber como lidar com problemas de segurança e quais pontos devem ser considerados ao fazê-lo. Você já fez isso? Você poderia me ajudar em quais casos eu deveria procurar? Não há muitos recursos online para fazer isso. Agradecemos antecipadamente
Alireza Noori

Eu trabalhei em uma empresa que lidou com isso, então eu tenho uma boa idéia de como isso pode ser feito. No entanto, eles nunca pagaram a fatura do contrato, então eu tenho todo esse código-fonte sentado em uma unidade externa lol. Pode tentar vender o que eu havia escrito. Dito isto, basicamente hoje em dia existem muitas APIs que você pode usar para amarrar tudo e criar um site de processador de pagamento. Eu começaria examinando o que existe com chamadas de API que você poderia usar com seu site. Depois de receber muito dinheiro, você pode usá-lo para começar a substituir as chamadas externas da API por código interno.
Multiplexador

O @AlirezaNoori, um bom começo, é apenas tornar-se compatível com PCI no que diz respeito a transações e políticas de banco de dados. Mesmo que ele não é necessário para bitcoin, ele funciona como uma orientação eficaz para a segurança
Garet Claborn

-10

Grande tarefa, é provável que você não deva reinventar a roda usando uma roda existente (como paypal).

No entanto, se você insistir em continuar. Comece pequeno, você pode usar um recurso de processamento de cartão de crédito (Moneris, Authorize.NET) para processar cartões de crédito. A maioria dos provedores tem uma API que você pode usar. Lembre-se de que talvez você precise usar provedores diferentes, dependendo do tipo de cartão (Discover, Visa, Amex, Mastercard) e do país (EUA, Canadá, Reino Unido). Portanto, crie-o para que você possa se comunicar com várias APIs de processamento de cartão de crédito.

A segurança é essencial se você estiver armazenando cartões de crédito e detalhes de pagamento. Verifique se você está criptografando as coisas corretamente.

Mais uma vez, não reinvente a roda. É melhor usar um provedor existente e concentrar sua atenção no desenvolvimento na solução de um problema que não pode ser adquirido com facilidade.


17
Empresas como a Venmo estão acabando agora. Portanto, é loucura pensar que você não pode fazer uma roda melhor só porque alguém como o PayPal já existe. O novo aplicativo móvel do PayPay parece ter sido realmente redesenhado para se parecer com o Venmo.
Moustache_Me_A_Question

Paypal possui Venmo
Kusal Hettiarachchi
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.