Dépannage des problèmes de monétisation

Vous consultez la documentation d'Apigee Edge.
Consultez la documentation Apigee X.
en savoir plus

Cet article fournit des informations et des conseils pour résoudre les problèmes de monétisation les plus courants.

Suspendu par le développeur

Problème constaté

Le développeur est suspendu et ne pourra plus effectuer de transactions de monétisation ni d'appels d'API.

Messages d'erreur

<error>
   <messages>
        <message>Exceeded developer limit configuration -</message>
        <message>Is Developer Suspended - true</message>
   </messages>
</error>

Diagnostic

Pour déterminer la raison de la suspension du développeur, procédez comme suit:

  1. Exécutez l'appel d'API suivant pour identifier le code d'erreur associé au développeur suspendu :
    1. Si vous êtes un utilisateur du cloud public, utilisez l'API ci-dessous :
      curl -X GET "https://api.enterprise.apigee.com/v1/mint/organizations/{org}/suspended-developers/{developer-email}" -u orgadminEmail:password
      
    2. Si vous êtes un utilisateur du cloud privé, utilisez l'API ci-dessous :
      curl -X GET "http://<management-host>:<port#>/v1/mint/organizations/{org}/suspended-developers/{developer-email}" -u orgadminEmail:password
      
  2. Comparez le code d'erreur aux codes de motifs suivants pour déterminer la raison pour laquelle le développeur a été suspendu.

Voir aussi: Récapitulatif des codes de motif pour les développeurs suspendus

Code explicatif

Cause

Détails

INSUFFICIENT_FUNDS

Le solde du compte de développeur est épuisé

Si le solde prépayé du compte de développeur est insuffisant pour effectuer des transactions supplémentaires, le développeur sera suspendu.

Pour les développeurs avec post-paiement, cette erreur peut se produire s'ils dépassent leur limite de crédit ou si la limite de crédit définie pour la devise utilisée est épuisée.

LIMIT_VIOLATED

RATE_PLAN_RATE_BAND_EXCEEDED

Le développeur ne peut plus effectuer de transactions

Chaque développeur est autorisé à effectuer un nombre fixe de transactions en fonction du plan tarifaire souscrit. Si le nombre de transactions est dépassé, le développeur est suspendu et ne peut plus effectuer de transactions supplémentaires.

NO_CURRENT_PUBLISHABLE_ENTITY

Le développeur n'a acheté aucun plan tarifaire

Un développeur doit souscrire un forfait avant de terminer toute transaction.

Résolution

Error

Procédure de résolution

INSUFFICIENT_FUNDS

Le développeur doit s'assurer que le solde du compte ou le crédit disponible est suffisant pour effectuer toute transaction supplémentaire.

LIMIT_VIOLATED

RATE_PLAN_RATE_BAND_EXCEEDED

  1. Effectuez les appels d'API suivants pour obtenir, respectivement, le plan tarifaire du développeur et les détails de la transaction :
    • Exécutez l'appel d'API suivant pour obtenir les dates de début et de fin des plans tarifaires achetés par le développeur :
      http://docs.apigee.com/monetize/apis/get/organizations/%7Borg_name%7D/developers/%7Bdeveloper_id%7D/developer-accepted-rateplans
      
    • Exécutez l'appel d'API suivant pour obtenir le nombre de transactions réussies effectuées par le développeur :
      http://docs.apigee.com/monetize/apis/get/organizations/%7Borg_name%7D/transactions/developers/%7Bdeveloper_email_or_id%7D
      
  2. Dans l'interface utilisateur Edge, vous pouvez également vérifier le nombre d'appels qu'un développeur est autorisé à effectuer en sélectionnant:

    Packages > PackageName > RatePlanName > Rate Card (Packages > Nom du package > Nom du plan de tarifs > Tableau des tarifs).

    Par exemple, si le nom du package est Pro Package et qu'il s'agit d'un forfait sans frais, le chemin d'accès est le suivant:

    Packages > Package Pro > Forfait sans frais > Tableau des tarifs

NO_CURRENT_PUBLISHABLE_ENTITY

Le développeur doit souscrire un plan tarifaire pour pouvoir effectuer des appels d'API.

Problèmes de configuration de la monétisation

Symptômes

Les problèmes de configuration de la monétisation peuvent se manifester par différents symptômes, par exemple:

  • Les webhooks ne fonctionnent pas
  • Impossible de créer des webhooks
  • Les notifications de webhook ne sont pas déclenchées
  • Les rapports sur la monétisation n'affichent aucune transaction. Par exemple, les données Analytics indiquent que le développeur a effectué de nombreuses transactions au cours d'une période spécifique, mais les rapports de monétisation ne répertorient aucune de ces transactions.
  • Transactions non enregistrées

Messages d'erreur

Il se peut qu'aucun message d'erreur ne s'affiche, mais vous rencontrerez des problèmes, comme expliqué dans la section Symptômes.

Causes possibles :

Si vous constatez l'un des symptômes listés dans la section Symptômes, il est très probable que les transactions ne soient pas monétisées.

Identifier la cause

  1. Utilisez l'appel d'API de gestion décrit dans la section suivante pour vérifier si les transactions sont monétisées.

    Afficher l'état des transactions

  2. Si aucune transaction n'est répertoriée comme SUCCESS au cours de la durée spécifiée, cela signifie qu'elles ne sont pas monétisées.

Voici les causes les plus courantes d'une non-monétisation des transactions:

Les sections suivantes décrivent comment diagnostiquer et résoudre chaque problème.

Règle de vérification des limites de monétisation non utilisée dans le proxy d'API

Diagnostic

  1. Vérifiez si la règle de vérification des limites de monétisation est jointe aux proxys d'API.
  2. Si la stratégie n'est pas associée, cela peut être la raison pour laquelle les transactions sont listées comme FAILED.

Résolution

Associez la règle de vérification des limites de monétisation aux proxys d'API requis, comme décrit dans la section Appliquer des limites de monétisation aux proxys d'API.

Si le problème persiste, cochez la case Le produit d'API n'est pas monétisé.

Le produit d'API n'est pas monétisé

Diagnostic

  1. Vérifiez si le produit d'API est monétisé (seuls les produits d'API monétisés sont évalués et figureront dans les transactions). Un produit monétisé est un produit pour lequel au moins un plan tarifaire actif est disponible.
  2. Utilisez l'appel d'API de gestion suivant pour obtenir la liste des produits d'API monétisés :
    1. Si vous êtes un utilisateur du cloud public, utilisez l'API ci-dessous :
      curl -v https://api.enterprise.apigee.com/v1/mint/organizations/{org_id}/products?monetized=true -u orgadminEmail:password
      
    2. Si vous êtes un utilisateur du cloud privé, utilisez l'API ci-dessous :
      curl -v http://<management-host>:<port#>/v1/mint/organizations/{org_id}/products?monetized=true -u orgadminEmail:password
      
  3. Si le produit d'API associé à votre proxy d'API n'est pas monétisé, cela peut signifier que les transactions ne sont pas monétisées.

Résolution

Pour monétiser un produit d'API, procédez comme suit:

  1. Configurez la règle d'enregistrement des transactions.

  2. Vérifiez que le produit d'API dispose d'un plan tarifaire actif.

Si le problème persiste, cochez la case Règle d'enregistrement des transactions mal définie.

Règle d'enregistrement des transactions définie de manière incorrecte

Diagnostic

  1. Activez la trace de l'UI pour le proxy d'API auquel la règle de vérification des limites de monétisation est jointe.
  2. Sélectionnez une requête API spécifique dans la trace de l'interface utilisateur.
  3. Sélectionnez le flux Analytics AX et vérifiez si les variables de flux de monétisation (menthe) suivantes ont les valeurs appropriées :
    mint.tx.status - Should match the value set up for "success criteria" in the transaction recording policy for the API product being used. When tracing, the txProviderStatus in the transaction recording policy is stored in the variable 'mint.tx.status'.
    mint.tx.app_id - Application id of API product.
    mint.tx.prod_id - API product id.
    
  4. Voici un exemple de trace d'interface utilisateur qui montre que les variables de flux Mint sont correctement configurées.

  5. Si vous observez une erreur dans la variable mint.tx.status, cela signifie que la règle d'enregistrement des transactions n'est pas définie correctement.

Résolution

  1. Assurez-vous que toutes les étapes décrites dans Créer une règle d'enregistrement des transactions ont été correctement suivies lors de la création de la règle.
  2. La valeur de la clé correspond aux "critères de réussite de la transaction" définis dans la règle d'enregistrement de la transaction. Consultez des exemples de définition de critères de réussite d'une transaction dans une règle d'enregistrement des transactions.

Le développeur n'a pas souscrit de forfait

Diagnostic

  1. Utilisez l'appel d'API de gestion suivant pour valider les plans tarifaires souscrits par le développeur :
    1. Si vous êtes un utilisateur de cloud public, utilisez l'API ci-dessous :
      curl -v https://api.enterprise.apigee.com/v1/mint/organizations/{org}/developers/{dev_email}/products/{prod}/developer-rateplans -u orgadminEmail:password
      
    2. Si vous êtes un utilisateur de cloud privé, utilisez l'API ci-dessous :
      curl -v http://<management-host>:<port#>/v1/mint/organizations/{org}/developers/{dev_email}/products/{prod}/developer-rateplans -u orgadminEmail:password
      
  2. Sur la base de la réponse à l'appel ci-dessus, recherchez le forfait qui était actif au moment où la transaction a été effectuée par le développeur.

Résolution

Le développeur doit souscrire le plan tarifaire en fonction de ses exigences, puis exécuter les transactions/API.

Si le problème persiste, contactez l'assistance Apigee Edge.