2017-09-13 5 views
0

mes chers collègues développeurs informatiques ...Omnipay - PayPal Express et page UpSell qui a besoin de recharger à nouveau client après le paiement initial succesfull

Je travaille actuellement pour un de mes clients sur Laravel 5.5 et nous utilisons omnipay library for PHP et c'est PayPal partie omnipay-paypal. Maintenant, depuis cette demande spécifique du client, j'utilise la méthode PayPal-Express pour rediriger les utilisateurs vers PayPal puis là ils se connectent et paient avec leur compte PayPal ou CreditCard et reviennent à la page de mes clients sur la page Merci.

Maintenant, puisque le client veut créer une page UpSell qui se trouve entre page de paiement et page de remerciements, et il offre 1 unité supplémentaire du produit sur 50% de réduction. L'histoire est que, après la première charge, j'aurais besoin de les recharger d'une manière ou d'une autre, idéalement avec ce que j'ai déjà et c'est PayPal Express. Sur notre page de paiement, nous avons deux options PayPal ou Checkout.com, le dernier offre le stockage de la propriété card_id et après que vous pouvez faire la recharge, cela est déjà implémenté et fonctionne comme charme avec Checkout.com. Maintenant, retour à PayPal.

J'ai passé juste juste le temps d'essayer de trouver la même solution pour PayPal, mais sans chance. Si il ya une bonne âme là-bas pour m'aider avec cela, je l'apprécierais beaucoup, donc Omnipay PayPal bibliothèque + recharger le client s'ils cliquent Oui sur la page upSell après frais initiaux/paiement via PayPal Express.

Merci d'avance.

Répondre

0

Il n'y a pas de solution facile à ce problème, mais je peux vous diriger dans la direction d'un certain nombre de choses que vous devez faire:

  • Qu'est-ce que vous avez besoin est un jeton de carte. C'est là que (dans Omnipay) vous appelez une méthode comme createCard() avec les détails de la carte de crédit du client et vous récupérez un jeton. Vous ne pouvez pas le faire avec un compte PayPal, vous devez saisir les détails de la carte de crédit du client et ensuite charger la carte.
  • La création de jetons de carte ne peut pas être effectuée par la passerelle PayPal Express. Cela peut être fait en utilisant la passerelle PayPal REST (une passerelle alternative et plus récente dans le même paquet Omnipay que PayPal express), ce qui signifie que vous devez passer de PayPal Express à REST. C'est aussi simple que de générer un nouvel ensemble de clés API. Cela vous permettra d'appeler createCard() avec les données de la carte et récupérer un jeton de carte (appelée cardReference dans Omnipay) comme vous le faites avec checkout.com

Juste pour réitérer, ce que vous essayez de ne peut pas être fait avec un compte PayPal . Vous devez avoir les détails carte de crédit du client.

+0

hi @delatbabel. Merci pour votre réponse. Au cours des derniers jours, j'ai cherché cela et je crois que nous devrions passer à REST de PayPal parce qu'ils commencent à endosser REST Api à partir de ce que j'ai lu. Oui je vais essayer, ne pas promettre de suivre ce modèle, si mon client est d'accord et même de pousser mon code sur GitHub public comme je l'ai fait pour [bande] (https://github.com/mbaric/stripe-example-php). En tout cas, je vous tiendrai au courant. – Matija