Tout ce qu'il faut pour intégrer l'authentification produit, la vérification NFC et les certificats numériques dans votre application.
Base URL: https://api.sealtrust.io/v1Soyez opérationnel en 3 étapes. Créez votre premier produit authentifié en moins de 5 minutes.
Connectez-vous à votre tableau de bord SealTrust et générez une clé API depuis la page Paramètres.
# Navigate to your SealTrust dashboard
# Settings → API Keys → Create new key
# Copy your key — it won't be shown againAjoutez le SDK SealTrust à votre projet avec votre gestionnaire de paquets préféré.
npm install @sealtrust/sdk
# or
yarn add @sealtrust/sdkEnregistrez un produit et déclenchez le minting on-chain avec un seul appel API.
curl -X POST https://api.sealtrust.io/v1/products \
-H "Authorization: Bearer st_live_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"name": "Limited Edition Sneaker",
"sku": "SNK-001",
"category": "footwear",
"metadata": {
"color": "midnight blue",
"size": "42"
}
}'Toutes les requêtes API nécessitent une clé API valide dans l'en-tête Authorization.
Incluez votre clé API comme token Bearer dans chaque requête.
curl https://api.sealtrust.io/v1/products \
-H "Authorization: Bearer st_live_your_api_key"SealTrust fournit deux types de clés API pour différents environnements.
| Préfixe | Environnement | Utilisation |
|---|---|---|
| st_test_ | Sandbox | Développement et tests. Pas de transactions blockchain réelles. |
| st_live_ | Production | Production. Vérification NFC et minting on-chain réels. |
Les limites de débit sont appliquées par clé API et varient selon le plan.
| Plan | Limite | Burst |
|---|---|---|
| Starter | 100 req/min | 20 req/s |
| Business | 1,000 req/min | 50 req/s |
| Enterprise | 10,000 req/min | 200 req/s |
Créez, listez, mettez à jour et mintez des produits. Chaque produit peut être lié à un tag NFC et minté comme NFT on-chain.
Récupérez une liste paginée de vos produits.
| Parameter | Type | Required | Description |
|---|---|---|---|
| page | integer | optional | Numéro de page (défaut : 1) |
| per_page | integer | optional | Éléments par page (défaut : 20, max : 100) |
| status | string | optional | Filtrer par statut : active, pending_mint, minted, archived |
| category | string | optional | Filtrer par catégorie |
Créez un nouveau produit. Déclenchez optionnellement le minting NFT automatique.
| Parameter | Type | Required | Description |
|---|---|---|---|
| name | string | required | Nom du produit |
| sku | string | required | Référence unique (SKU) |
| category | string | optional | Catégorie du produit (ex : chaussures, accessoires) |
| description | string | optional | Description du produit |
| metadata | object | optional | Métadonnées clé-valeur personnalisées |
| auto_mint | boolean | optional | Minting NFT automatique à la création (défaut : false) |
Récupérez un produit par son ID, incluant le tag NFC et le statut NFT.
Mettez à jour les détails du produit. Seuls les champs fournis seront modifiés.
Déclenchez le minting NFT pour un produit. Le processus est asynchrone — utilisez les webhooks ou le polling pour suivre le statut.
Émettez des certificats numériques infalsifiables d'authenticité, de propriété ou de garantie. Chaque certificat est ancré on-chain.
Émettez un nouveau certificat pour un produit.
| Parameter | Type | Required | Description |
|---|---|---|---|
| product_id | string | required | ID du produit à certifier |
| type | string | required | Type de certificat : authenticity, ownership, warranty |
| issued_to | string | optional | Nom du destinataire du certificat |
| expires_at | string | optional | Date d'expiration (ISO 8601) |
Révoquez un certificat précédemment émis. Cette action est irréversible et enregistrée on-chain.
Vérifiez la validité d'un certificat, y compris la vérification on-chain.
Vérifiez l'authenticité des produits via NTAG 424 DNA Secure Dynamic Messaging (SDM) ou tap NFC direct.
Vérifiez un produit à l'aide des données cryptographiques d'un tag NFC NTAG 424 DNA. L'UID, le compteur et le CMAC sont extraits de l'URL NDEF du tag.
| Parameter | Type | Required | Description |
|---|---|---|---|
| uid | string | required | Identifiant unique du tag NFC sur 7 octets (hex) |
| ctr | string | required | Valeur du compteur de lecture sur 3 octets (hex) |
| cmac | string | required | Code d'authentification AES-CMAC sur 8 octets (hex) |
Les utilisateurs finaux peuvent vérifier les produits en approchant simplement le tag NFC avec leur smartphone. Aucune application requise.
Comment fonctionne la vérification par tap NFC :
Recevez des notifications en temps réel lorsque des événements surviennent dans votre compte SealTrust.
Enregistrez un endpoint webhook pour recevoir les événements.
| Événement | Description |
|---|---|
| product.created | Un nouveau produit a été créé |
| product.minted | Le NFT du produit a été minté on-chain |
| product.scanned | Le tag NFC du produit a été scanné |
| product.transferred | La propriété du produit a été transférée |
| certificate.issued | Un nouveau certificat a été émis |
| certificate.revoked | Un certificat a été révoqué |
| transfer.initiated | Un transfert de propriété a été initié |
| transfer.completed | Un transfert de propriété a été accepté |
| nfc.tag_linked | Un tag NFC a été lié à un produit |
Chaque requête webhook inclut un en-tête X-SealTrust-Signature. Vérifiez-le avec HMAC-SHA256 et votre secret webhook pour vous assurer de l'authenticité de la requête.
import crypto from 'crypto';
function verifyWebhook(
payload: string,
signature: string,
secret: string,
): boolean {
const expected = crypto
.createHmac('sha256', secret)
.update(payload)
.digest('hex');
return crypto.timingSafeEqual(
Buffer.from(signature),
Buffer.from(expected),
);
}
// In your webhook handler:
app.post('/webhooks/sealtrust', (req, res) => {
const signature = req.headers['x-sealtrust-signature'];
const isValid = verifyWebhook(
JSON.stringify(req.body),
signature,
process.env.SEALTRUST_WEBHOOK_SECRET,
);
if (!isValid) {
return res.status(401).send('Invalid signature');
}
const { type, data } = req.body;
switch (type) {
case 'product.minted':
handleProductMinted(data);
break;
case 'product.scanned':
handleProductScanned(data);
break;
}
res.status(200).send('OK');
});Créez des Passeports Numériques conformes ESPR avec transparence complète de la chaîne d'approvisionnement, traçabilité des matériaux et données d'empreinte carbone.
Le DPP SealTrust est conçu pour être conforme aux exigences du règlement européen sur l'écoconception des produits durables (ESPR) qui entrera en vigueur en 2027. Commencez dès maintenant à construire votre infrastructure DPP.
Créez ou mettez à jour le Passeport Numérique d'un produit.
Récupérez le Passeport Numérique d'un produit, incluant l'URL publique et le QR code.
Connectez SealTrust à vos outils existants et plateformes e-commerce.
Créez automatiquement des produits authentifiés depuis les commandes Shopify et synchronisez l'inventaire.
Plugin WordPress/WooCommerce pour l'enregistrement automatique des produits.
Intégration webservice PrestaShop pour la synchronisation du catalogue produit.
Synchronisez les données d'authentification produit avec les enregistrements CRM Salesforce.
Intégration ERP entreprise pour les workflows de fabrication et de chaîne d'approvisionnement.
Synchronisez les données produit avec les deals et fiches produit HubSpot CRM.
Intégration Odoo ERP pour la gestion des produits et la synchronisation de l'inventaire.
Intégration Oracle NetSuite pour les workflows de planification des ressources.
Intégration Microsoft Dynamics 365 pour la synchronisation produit CRM et ERP.
API REST et webhooks pour tout ERP ou back-office personnalisé.
Suivez ces étapes pour obtenir les identifiants requis par chaque connecteur.
Le SDK officiel SealTrust fournit une interface typée et basée sur les promesses pour toutes les opérations API.
npm install @sealtrust/sdk
# or
yarn add @sealtrust/sdk
# or
pnpm add @sealtrust/sdkimport { SealTrust } from '@sealtrust/sdk';
// Initialize with your API key
const st = new SealTrust('st_live_your_api_key', {
// Optional configuration
baseUrl: 'https://api.sealtrust.io/v1', // default
timeout: 30000, // 30s default
retries: 3, // auto-retry on 5xx
});// Create a product and mint its NFT
const product = await st.products.create({
name: 'Artisan Watch',
sku: 'WATCH-001',
autoMint: true,
});
// Wait for minting to complete
const minted = await st.products.waitForMint(product.id, {
pollInterval: 2000, // check every 2s
timeout: 120000, // max 2 min
});
console.log('NFT token ID:', minted.nft.tokenId);
console.log('View on chain:', minted.nft.explorerUrl);Toutes les erreurs API suivent un format cohérent avec des codes lisibles par la machine et des messages lisibles par l'humain.
En cas d'erreur, l'API retourne un objet JSON avec une clé error contenant le code, le message, le statut HTTP et un identifiant de requête unique pour le débogage.
{
"error": {
"code": "product_not_found",
"message": "No product found with ID 'prod_invalid'",
"status": 404,
"request_id": "req_abc123xyz"
}
}| HTTP | Code | Description |
|---|---|---|
| 400 | invalid_request | Le corps de la requête est malformé ou il manque des champs obligatoires. |
| 401 | unauthorized | Clé API manquante ou invalide. |
| 403 | forbidden | La clé API n'a pas les permissions pour cette action. |
| 404 | not_found | La ressource demandée n'existe pas. |
| 409 | conflict | La ressource existe déjà ou est dans un état conflictuel. |
| 422 | validation_error | Un ou plusieurs champs n'ont pas passé la validation. |
| 429 | rate_limited | Trop de requêtes. Réessayez après la période Retry-After. |
| 500 | internal_error | Une erreur inattendue s'est produite de notre côté. Contactez le support. |
| 502 | blockchain_error | Le nœud blockchain est temporairement injoignable. |
| 503 | service_unavailable | Le service est temporairement indisponible. Réessayez sous peu. |
Une architecture en couches conçue pour la sécurité, la scalabilité et la souveraineté des données européennes.
Couche de vérification
App consommateur · Tag NFC · Blockchain
Passerelle API
API REST · Webhooks · SDK
Couche applicative
Auth · Produits · Certificats · Événements · DPP
Couche de confiance et sécurité
Crypto NFC · Détection de clones · Score de confiance
Couche d'infrastructure
AWS (Paris) · Stockage chiffré · Hébergement européen
Hébergé sur AWS à Paris, France (eu-west-3) — Souveraineté des données européennes garantie.
Infrastructure
AWS eu-west-3 (Paris, France)
Base de données
Base de données relationnelle (chiffrement au repos)
Cache
Cache en mémoire (chiffrement en transit)
Stockage
Amazon S3 (chiffré au repos)
Blockchain
Base (Ethereum L2)
NFC
NTAG 424 DNA (AES-128)
Chiffrement
TLS 1.3 en transit, AES-256 au repos
Conformité
RGPD, EU DPP ready
Créez votre compte gratuit et commencez à authentifier vos produits en quelques minutes.