Réserver des webhooks (inventaire à la demande)

Configurez un point de terminaison HTTPS par offre qui renvoie des valeurs de champ pour les annonces COMPLEXES. Le paiement se termine toujours si l'appel échoue ; vous pouvez réessayer ou exécuter manuellement.

Récupérez des valeurs de licence, de compte, ou de clé depuis votre serveur lorsque l'acheteur paie.

Quand utiliser les webhooks de réservation

Utilisez ceci pour l'inventaire COMPLEXE (unité unique) lorsque vous générez des clés ou des comptes dans votre propre système au moment de l'achat. Le stock local est toujours préféré ; le webhook ne remplit que le manque.

  • Fonctionne uniquement avec la livraison automatique INSTANTANÉE lorsque chaque unité est réellement assignée.
  • Configurez un défaut au niveau de l'offre, ou remplacez par option de tarification.
  • HTTPS uniquement. La signature HMAC optionnelle correspond aux webhooks sortants.

Échecs sûrs pour le paiement

Si votre point de terminaison expire ou renvoie des données invalides, la commande reste PAYÉE. L'acheteur est facturé ; vous voyez une erreur sur la commande et pouvez réessayer de réserver ou d'attacher des clés manuellement.

Demander un contrat

Après le paiement, RMT POST un appel reserve.item par unité manquante avec commande, offre, option, schéma de champ, et quantité 1. Le modèle de demande JSON optionnel est fusionné avec {{placeholders}}.

Corps POST canonique (tronqué)

json
{
  "id": "rsv_…",
  "type": "reserve.item",
  "order": { "uid": "…", "reference": "…", "url": "…" },
  "offer": { "url": "…", "title": "…", "pageUrl": "…" },
  "option": { "id": 1, "name": "Standard" },
  "fields": [{ "id": 10, "name": "Licence", "type": "text", "required": true }],
  "quantity": 1
}

Réponse et mappage de champ

Retournez 2xx JSON. Mappez des chemins comme $.license sur les champs d'élément, ou retournez { "entries": [{ "fieldId": 10, "value": "KEY-…" }] }.

Réponse de commodité

json
{
  "entries": [
    { "name": "Licence", "value": "AAAA-BBBB-CCCC" }
  ]
}
  • Licence uniquement : mappez un champ texte depuis $.license ou $.key.
  • Compte : mappez les champs e-mail et mot de passe depuis $.email et $.password.
  • Les champs requis manquants après mappage comptent comme un échec.

Tester, réessayer, et sécurité

Utilisez Tester dans l'éditeur d'offres (envoie dryRun: true). Sur la page de commande, réessayez de réserver après avoir corrigé votre point de terminaison. Ne jamais enregistrer des secrets ou des clés complètes dans des e-mails.

  1. 1Enregistrez l'URL HTTPS, la carte de réponse, et le secret optionnel sur l'étape des Articles de l'offre.
  2. 2Exécutez le Test et confirmez les aperçus mappés.
  3. 3En cas d'échec, ouvrez la commande, réessayez de réserver, ou créez/attribuez une clé manuellement.

Ne pas appeler la réservation avant le paiement

RMT n'appelle votre point de terminaison qu'après que le paiement a réussi, donc les paiements abandonnés ne brûlent pas les licences.