Quel package/script PHP complet de gestion Paypal ?

Discussion dans 'e-commerce' créé par ortolojf, 13 Juin 2017.

  1. ortolojf
    ortolojf WRInaute accro
    Inscrit:
    14 Août 2002
    Messages:
    2 793
    J'aime reçus:
    1
    Bonjour

    Voici très longtemps que je me bat sur un script perso PHP de gestion de paiements Paypal.

    C'est pour mon site partenaire http://www.lescourses.com

    Le problème de Paypal, est qu'il prévoit un très grand nombre de possibilités de litiges.

    J'ai l'intention, de faire un script qui prévoit tous les cas, et optimise l'automaticité, à charge bien sûr d'informer par email le vendeur si besoin, tout en réduisant au maximum, la nécessité de ses interventions auprès de Paypal.

    La moindre des choses, est de prendre en compte de manière fiable, tous les mouvements ( débit/crédit ) sur le compte vendeur, ainsi que la gestion des droits acheteur sur ses abonnements au site.

    Existe-t-il, un script déjà existant, qui réponde à cette problématique ?

    J'ai l'habitude de réinventer la roue en me lançant sans réfléchir, mais là c'est une nécessité pour moi, car malgré ma connaissance de l'anglais, je sèche sur le sens de certains termes de la documentation Paypal.

    Merci beaucoup de votre aide.

    Respectueusement.
     
  2. spout
    spout WRInaute accro
    Inscrit:
    14 Mai 2003
    Messages:
    8 827
    J'aime reçus:
    50
    Tu as utilisé le SDK officiel ?
    https://github.com/paypal/PayPal-PHP-SDK
    Ça s'installe avec composer en 1 commande, ça utilise l'autoloading, comme toute bonne librairie PHP depuis 5 ans.
    Il y a des exemples fourni avec.
     
  3. ortolojf
    ortolojf WRInaute accro
    Inscrit:
    14 Août 2002
    Messages:
    2 793
    J'aime reçus:
    1
    Super merci spout ! ;)

    Si j'ai bien compris, il n'est plus possible de se loguer avec un ancien compte Developer, et il faut de toute manière, recréer un nouveau compte Developer ( réel ), pour rattacher son compte Sandbox.

    D'un autre côté, c'est au minimum Express Checkout, et il n'y a plus d'Integral Evolution.

    Le bug ( si j'ose dire ), c'est que mon dirlo est injoignable ( téléphone/email ) depuis Octobre dernier.

    A un tel point, que je me demande ce que mon propre site va devenir... ;(

    En tout cas, je vais jeter un coup d'oeil sur le code PHP du SDK.

    Merci spout ! ;)

    Amicalement.
     
  4. spout
    spout WRInaute accro
    Inscrit:
    14 Mai 2003
    Messages:
    8 827
    J'aime reçus:
    50
    Sinon tu passes à Stripe qui est pas mal et facile à mettre en place.
     
  5. ortolojf
    ortolojf WRInaute accro
    Inscrit:
    14 Août 2002
    Messages:
    2 793
    J'aime reçus:
    1
    Pardon Monsieur Drew

    J'ai vaguement vu sur la doc de Stripe, que les cas litigieux se limitaient à une seule liste, alors que ceux de Paypal, se déclinent en toute une arborescence complexe, sans compter la foultitude de termes juridico-financiers, ( en Anglais ), dans laquelle une chatte ne retrouverait pas ses petits.

    Est-il suffisamment ok de se retrouver dans la terminologie de Stripe, et existe-t-il des scripts tout faits tenant compte des cas litigieux ?

    Plutôt que de réinventer la roue, j'arrangerais volontiers un tel script aux besoins de mon site partenaire, et mon dirlo serait content. ;)

    Super merci pour vos réponses.

    Respectueusement et amicalement.
     
  6. ortolojf
    ortolojf WRInaute accro
    Inscrit:
    14 Août 2002
    Messages:
    2 793
    J'aime reçus:
    1
    Rebonjour

    Par rapport à Stripe, excusez-moi de cette question idiote, mais l'implantation géographique de Stripe, ne concerne que les marchands, pas les acheteurs ?

    Le fait que Stripe n'est pas encore implanté en Afrique, ne signifie pas qu'aucun Africain ne pourra être abonné de mon site partenaire ?

    J'ai téléchargé à l'instant, des scripts de Github, PHP-France ( datent un peu ), et des scripts gratuits de Monsieur Larry Ullmann.

    Théoriquement Github devrait être une mine d'or. ;)

    Respectueusement.
     
  7. ortolojf
    ortolojf WRInaute accro
    Inscrit:
    14 Août 2002
    Messages:
    2 793
    J'aime reçus:
    1
    Bonjour

    J'ai trouvé le code basique pour Stripe, en Javascript et PHP ( sans JQuery ).

    Pour les traitements d'erreur, je vais devoir programmer "from scratch", et me coltiner la doc Sripe.

    Bien à vous.
     
  8. ortolojf
    ortolojf WRInaute accro
    Inscrit:
    14 Août 2002
    Messages:
    2 793
    J'aime reçus:
    1
    Rebonjour

    J'ai tous les exemples de scripts Checkout ou Elements.

    Est-il réellement préférable de programmer tout en mode Elements ?

    Quel est l'avantage d'utiliser ce type de composants : ( Elements ) ?

    Je vais planifier ma programmation, je plussoie que c'est bien plus simple que Paypal...

    Avec Stripe, il y a de la doc, on est mené et informé.

    Remarquable.
     
  9. ortolojf
    ortolojf WRInaute accro
    Inscrit:
    14 Août 2002
    Messages:
    2 793
    J'aime reçus:
    1
    Bonjour

    Voici un exemple de formulaire utilisant la technologie "Elements" de Stripe.

    Est-ce que c'est censé fonctionner ?


    Code:
    
    <script src="https://js.stripe.com/v3/"></script>
    
    <form action="/charge.php" method="post" id="payment-form">
      <div class="form-row">
        <label for="card-element">
          Credit or debit card
        </label>
        <div id="card-element">
          <!-- a Stripe Element will be inserted here. -->
        </div>
    
        <!-- Used to display Element errors -->
        <div id="card-errors" role="alert"></div>
      </div>
    
      <button>Submit Payment</button>
    </form>
    
    <script type="text/javascript">
    
    // Custom styling can be passed to options when creating an Element.
    var style = {
      base: {
        // Add your base input styles here. For example:
        fontSize: '16px',
        lineHeight: '24px'
      }
    };
    
    // Create an instance of the card Element
    var card = elements.create('card', {style: style});
    
    // Add an instance of the card Element into the `card-element` <div>
    card.mount('#card-element');
    
    card.addEventListener('change', function(event) {
      var displayError = document.getElementById('card-errors');
      if (event.error) {
        displayError.textContent = event.error.message;
      } else {
        displayError.textContent = '';
      }
    });
    
    // Create a token or display an error when the form is submitted.
    var form = document.getElementById('payment-form');
    form.addEventListener('submit', function(event) {
      event.preventDefault();
    
      stripe.createToken(card).then(function(result) {
        if (result.error) {
          // Inform the user if there was an error
          var errorElement = document.getElementById('card-errors');
          errorElement.textContent = result.error.message;
        } else {
          // Send the token to your server
          stripeTokenHandler(result.token);
        }
      });
    });
    
    function stripeTokenHandler(token) {
      // Insert the token ID into the form so it gets submitted to the server
      var form = document.getElementById('payment-form');
      var hiddenInput = document.createElement('input');
      hiddenInput.setAttribute('type', 'hidden');
      hiddenInput.setAttribute('name', 'stripeToken');
      hiddenInput.setAttribute('value', token.id);
      form.appendChild(hiddenInput);
    
      // Submit the form
      form.submit();
    }
    
    </script>
    
    
    Merci beaucoup de votre aide.

    Respectueusement.