Guide d'intégration
Ce guide explique comment intégrer Revclic dans votre plateforme e-commerce. Pour les spécifications complètes des endpoints, consultez la Référence de l'API.
Vue d'ensemble
L'intégration se compose de deux étapes :
- Capturer l'ID de redirection lorsqu'un visiteur arrive depuis un lien d'affilié
- Signaler la transaction lorsque le visiteur complète un achat
1. Capturer l'ID de redirection
Quand un acheteur clique sur un lien d'affilié, il est redirigé vers votre site web avec un paramètre revclic_rid dans l'URL.
Exemple d'URL entrante :
https://yourstore.com/product/123?revclic_rid=42
Vous devez :
- Extraire le
revclic_ridde l'URL - Le stocker dans un cookie ou une session le temps de la visite
Exemple en JavaScript
const urlParams = new URLSearchParams(window.location.search);
const revclicRedirectId = urlParams.get('revclic_rid');
if (revclicRedirectId) {
document.cookie = `revclic_rid=${revclicRedirectId}; max-age=2592000; path=/`;
}
Exemple en PHP
if (isset($_GET['revclic_rid'])) {
$_SESSION['revclic_rid'] = $_GET['revclic_rid'];
}
2. Signaler une transaction
Après un achat réussi, envoyez la transaction à Revclic via l'endpoint Create Transaction.
Recette : transaction basique avec redirection
Lorsque vous disposez du revclic_rid depuis le lien d'affilié, passez-le en tant que redirect_id. L'affilié est automatiquement résolu à partir de la redirection.
curl -X POST "https://api.revclic.com/merchants/{merchant_id}/transactions" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"redirect_id": 1,
"basket_items": [
{
"gtin": "1234567890123",
"name": "Laptop Stand",
"price": 49.99,
"quantity": 2,
"commission_rate": 10.0
}
]
}'
Recette : transaction basique sans redirection
Lorsqu'aucune redirection n'est disponible, vous devez fournir l'affiliate_id explicitement.
curl -X POST "https://api.revclic.com/merchants/{merchant_id}/transactions" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"affiliate_id": 1,
"basket_items": [
{
"gtin": "1234567890123",
"name": "Laptop Stand",
"price": 49.99,
"quantity": 2,
"commission_rate": 10.0
}
]
}'
Champs obligatoires par article :
| Champ | Description |
|---|---|
gtin |
Code d'identification du produit (EAN ou UPC) |
price |
Prix unitaire |
quantity |
Nombre d'unités |
commission_rate |
Pourcentage de commission pour cet article |
Champs optionnels :
| Champ | Description |
|---|---|
redirect_id |
L'ID de redirection capturé depuis le lien d'affilié. Lorsqu'il est fourni, l'affilié est résolu automatiquement. |
affiliate_id |
L'ID de l'affilié. Obligatoire lorsque redirect_id n'est pas fourni. |
name |
Nom du produit (pour l'affichage) |
status |
Statut initial de l'article : pending (par défaut), accepted ou rejected |
Recette : transaction avec articles pré-acceptés
Si votre politique de retour ne s'applique pas (ex. produits numériques, commandes non remboursables), vous pouvez signaler les articles comme déjà accepted à la création. Cela saute la période de validation et la commission est incluse dans la prochaine facture immédiatement.
curl -X POST "https://api.revclic.com/merchants/{merchant_id}/transactions" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"redirect_id": 1,
"basket_items": [
{
"gtin": "9876543210987",
"name": "Digital License",
"price": 19.99,
"quantity": 1,
"commission_rate": 15.0,
"status": "accepted"
}
]
}'
3. Valider ou rejeter des articles
Vous avez 3 mois pour examiner chaque article. Utilisez l'endpoint Update Transaction pour modifier les statuts des articles.
Recette : mettre à jour un seul article
Mettez à jour un article spécifique par son ID :
curl -X PUT "https://api.revclic.com/merchants/{merchant_id}/transactions/{transaction_id}" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"basket_items": [
{ "id": 123, "status": "accepted" }
]
}'
Recette : rejeter un article retourné
Si le client retourne un article :
curl -X PUT "https://api.revclic.com/merchants/{merchant_id}/transactions/{transaction_id}" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"basket_items": [
{ "id": 456, "status": "rejected" }
]
}'
Recette : mettre à jour plusieurs articles à la fois
Vous pouvez mettre à jour plusieurs articles en une seule requête :
curl -X PUT "https://api.revclic.com/merchants/{merchant_id}/transactions/{transaction_id}" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"basket_items": [
{ "id": 123, "status": "accepted" },
{ "id": 456, "status": "rejected" }
]
}'
Statuts des articles :
| Statut | Signification |
|---|---|
pending |
En attente de validation (par défaut) |
accepted |
Commission confirmée |
rejected |
Pas de commission (retourné, annulé, invalide) |
Règles de validation des articles
- Chaque article doit inclure son
id(retourné lors de la création de la transaction) - Vous ne pouvez modifier que le champ
status - Vous pouvez mettre à jour un, plusieurs ou tous les articles en une seule requête
- Les articles non examinés dans les 3 mois sont automatiquement acceptés
- La commission n'est calculée que pour les articles acceptés
Comprendre le champ status
Chaque transaction inclut un champ status en lecture seule qui est calculé automatiquement à partir des statuts de ses articles. Il ne peut pas être défini directement sur la transaction.
| Valeur | Condition |
|---|---|
pending |
Au moins un article est encore pending |
accepted |
Tous les articles sont accepted, ou un mélange de accepted et rejected |
rejected |
Tous les articles sont rejected |
Le status de la transaction est recalculé à chaque modification du statut d'un article.
Comprendre le champ reward
Chaque transaction inclut un champ reward en lecture seule qui reflète le cycle de facturation et de versement de la commission. Il est géré automatiquement par Revclic et ne peut pas être défini manuellement.
| Valeur | Signification |
|---|---|
pending |
La commission attend la fin de la période de validation et la génération d'une facture |
to_be_paid |
Une facture a été générée et est en attente de paiement par le marchand |
paid |
Le marchand a payé la facture — la commission est maintenant due à l'affilié |
complete |
Le versement à l'affilié a été effectué |
La valeur de reward progresse dans cet ordre et ne peut qu'avancer.
Bonnes pratiques
- Signalez les transactions rapidement — envoyez-les dès que la commande est confirmée
- Stockez l'ID de suivi de manière fiable — utilisez des sessions côté serveur ou des cookies sécurisés
- Validez les articles régulièrement — n'attendez pas l'acceptation automatique
- Utilisez des codes EAN/UPC pertinents — ils aident à identifier les produits dans les rapports
Endpoints associés
- Create Transaction — signaler un nouvel achat
- Update Transaction — valider ou rejeter des articles
- List Transactions — voir toutes les transactions
- List Invoices — voir les factures générées