Cette action lit les données JeriCommerce d’un client : son profil, son solde de points et son niveau. Utilisez-la pour décider de la suite d’une automatisation, par exemple envoyer un message différent aux clients proches de leur prochaine récompense, ou pour afficher les données de fidélité dans vos propres systèmes.

Mise en place

Utilisez l’action JeriCommerce Get customer dans un workflow Shopify Flow. Elle renvoie les données JeriCommerce du client aux étapes suivantes : vous pouvez donc les utiliser dans des conditions et des actions.

1

Ajouter l’action

Dans Shopify, ouvrez Flow, créez ou modifiez un workflow, puis ajoutez Get customer après votre déclencheur.

2

Renseigner l’adresse e-mail

Dans Email, ajoutez l’adresse e-mail du client. Utilisez Add variable pour la reprendre du déclencheur.

3

Utiliser les données dans les étapes suivantes

Dans une condition ou une action ultérieure, utilisez Add variable pour choisir les données client dont vous avez besoin, comme son solde. Les données sont regroupées comme dans la réponse de l’API : loyaltyData contient le solde de points (balance), userData le nom et le téléphone, et customerTier les points de niveau.

Si l’adresse e-mail n’appartient à aucun client de votre programme, l’étape échoue et la raison apparaît dans l’historique d’exécution du workflow.

Les webhooks Klaviyo ne peuvent qu’envoyer des données, pas en lire : un webhook ne peut donc pas récupérer les détails d’un client. Vous n’en avez pas besoin : activez Custom Fields dans l’intégration Klaviyo, et JeriCommerce tient ces propriétés à jour dans chaque profil Klaviyo :

Propriété Klaviyo Contenu
balance Le solde de points du client.
tier-name Le nom de son niveau VIP actuel.
tier-balance Ses points de niveau.
tier-entered-at La date à laquelle il a atteint son niveau actuel.
tier-expires-at La date d’expiration de son niveau actuel.
birthdate Sa date de naissance.
jericommerce_download_wallet_pass_url Son lien de téléchargement de la carte de fidélité.

Utilisez-les dans les filtres de flow, les segments et les messages, comme n’importe quelle autre propriété de profil. Consultez Synchroniser les champs personnalisés avec Klaviyo pour l’activer et pour la liste complète.

GET https://api.jericommerce.com/v1/programs/{program_slug}/customers/{email}

Remplacez {email} par l’adresse e-mail du client, encodée pour une URL (par exemple, ana%2Bvip%40example.com pour ana+vip@example.com). Envoyez votre clé API dans l’en-tête api-key. Consultez Authentification via l’API.

Une requête réussie renvoie 200 avec le client :

{
  "id": "6f1d2c3b-...",
  "programId": "a1b2c3d4-...",
  "email": "customer@example.com",
  "origin": "SHOPIFY",
  "language": "en",
  "referral": null,
  "utmSource": null,
  "utmMedium": null,
  "utmCampaign": null,
  "balanceNotifications": true,
  "tierNotifications": true,
  "rewardAvailableNotifications": true,
  "locationNotifications": true,
  "marketingNotifications": true,
  "referralEarned": false,
  "joinedAt": "2026-03-02T10:15:00.000Z",
  "createdAt": "2026-03-02T10:15:00.000Z",
  "updatedAt": "2026-10-01T08:00:00.000Z",
  "userData": {
    "externalCustomerId": "4455885",
    "firstName": "Ana",
    "lastName": "García",
    "phone": null,
    "birthdate": "1990-05-14",
    "emailVerified": true
  },
  "loyaltyData": {
    "loyaltyCustomerId": "155445",
    "balance": 1250,
    "memberSince": "2026-03-02",
    "tierStatus": null,
    "referralLink": "https://..."
  },
  "customerTier": {
    "currentTierId": "9e8d7c6b-...",
    "carryTierId": "9e8d7c6b-...",
    "currentTierPoints": 320,
    "carryTierPoints": 900,
    "tierChangedAt": "2026-06-01T05:00:00.000Z",
    "recalculationDate": "2027-01-01T05:00:00.000Z"
  }
}

Les objets imbriqués contiennent aussi leurs propres champs id, customerId, createdAt et updatedAt, omis ici pour garder l’exemple court.

Champs du client

Champ Remarques
origin D’où vient le client : API, INITIAL_SYNC, JERICOMMERCE, SHOPIFY ou UNKNOWN.
language La langue du client. Peut être null.
referral, utmSource, utmMedium, utmCampaign Comment le client est arrivé lorsqu’il a rejoint le programme. Peuvent être null.
balanceNotifications, tierNotifications, rewardAvailableNotifications, locationNotifications, marketingNotifications Les notifications Wallet que le client autorise.
referralEarned true quand le client a déjà obtenu sa récompense de parrainage.
joinedAt La date à laquelle le client a rejoint le programme. Peut être null.

userData

Le profil du client. Vaut null si le client n’a pas encore de données de profil. firstName, lastName, phone et birthdate peuvent être null. externalCustomerId est l’ID provenant de votre système, envoyé avec la synchronisation des clients.

loyaltyData

Les informations de fidélité du client. Vaut null si le client n’a pas encore de solde. balance est un nombre entier de points. tierStatus n’est renseigné que lorsqu’un système de fidélité externe l’envoie via la synchronisation de la fidélité.

customerTier

La progression du client dans les niveaux VIP. Vaut null si le programme n’a pas de niveaux ou si le client n’a pas encore de niveau. La réponse contient des ID de niveau, pas des noms de niveau.

Champ Remarques
currentTierId, currentTierPoints Le niveau actuel du client et les points gagnés pendant la période en cours.
carryTierId, carryTierPoints Le niveau et les points reportés de la période précédente.
tierChangedAt La date du dernier changement de niveau.
recalculationDate Le prochain recalcul des niveaux. Peut être null.

Pour comprendre les points actuels et reportés, consultez Points actuels et points reportés.

Si aucun client n’a cette adresse e-mail, l’API répond 404 avec CUSTOMER_NOT_FOUND.

Construisez une requête prête à l’emploi avec vos propres valeurs :

Vos informations

Retrouvez-le dans Settings > Technical > Program Information.

Créez-en une dans Settings > Technical > API Keys. Elle reste dans votre navigateur.

Votre requête

curl --request GET \
  --url 'https://api.jericommerce.com/v1/programs/your-program-slug/customers/customer%40example.com' \
  --header 'api-key: your-api-key'

Collez-la dans un terminal pour tester la requête avec votre programme.