Utilisation de l'API Subaccounts

Vue d'ensemble

Cette rubrique décrit un cas d'utilisation dans lequel un partenaire utilise l'API Subaccounts pour gérer avec succès les clients finaux.

Conditions préalables

Vous devez connaître le Concepts principaux associée à l'API Subaccounts.

Création d'un Subaccounts

Un partenaire décide de créer un Subaccounts pour chaque client final et peut ainsi utiliser des identifiants API distincts pour chacun des clients finaux et voir leurs dépenses. Ceci est illustré dans le diagramme suivant :

Subaccounts with shared balance

Pour créer un Subaccounts, le code suivant peut être utilisé :

Rédiger le code

Ajouter ce qui suit à create-subaccount.sh:

curl -X "POST" "https://api.nexmo.com/accounts/$VONAGE_API_KEY/subaccounts" -u $VONAGE_API_KEY:$VONAGE_API_SECRET   \
     -H "Content-Type: application/json"  \
     -d $'{"name":"'$NEW_SUBACCOUNT_NAME'", "secret":"'$NEW_SUBACCOUNT_SECRET'"}'

Voir la source complète

Exécutez votre code

Enregistrez ce fichier sur votre machine et exécutez-le :

bash create-subaccount.sh

Transfert de crédits

Le partenaire ne pouvait pas contrôler les dépenses de ses clients finaux parce qu'ils partageaient tous le même solde. Un client final avait l'habitude de consommer occasionnellement tout le solde partagé, bloquant ainsi l'accès aux API de Vonage pour les autres clients finaux du partenaire. Le partenaire a décidé de fixer un solde individuel et d'attribuer une limite de crédit à ce client final.

NOTE : Le partenaire aurait pu faire en sorte que ses comptes soient prépayés.

Chaque Subaccounts peut se voir attribuer un solde individuel et une limite de crédit, comme le montre le diagramme suivant :

Credit allocation

L'extrait de code suivant illustre l'attribution d'un montant de crédit spécifié à un Subaccounts :

Rédiger le code

Ajouter ce qui suit à transfer-credit.sh:

curl -X "POST" "https://api.nexmo.com/accounts/$VONAGE_API_KEY/credit-transfers" -u $VONAGE_API_KEY:$VONAGE_API_SECRET   \
     -H "Content-Type: application/json"  \
     -d $'{"from":"'$VONAGE_API_KEY'", "to":"'$SUBACCOUNT_KEY'", "amount": '$AMOUNT'}'

Voir la source complète

Exécutez votre code

Enregistrez ce fichier sur votre machine et exécutez-le :

bash transfer-credit.sh

Vérification du solde de tous les Subaccounts

Le partenaire décide de mettre en place un suivi. Il est possible de vérifier périodiquement le solde de tous les Subaccounts à l'aide de l'extrait de code suivant :

Rédiger le code

Ajouter ce qui suit à get-subaccounts.sh:

curl "https://api.nexmo.com/accounts/$VONAGE_API_KEY/subaccounts" -u $VONAGE_API_KEY:$VONAGE_API_SECRET

Voir la source complète

Exécutez votre code

Enregistrez ce fichier sur votre machine et exécutez-le :

bash get-subaccounts.sh

Attribution de crédits supplémentaires

Après un certain temps, le partenaire a remarqué que le client final 1 (sous-compte 1) avait utilisé tout son crédit (40 sur 40) et ne pouvait plus effectuer d'appels API. Le partenaire avait le choix entre attendre que le client final 1 le paye (et ensuite effectuer un paiement à Vonage et transférer un solde correspondant au sous-compte) ou augmenter la limite de crédit du client final immédiatement afin que le client final 1 puisse continuer à utiliser l'API de Vonage. Le partenaire a décidé d'allouer un crédit supplémentaire. Le Partenaire a 40 = |-60| - |-20| crédit disponible, et décide d'allouer 20 au Subaccounts. Ceci est illustré dans le diagramme suivant :

Additional credit

Transferts de solde en fin de mois

À la fin du mois, le partenaire a reçu une facture de 70 € de Vonage (pour toutes les dépenses de tous ses Account). Le client final 1 (sous-compte 1) a couvert 45 des 50 € qu'il avait dépensés. Le partenaire a donc transféré 45 € au solde du sous-compte 1. Ceci est illustré dans le diagramme suivant :

Additional credit

Le code suivant montre comment transférer le solde vers un Subaccounts :

Rédiger le code

Ajouter ce qui suit à transfer-balance.sh:

curl -X "POST" "https://api.nexmo.com/accounts/$VONAGE_API_KEY/balance-transfers" -u $VONAGE_API_KEY:$VONAGE_API_SECRET \
     -H "Content-Type: application/json"  \
     -d $'{"from":"'$VONAGE_API_KEY'", "to":"'$SUBACCOUNT_KEY'", "amount": '$AMOUNT'}'

Voir la source complète

Exécutez votre code

Enregistrez ce fichier sur votre machine et exécutez-le :

bash transfer-balance.sh

Suspension d'un Subaccounts

Le Partenaire a apprécié la possibilité de contrôler les dépenses du sous-compte et a décidé d'affecter le solde individuel et le crédit de 30 € au client final 2 (sous-compte2). Le Partenaire, qui surveillait les dépenses de ses sous-comptes, a remarqué que le sous-compte2 avait consommé 25 € de son solde. Alarmé par le taux de dépense du sous-compte 2, le Partenaire a décidé de suspendre temporairement le sous-compte 2. Le code pour suspendre un Subaccounts est montré ici :

Rédiger le code

Ajouter ce qui suit à suspend-subaccount.sh:

curl -X "PATCH" "https://api.nexmo.com/accounts/$VONAGE_API_KEY/subaccounts/$SUBACCOUNT_KEY" -u $VONAGE_API_KEY:$VONAGE_API_SECRET \
     -H "Content-Type: application/json"  \
     -d $'{"suspended":true}'

Voir la source complète

Exécutez votre code

Enregistrez ce fichier sur votre machine et exécutez-le :

bash suspend-subaccount.sh

Réactivation d'un Subaccounts

Après avoir discuté avec le sous-compte2, le Partenaire décide de réactiver le compte du sous-compte2. Ceci peut être réalisé en utilisant le code suivant :

Rédiger le code

Ajouter ce qui suit à reactivate-subaccount.sh:

curl -X "PATCH" "https://api.nexmo.com/accounts/$VONAGE_API_KEY/subaccounts/$SUBACCOUNT_KEY" -u $VONAGE_API_KEY:$VONAGE_API_SECRET \
     -H "Content-Type: application/json"  \
     -d $'{"suspended":false}'

Voir la source complète

Exécutez votre code

Enregistrez ce fichier sur votre machine et exécutez-le :

bash reactivate-subaccount.sh

Résumé

Dans cette rubrique, vous avez vu comment utiliser l'API Subaccounts pour gérer les clients finaux dans des scénarios typiques.

Autres ressources