web-dev-qa-db-fra.com

Puis-je mettre en œuvre une fonctionnalité de paiement dans mon propre logiciel?

Note: J'ai passé du temps à réfléchir à cette question avant de choisir le site StackexCandre pour la publier. J'ai décidé sur ce domaine en raison de la description: " pour les programmeurs professionnels intéressés par conceptuel Questions sur Développement de logiciels ". Je ne cherche pas une mise en œuvre, je ne cherche que le concept d'acceptation des transactions de carte de crédit/débit. Je ne suis pas allé à un site dédié à la discussion de la loi, des entreprises ou des startups, car pour cette période, je ne considère pas les problèmes juridiques. Si vous croyez que j'ai placé cette question sur le mauvais site, laissez un commentaire expliquant pourquoi et où vous pensez qu'il appartient avant de signaler.

Merci!


Ce que je considère, c'est ce qui suit :

est-il possible de mettre en place un système de traitement de paiement par carte de crédit/débit dans mon logiciel?


Je travaille actuellement sur un projet côté personnel qui est un logiciel de point de vente (POS) que vous trouverez éventuellement en cours d'exécution sur un caissier ou l'ordinateur du serveur.

Un cas d'utilisation pour décrire ce que je cherche:

  1. Un caissier prend une commande d'un client, qui maintient ensuite sa carte pour payer les produits
  2. Mon logiciel reçoit les données de la carte lorsqu'elle est glissée via une balayage de carte connectée à l'ordinateur.
  3. Les données sont envoyées dans une demande quelque part pour autorisation, peut-être à l'acquéreur (ma banque) ou peut-être à une société tierce qui traite des transactions pour un frais

Je suis certain que les étapes 1 et 2 peuvent être relativement facilement implémentées, mais je ne sais pas si l'étape 3 est possible. C'est la seule partie que je suis préoccupée à partir de maintenant. Avant de commencer le développement de ce projet, je voudrais me concentrer uniquement sur la faisabilité d'accepter les transactions par carte de crédit/débit.

Je ne voudrais pas avancer à moins que je puisse accepter des cartes de crédit et de débit des principales sociétés de cartes et des banques.

( Ce que je ne cherche pas:

Je ne veux pas utiliser PayPal ou un site en ligne qui prend les utilisateurs à leur portail pour traiter les paiements. Comme je développe un système de point de vente, toutes les interactions avec l'ordinateur doivent être limitées à l'intérieur de mon logiciel. Un client ne doit pas avoir à fournir d'informations autres qu'une carte, et a PIN ou Signature - N'oubliez pas que le client ne verra jamais l'écran.


Ce que j'ai trouvé jusqu'à présent :

Pour pouvoir accepter des transactions de carte de crédit ou de débit, un magasin ou un marchand doit avoir un compte marchand. Il s'agit d'un compte qui est configuré pour accepter les demandes d'autorisation d'un détenteur de l'account (le commerçant). Le marchand soumet une demande au compte marchand (l'acquéreur) que l'acquéreur interroge l'émetteur (la société de cartes du client) qui répondra ensuite à un code d'autorisation si le propriétaire de la carte a suffisamment de crédit valide pour l'achat. L'acquéreur envoie ensuite le résultat du propriétaire du compte (le commerçant).

J'ai lu que pour accepter les transactions de clients sans utiliser de logiciel tiers, votre logiciel doit être évalué et transmettre des normes de sécurité extrêmement strictes. J'ai également lu qu'il existe également des entreprises tiers qui traitent des paiements afin que votre logiciel ne soit pas obligé de respecter ces normes rigides.

Ces informations n'ont peut-être pas été correcte et je n'ai peut-être pas compris le processus de transaction correctement.

De ces conclusions, j'ai proposé les questions suivantes:

Questions sur n'utilisant pas une entreprise tierce

  • Si vous pouvez simplement configurer un compte marchand et commencer à envoyer des demandes, pourquoi ne pas faire cela? Je ne vois pas besoin d'un tiers.
  • La mise en œuvre serait-elle différente pour chaque banque marchande?
  • Ces banques marchands auraient-ils tous besoin de leur propre ensemble de normes de sécurité?
  • Cette méthode vous permet-il toujours d'accepter des transactions d'autres banques ou même d'autres pays?

Questions sur l'utilisation d'une entreprise tierce

  • Lorsque vous utilisez ces sociétés tierces théoriques, fournissez-elles des API d'intégrer le processus de transaction dans votre propre logiciel?
  • Ou, vous fournissent-ils un logiciel que vous personnalisez ensuite pour répondre à vos besoins?
  • Pouvez-vous simplement envoyer un montant et quelques informations CC à ces entreprises et elles gèrent le reste?
  • Comment cela pourrait-il être plus sécurisé (ou différent) que d'envoyer la demande à l'acquéreur avec votre propre logiciel?
  • Cela pourrait-il travailler avec la plupart des comptes marchands?

Autres questions générales

  • Est-ce que l'une de mes conclusions sur le traitement des transactions CC est-elle incorrecte?

Outre les transactions de paiement, j'aime toujours l'idée de construire un logiciel de point de vente très convivial, personnalisable, robuste et qui n'a pas l'air aussi terrible que certains de ceux que j'ai vus. Mais, avec le traitement de paiement étant une telle partie de ce que le commerçant a besoin ...

  • pensez-vous que un commerçant envisagerait d'acheter un logiciel de point de vente qui lui-même a utilisé un autre logiciel pour traiter les transactions?
7
Matt C

Vous avez demandé beaucoup d'informations, mais je vais essayer de résumer le tout le processus autant que possible.

Vous pouvez définitivement construire votre propre logiciel de traitement de marchands. Toutes nombreuses entreprises ont fait cela (ce sont quelques-uns d'entre eux: WorldPay, PayPal, BluePay, Banque NationaleCard, etc.). La plupart d'entre eux peuvent traiter des paiements par carte (moyennant des frais) très rapidement. Je voudrais que chacun d'entre eux ait une API à cela vous permettra de soumettre des informations d'achat. Je m'attendrais également à ce qu'ils traitent tous les remboursements (que vous n'avez pas mentionnés).

Vous pouvez construire votre propre parcourir votre propre acquéreur, mais la plupart des banques (en particulier les petites) n'ont pas la base de connaissances pour prendre des informations que vous avez collectées pour la facturation via une connexion Internet. Et même lorsqu'ils le font, ils ne veulent pas entrer dans l'entreprise de compenser les cartes de crédit (c'est le terme que les banques utilisent lorsqu'elles parlent de Traitement des milliards de cartes de crédit et d'autres transactions ).

L'une des principales raisons d'utiliser un processeur de marchands est de ne pas avoir à créer une interface avec chaque banque là-bas qui émet des cartes, y compris des banques internationales . Oui, chaque banque aura son propre ensemble de règles qui varient légèrement pour le traitement et la sécurité.

Lorsque vous commencez à traiter les transactions bancaires internationales (n'importe où dans le monde en dehors de votre pays), vous commencez à entrer dans les exigences légales, jusqu'à y compris les traités. En parlant de questions juridiques avec la banque (que le traitement des cartes de crédit relève légalement), vous devrez également vérifier avec la version de chaque nation du " de chaque nation ne vend pas " liste. Voici la liste des États-Unis.

Pour votre dernière question (sur les entreprises d'achat de logiciels utilisant des logiciels tiers pour le traitement de la carte de crédit), vous trouverez probablement quelques-uns qui peuvent abuser de l'idée. Mon expérience a été que la plupart des entreprises (au moins aux États-Unis) attendent un peu de logiciels tiers dans ce qu'ils achètent. Très peu d'entreprises ont les ressources nécessaires pour être des experts de tout ...

5
Adam Zuckerman

La bonne nouvelle: ce n'est pas particulièrement technique difficile à faire.

La mauvaise nouvelle: votre banque doit vous faire confiance. Il existe diverses fraudes de carte de crédit que vous pourriez vous engager ou être commises via vous, donc sans historique si vous procédez à des transactions de votre banque, vous facturerez un taux plus élevé.

Manière technique. Vous avez besoin d'une accouplement du commerçant avec votre banque. Votre banque vous fournira des API (à vendre) et éventuellement du matériel, ce qui vous permettra de prendre des paiements par carte de crédit. Cela couvrira toutes les cartes que la banque accepte

Souvent, il existe un aspect matériel avec des cartes à puce et des utilisateurs enregistrés, etc., mais il n'est pas difficile de configurer le traitement automatique. Vous devrez également configurer la réconciliation des paiements avec votre relevé bancaire. Cela peut souvent impliquer une interaction manuelle lorsque les choses ne s'additionnent pas.

Les paiements peuvent être remboursés par votre banque et cela ne peut être clair que sur votre déclaration.

Ne vous attendez pas à ce que votre API bancaires soit trop utile ou moderne!

Votre banque vous facturera un montant fixe par transaction et/ou pourcentage du montant. Ce montant sera basé sur la durée de vos échanges et le volume des transactions que vous traitez. Cela pourrait bien être supérieur à ce que les 3ème parties vous offrent.

Votre banque voudra vérifier tout système utilisé pour traiter les paiements. Vous devrez peut-être envoyer des conceptions de page Web, etc. pour approbation.

Vous devrez être conforme à PCI. Il existe différents niveaux d'audit et d'auto-certification.

Voici certaines des raisons pour lesquelles les personnes optent pour le traitement des paiements de tiers.

Cependant, nous ne devrions pas être trop négatifs de le faire vous-même. Après tout, ce que 90% des magasins dans la rue font, obtiennent un compte marchand et des machines à puce.

2
Ewan