Émettez cartes cadeaux et eSIM en un seul appel
Un seul catalogue pour toutes les familles de produits. Une commande est tarifée au moment où vous la passez et jamais au-dessus du plafond que vous fixez, elle est idempotente sur votre portefeuille prépayé, et les webhooks sont signés — les nouvelles tentatives sont donc sans risque et le jour du lancement se passe sans surprise.
Les clés API sont émises et gérées dans le tableau de bord marchand une fois votre espace de travail approuvé.
Le parcours d'une commande
Une boucle courte — trois appels et un webhook signé — et c'est la même boucle pour toutes les familles de produits.
Trouver un produit
GET /products
Parcourez un catalogue unique de cartes cadeaux, de forfaits eSIM et de recharges par catégorie, pays ou texte — ou actualisez précisément les produits que vous vendez par identifiant.
Passer la commande
POST /orders
Envoyez l'article : il est tarifé et commandé en un seul appel, jamais au-dessus du plafond que vous fixez. Les rejeux avec la même clé renvoient la même commande.
Recevez le webhook
order.fulfilled
Un événement signé vous prévient dès que la livraison est terminée. Aucune boucle de polling.
Révéler le code
POST /orders/{id}/fulfillment
Récupérez codes et codes PIN via un point de terminaison dédié et audité — jamais mis en cache, chaque révélation comptabilisée.
Votre langage, du simple HTTPS
Une API REST claire et prévisible — du JSON en entrée, du JSON en sortie, un en-tête X-Api-Key, et aucun SDK requis. Trouver, commander, révéler : votre première commande tient en trois appels.
const BASE = "https://integration.xegora.com/api/v1";const response = await fetch(`${BASE}/orders`, { method: "POST", headers: { "X-Api-Key": process.env.XEGORA_API_KEY!, "Content-Type": "application/json", "Idempotency-Key": "order-10231", }, body: JSON.stringify({ clientReference: "po-10231", item: { productId, variantId, quantity: 1, currency: "USD" }, maximumTotal: 60.0, // the price your buyer saw }),});const order = await response.json();// 409 price_above_maximum carries quotedTotal — show the new price insteadconsole.log(order.status); // "reserved" — wait for "fulfilled", then reveal- Commandes idempotentes
- Webhooks signés
- Clés API à portée limitée
- Portefeuille préalimenté
L'essentiel de l'API, de bout en bout
De vraies structures de requêtes et de réponses — cliquez sur n'importe quelle ligne. Les retraits, l'historique des dépôts et les images de produits complètent l'ensemble ; la référence complète se trouve sur docs.xegora.com.
POST /api/v1/orders
Commandez sur votre portefeuille prépayé : envoyez l'article pour le tarifer et le commander en un seul appel (avec un maximumTotal facultatif), ou un quoteId. L'en-tête Idempotency-Key est obligatoire — une nouvelle tentative renvoie la même commande. Portée : orders.create.
{
"id": "0198e000-1111-7abc-9def-222233334444",
"clientReference": "po-10231",
"status": "reserved",
"total": 58.50,
"currency": "USD",
"lines": [
{ "productId": "0198d72d-99d6-75a6-9f12-971050ba7a5f", "variantId": "0198d72d-a15b-7cbf-…",
"productName": "Everyday Digital Gift Card", "variantLabel": "50", "quantity": 1,
"unitPrice": 58.50, "currency": "USD", "faceValue": 50, "faceCurrency": "EUR" }
],
"createdAtUtc": "2026-09-05T12:01:02Z",
"updatedAtUtc": "2026-09-05T12:01:02Z"
}L'infrastructure ennuyeuse dont vous avez vraiment besoin
Tout ce qui permet à une intégration d'émission de tenir face au trafic réel — idempotence, signatures, identifiants à portée limitée et un portefeuille qui ne peut pas dépenser plus que son solde.
Catalogue unifié
Cartes cadeaux, forfaits eSIM et recharges téléphoniques partagent un même schéma, un même flux de prix et un même circuit de commande. Intégrez une seule fois et chaque produit ajouté par Xegora est automatiquement à vous.
Commandes idempotentes
La création de commande et la révélation de livraison acceptent toutes deux un en-tête Idempotency-Key. Coupure réseau, délai dépassé, boucle de tentatives agressive — rejouez la requête autant de fois que vous le voulez : il n'existe qu'une seule commande.
Webhooks signés
order.processing, order.fulfilled, order.failed, order.refunded et wallet.credited sont envoyés via HTTPS avec une signature HMAC-SHA256 (X-Xegora-Signature), relancés selon une garantie « au moins une fois », et dédupliqués grâce à un X-Xegora-Event-Id stable.
Clés à moindre privilège
Chaque clé porte un ensemble explicite de portées — lecture du catalogue, devis, commande, lecture du portefeuille et mouvements de fonds sont des portées toutes distinctes — ainsi qu'une liste d'autorisation CIDR et une date d'expiration facultatives. La révocation est immédiate.
Portefeuille préalimenté
Les commandes réservent un montant sur votre solde prépayé et le prélèvent à la livraison ; en cas d'échec, la réservation est libérée automatiquement. Alimentez-le on-chain vers une adresse de dépôt permanente, et retirez les fonds inutilisés uniquement vers vos propres coordonnées de versement enregistrées.
Un catalogue pensé pour la sélection
Parcourez par catégorie, pays ou texte, filtrez les montants fixes ou libres, et actualisez les produits que vous vendez par identifiant en un seul appel — avec les étapes d'utilisation et les autres pays de la marque sur chaque produit, au prix de votre devise de vente.
Des prix de gros, sans surprise
Le devis, c'est le prix. Tout le reste de vos conditions commerciales est convenu lors de la mise en place de votre espace de travail marchand.
- Des prix de gros dans votre devise de vente — le total du devis est exactement le montant débité de votre portefeuille
- Aucuns frais cachés par appel ; une limite fixe de 120 requêtes/minute par espace de travail
- La formule de votre espace de travail (mise en service et conditions) est convenue lors de l'intégration marchand
- Les retraits de fonds inutilisés font l'objet d'un devis transparent — frais, montant net et date de versement indiqués d'avance
Prêt à émettre votre première commande ?
Demandez un espace de travail marchand depuis votre compte, faites-le approuver et émettez des clés API à portée limitée depuis le tableau de bord — votre première commande n'est alors qu'à trois appels. La référence complète vous attend sur docs.xegora.com.