Ouvrir le paiement Affirm

Utilisez la fonction affirm.checkout.open() pour diriger les clients vers le portail de paiement sécurisé d'Affirm. Apprenez à initialiser la caisse, à configurer l’objet caisse et à implémenter des fonctions de rappel pour gérer le succès, l’échec et la validation.

Aperçu

Using the affirm.checkout.open() function, you can direct your customers to Affirm's secure payment portal. This guide outlines the steps for executing this feature.

Étapes de mise en œuvre

Utilisation de JavaScript pour l'initialisation

Initiate the checkout process by creating your checkout object with affirm.checkout(). To transition the customer to the Affirm Checkout portal, call affirm.checkout.open().

affirm.ui.ready(function(){
   affirm.checkout(checkoutObject);
   affirm.checkout.open();
})

Exemple

Voici un exemple de code pour vous guider tout au long du processus :

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"]
        ]
      }
   ],
      "discounts":{
         "RETURN5":{
            "discount_amount":500,
            "discount_display_name":"Returning customer 5% discount"
        },
        "PRESDAY10":{
            "discount_amount":1000,
            "discount_display_name":"President's Day 10% off"
      }
   },
   "metadata":{
      "shipping_type":"UPS Ground",
      "mode":"modal"
   },
   "order_id":"JKLMO4321",
   "currency":"USD",  
   "financing_program":"flyus_3z6r12r",
   "shipping_amount":1000,
   "tax_amount":500,
   "total":100000
});

affirm.checkout.open();

Pour obtenir plus d'informations, veuillez consulter notre page Objet de paiement ou la recette de l'objet de paiement dont le lien figure ci-dessous.

Paramètres et rappels

Arguments de méthode

ParamètreTypeDescription
checkoutObjectRequisL'objet contenant la charge utile des données pour le paiement du client.

Mécanismes de rappel

Notez que cette méthode ne retourne généralement pas de valeur.Définissez les URL de redirection à l'aide de l'objet de paiement.Si vos métadonnées sont définies comme modales, implémentez les fonctions de rappel suivantes :

  • onFail: Appelé lorsque le client quitte, annule ou est refusé dans le flux de paiement Affirm.
  • onSuccess: Triggered upon successful confirmation of the Affirm loan. This function yields a success object, which contains a checkout_id. Note that this checkout_id will be the value used to authorize the loan in the following Authorization request. The default onSuccess will complete a form submission to the user_confirmation_url with the method defined by user_confirmation_url_action. Specifying an onSuccess callback will override the default functionality.
  • onOpen: appelé lorsque le passage à la caisse d'Affirm est initialisé avec succès sur l'interface utilisateur.
  • OnValidationError: vous alerte en cas d'erreur de validation lors de la demande de paiement.
// Callback example
affirm.checkout.open({
    onFail: function(error) {
      // Error handling
    },
    onSuccess: function(checkout) {
      // Success procedures
    },
    onOpen: function(token) {
      // Initialization successful
    },
    onValidationError: function(checkout_validation_error) {
      // Validation error handling
    }
});