Intégrer Affirm

Apprenez à intégrer Affirm et à rendre un paiement hébergé sur votre site.

Proposer Affirm comme option de paiement sur votre site consiste à créer un formulaire de paiement, à tokeniser en toute sécurité les informations client et à utiliser ce checkout_token pour initier une facturation.

Nous faisons en sorte que l'expérience d'achat soit facile et sans stress :

  • Une demande simple nécessitant quelques renseignements pour une décision en temps réel
  • Plus de pouvoir d'achat pour vos clients avec des options de paiement flexibles
  • Des options de personnalisation et de marque qui s'intègrent harmonieusement à votre site
  • Une expérience de transaction transparente et sécurisée pour vous et vos clients

Comment ça fonctionne

Le paiement par Affirm est le processus de collecte des informations de votre client lorsqu’il choisit Affirm pour payer son achat. Une fois que le client a soumis son paiement, vous créez un objet checkout et votre client est redirigé vers Affirm, ou voit une fenêtre modale Affirm. Nous présentons ensuite l’option de se connecter ou de s'inscrire pour sélectionner et confirmer les modalités de son prêt. Une fois qu’il a rempli les informations requises, il sera redirigé vers la page de confirmation de votre site.

1. Configurez votre compte Affirm

Avant de commencer, vous avez besoin d’un compte Affirm pour accéder à nos informations d’identification de compte commerçant. Pour commencer votre processus d'intégration, vous devez vous connecter à votre compte.

2. Ajouter Affirm.js

🚧

Utilisez uniquement les clés et le domaine d'API de votre sandbox à des fins de test et de développement. Cela garantit que vous ne modifiez pas accidentellement vos transactions en direct.

Incluez le script suivant dans la section d'en-tête de chaque page de votre site. Ce script doit toujours être chargé directement à partir du domaine Affirm.

<script>
 _affirm_config = {
   public_api_key:  "YOUR_PUBLIC_KEY",
   script:          "https://cdn1-sandbox.affirm.com/js/v2/affirm.js"
 };
(function(m,g,n,d,a,e,h,c){var b=m[n]||{},k=document.createElement(e),p=document.getElementsByTagName(e)[0],l=function(a,b,c){return function(){a[b]._.push([c,arguments])}};b[d]=l(b,d,"set");var f=b[d];b[a]={};b[a]._=[];f._=[];b._=[];b[a][h]=l(b,a,h);b[c]=function(){b._.push([h,arguments])};a=0;for(c="set add save post open empty reset on off trigger ready setProduct".split(" ");a<c.length;a++)f[c[a]]=l(b,d,c[a]);a=0;for(c=["get","token","url","items"];a<c.length;a++)f[c[a]]=function(){};k.async=
!0;k.src=g[e];p.parentNode.insertBefore(k,p);delete g[e];f(g);m[n]=b})(window,_affirm_config,"affirm","checkout","ui","script","ready","jsReady");
</script>

L'ajout de Affirm.js crée une instance d'Affirm sur votre client. Cela vous donne accès aux méthodes suivantes dans l'objet Affirm pour déclencher plusieurs actions:

  • affirm.checkout({ }) - Stocke l'objet checkout et est utilisé pour la charge utile de la requête du paiement.
  • affirm.checkout.post() - Envoie l'objet checkout via une requête POST .

3. Initier la caisse

Le paiement par Affirm est le processus par lequel un client utilise Affirm pour payer un achat sur votre site. Vous pouvez créer un objet checkout et lancez le paiement Affirm à l'aide de fonction Checkout.

📘

Vous pouvez trouver plus de renseignements sur la façon de créer un objet de paiement via notre bibliothèque Javascript Affirm.

affirm.checkout({
 
      "merchant": {
        "user_confirmation_url":    "https://merchantsite.com/confirm",
        "user_cancel_url":          "https://merchantsite.com/cancel",
        "user_confirmation_url_action": "POST",
        "name": "Your Customer-Facing Merchant Name"
      },
      "shipping":{
        "name":{
          "first":"Joe",
          "last":"Doe"
        },
        "address":{
          "line1":"633 Folsom St",
          "line2":"Floor 7",
          "city":"San Francisco",
          "state":"CA",
          "zipcode":"94107",
          "country":"USA"
        },
        "phone_number": "4153334567",
        "email": "[email protected]"
      },
      "billing":{
        "name":{
          "first":"Joe",
          "last":"Doe"
        },
        "address":{
          "line1":"633 Folsom St",
          "line2":"Floor 7",
          "city":"San Francisco",
          "state":"CA",
          "zipcode":"94107",
          "country":"USA"
        },
        "phone_number": "4153334567",
        "email": "[email protected]"
      },
      "items": [{
        "display_name":         "Awesome Pants",
        "sku":                  "ABC-123",
        "unit_price":           1999,
        "qty":                  3,
        "item_image_url":       "http://merchantsite.com/images/awesome-pants.jpg",
        "item_url":             "http://merchantsite.com/products/awesome-pants.html"
        "categories": [
            ["Home", "Bedroom"],
            ["Home", "Furniture", "Bed"]
        ],
      }],
      "shipping_amount":        1000,
      "tax_amount":             500,
      "total":                  5997
  });

affirm.checkout.open()

4. Gérer les rappels

Une fois que vous avez lancé un paiement et que le client a confirmé son prêt Affirm, nous envoyons une demande HTTP avec le checkout_token à l'URL que vous avez définie dans l'objet checkout (user_confirmation_url). Par défaut, Affirm envoie cette requête via POST. Toutefois, vous pouvez configurer l'objet de paiement pour qu'Affirm envoie cette requête via GET.

Vous choisissez comment nous envoyons le paramètre checkout_token en définissant le paramètre user_confirmation_url_action dans l'objet de validation de commande.

  • La configuration sur POST envoie le checkout_token dans le corps de la demande HTTP (paramètre par défaut).
  • En lui donnant la valeur GET , on envoie le checkout_token dans la chaîne de requête de la demande HTTP .

5. Créer une transaction

Lorsqu'un client réussit à passer à la caisse, c'est enregistré comme une nouvelle tentative d'achat. Cela doit être géré côté serveur pour être traité via notre API Transaction.