Passer au contenu principal
C’est le moyen le plus rapide de commencer à utiliser l’offre de carte virtuelle de Sezzle. Un paiement par carte virtuelle implémente l’API Card Session pour fournir une solution facile à utiliser, en contexte, pour émettre et utiliser une carte virtuelle Sezzle comme moyen de paiement.
L’environnement hors production de Sezzle ne permet pas de tester le traitement des paiements avec votre fournisseur.
Le domaine d’origine doit être ajouté à la liste d’autorisation de Sezzle pour que le Virtual Card SDK fonctionne. Veuillez contacter votre Account Manager et il pourra le faire pour vous.

Checkouts

Virtual Card Checkout dans un iframe ou une fenêtre pop-up.

Card Details

Activez les détails de carte en clair via un événement de message ou la tokenisation.

Payments

Gérez le succès, l’échec ou l’annulation du paiement avec vos commandes de carte virtuelle.

Sezzle Button

Affichez le bouton de paiement Sezzle sur votre boutique.

Inclure le code SDK

Incluez le script suivant dans la <head> section de la page.
<script
    type="text/javascript"
    src="https://checkout-sdk.sezzle.com/checkout.min.js"
></script>

Configuration du Checkout

La première étape pour commencer avec le Virtual Card SDK est de configurer un nouvel objet Checkout.

Options de configuration

const checkoutSdk = new Checkout({
  mode: string,
  publicKey: string,
  apiMode: string,
  isVirtualCard: boolean,
});

Sezzle Button

Configuration du Sezzle Button

Placez le snippet d’élément de l’onglet Template à l’endroit où vous souhaitez que le Sezzle Button soit affiché sur la page, puis mettez à jour les attributs Options selon vos besoins.
<div id="sezzle-smart-button-container" style="text-align: center"></div>

Afficher le Sezzle Button

Ajoutez la fonction suivante pour afficher le bouton au moment approprié, par exemple lorsque la section des méthodes de paiement se charge, ou lorsque Sezzle est sélectionné comme méthode de paiement. Le paramètre correspond à l’élément créé à l’étape précédente.
checkoutSdk.renderSezzleButton("sezzle-smart-button-container");

Initialiser le Checkout

Gestionnaires d’événements

Le SDK utilise ces gestionnaires d’événements pour informer votre site de ce qui se passe lors du paiement. Implémentez chacun d’eux pour réagir aux actions de l’acheteur, comme compléter, annuler ou rencontrer une erreur.
checkoutSdk.init({
  onClick: function () {
    event.preventDefault();
    checkoutSdk.startCheckout({...});
  },
  onComplete: function (response) {
    console.log(response.data);
  },
  onCancel: function () {
    console.log("Checkout cancelled.");
  },
  onFailure: function () {
    console.log("Checkout failed.");
  },
});

Initialisation du Checkout

checkoutSdk.startCheckout({
  checkout_payload: {
    amount_in_cents: integer,
    currency: string,
    merchant_reference_id: string,
    customer: {
        email: string,
        first_name: string,
        last_name: string,
        phone: string,
        billing_address_street1: string,
        billing_address_street2: string,
        billing_address_city: string,
        billing_address_state: string,
        billing_address_postal_code: string,
        billing_address_country_code: string,
    },
    items: [
        {
            name: string,
            sku: string,
            quantity: integer,
            price: {
                amount_in_cents: integer,
                currency: string,
            },
        },
    ],
  },
});

onComplete avec les données de carte

Ce format de réponse fournit le numéro de carte complet (PAN) et CVV directement à votre JavaScript frontend. Si vos systèmes ne traitent pas déjà les données brutes des titulaires de carte, cela peut élargir votre périmètre de conformité PCI DSS. Pour une alternative plus sécurisée, voir onComplete avec tokenisation, qui maintient les données de carte hors du navigateur et limite leur traitement à votre serveur.
Le event.data contiendra un payload entièrement formé contenant le moyen de paiement du client. Ces informations ne correspondent pas au moyen de paiement utilisé pour payer Sezzle, mais à un moyen pouvant être utilisé via votre passerelle de paiement (Cybersource, Stripe, Braintree, etc).

event.data réponse

{
    "session_id": string,
    "card": {
        "firstName": string,
        "lastName": string,
        "pan": string,
        "cvv": string,
        "expiryMonth": string,
        "expiryYear": string
    },
    "holder": {
        "email": string,
        "phone": string,
        "firstName": string,
        "lastName": string,
        "address1": string,
        "address2": string,
        "city": string,
        "state": string,
        "country": string,
        "postalCode": string
    }
}

onComplete avec tokenisation

Recommandé pour la plupart des marchands. La tokenisation maintient les données de carte hors de votre navigateur et réduit votre périmètre de conformité PCI DSS. Les données de carte sont récupérées uniquement côté serveur.
La tokenisation est une fonctionnalité développée pour les marchands qui ne souhaitent pas que les informations de carte soient envoyées directement via l’événement message. À la place, le payload vers onComplete contiendra une chaîne de token de carte, que votre serveur peut échanger contre des données de carte en utilisant l’Virtual Card Data API. Le token est à usage unique et expire après 24 heures.

Initialisation du paiement

checkout.init({
    onClick: function () {
        event.preventDefault();
        checkout.startCheckout({
            checkout_payload: {
                ...
+               "card_response_format":"token"
            }
        });
    },
    onComplete: function (response) {
      console.log(response.data);
    },
    onCancel: function() {
        console.log("checkout canceled");
    },
    onFailure: function() {
        console.log("checkout failed");
    }
})

event.data réponse

{
    "card": {
        "token": string
    }
}

Obtenir les données de carte

Les données de carte virtuelle peuvent être obtenues en utilisant le token ci-dessus via la méthode Virtual Card Data méthode.

Définir l’ID de référence de commande

Dans de nombreux cas, l’ID de commande marchand ne sera pas généré avant la fin du paiement et la création d’une commande. Appelez setOrderReferenceID pour définir l’ID de référence de commande Sezzle avec l’ID de commande marchand une fois que la transaction par carte virtuelle a été complétée avec succès.

Utilisation du SDK

checkoutSdk.setOrderReferenceID({
    session_id: string,
    order_id: string,
});

Utilisation de l’API

Le Update Card Session Le point de terminaison API vous permet de mettre à jour l’ID de commande pour une session de carte donnée.