Dépannage des problèmes de monétisation

Vous consultez la documentation Apigee Edge.
Accédez à la documentation Apigee X.
info

Cette rubrique fournit des informations et des conseils sur la résolution des problèmes de monétisation courants.

Développeur suspendu

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 de Public Cloud, 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 de Private Cloud, 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 avec les codes de motif suivants pour déterminer pourquoi le développeur a été suspendu.

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

Code du motif

Cause

Détails

INSUFFICIENT_FUNDS

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

Si le solde du compte de développeur prépayé ne dispose pas de fonds suffisants pour des transactions supplémentaires, le développeur sera suspendu.

Pour les développeurs postpayés, cette erreur peut se produire s'ils dépassent leur limite de crédit ou si la limite de crédit définie sur 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 acheté. Si le nombre de transactions est dépassé, le développeur est suspendu et ne peut pas effectuer de transactions supplémentaires.

NO_CURRENT_PUBLISHABLE_ENTITY

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

Un développeur doit acheter un plan tarifaire avant d'effectuer des transactions.

Solution

Erreur

Procédure de résolution

INSUFFICIENT_FUNDS

Le développeur doit s'assurer que le solde de son compte ou le crédit disponible est suffisant pour effectuer des transactions supplémentaires.

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 la date de début et la date 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

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

    Packages > Pro Package > Free Plan > Rate Card

NO_CURRENT_PUBLISHABLE_ENTITY

Le développeur doit acheter 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, tels que :

  • La fonctionnalité des webhooks ne fonctionne pas
  • Impossible de créer des webhooks
  • Les notifications de webhook ne sont pas déclenchées
  • Les rapports de monétisation n'affichent aucune transaction. Par exemple, les données Analytics indiquent que le développeur a effectué de nombreuses transactions sur une période spécifique, mais les rapports de monétisation n'en listent aucune.
  • Les transactions ne sont pas enregistrées

Messages d'erreur

Vous ne verrez peut-être aucun message d'erreur, mais vous constaterez les problèmes expliqués 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.

Diagnostiquer 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 listée comme RÉUSSIE dans la durée spécifiée, cela signifie qu'elles ne sont pas monétisées.

Les causes typiques de la non-monétisation des transactions sont les suivantes :

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

La règle Monetization Limits Check n'est pas utilisée dans le proxy d'API

Diagnostic

  1. Vérifiez si la règle Monetization Limits Check est associée aux proxys d'API.
  2. Si la règle n'est pas associée, cela peut être la raison pour laquelle les transactions sont listées comme ÉCHOUÉES.

Solution

Associez la règle Monetization Limits Check aux proxys d'API requis, comme décrit dans Appliquer des limites de monétisation aux proxys d'API.

Si le problème persiste, consultez la section L'APIProduct n'est pas monétisé.

L'APIProduct 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 seront listés dans les transactions). Un produit monétisé est un produit qui dispose d'au moins un plan tarifaire actif 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 de Public Cloud, 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 de Private Cloud, 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 être la raison pour laquelle les transactions ne sont pas monétisées.

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, consultez la section La règle d'enregistrement des transactions est mal définie.

La règle d'enregistrement des transactions est mal définie

Diagnostic

  1. Activez le traçage de l'interface utilisateur pour le proxy d'API auquel la règle Monetization Limits Check est associée.
  2. Sélectionnez une requête API spécifique dans le traçage de l'interface utilisateur.
  3. Sélectionnez le flux Analytics AX et vérifiez si les variables de flux de monétisation (mint) flow 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 traçage de l'interface utilisateur qui montre que les variables de flux de monétisation sont correctement configurées.

  5. Si vous constatez une erreur dans la variable mint.tx.status, cela indique que la règle d'enregistrement des transactions est mal définie.

Solution

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

Le développeur n'a pas acheté de plan tarifaire

Diagnostic

  1. Utilisez l'appel d'API de gestion suivant pour vérifier les plans tarifaires achetés par le développeur :
    1. Si vous êtes un utilisateur de Public Cloud, 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 Private Cloud, 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. En fonction de la réponse de l'appel ci-dessus, recherchez le plan qui était actif au moment où la transaction a été effectuée par le développeur.

Solution

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

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