Filtrer les comptes auxquels vous pouvez accéder

Vous pouvez utiliser l'API Merchant Accounts pour afficher une liste filtrée des comptes auxquels vous avez accès, y compris les sous-comptes. Vous pouvez filtrer par noms à afficher et par relations avec d'autres comptes. Par exemple, vous pouvez filtrer les comptes dont le nom à afficher contient la chaîne "store", et dont l'état d'association est également PENDING, pour afficher tous vos magasins qui n'ont pas encore accepté de demande d'association de comptes.

Pour afficher tous vos sous-comptes, appelez accounts.v1beta.accounts.listSubAccounts.

Pour afficher une liste filtrée de tous les comptes auxquels vous avez accès, y compris les sous-comptes et tous les comptes vous ayant en tant que User, appelez accounts.v1beta.accounts.list et spécifiez vos critères de filtre dans le champ filter.

Pour en savoir plus sur la syntaxe du champ filter, consultez la documentation de référence sur la syntaxe des filtres.

Voici les types de filtres que vous pouvez utiliser:

Filtres du compte

Vous pouvez utiliser les champs suivants pour filtrer au niveau account:

  • accountName: filtre en fonction du paramètre accountName de la ressource account.
  • relationship(...): filtre en fonction du type de relation entre le compte et un autre compte. Vous pouvez inclure plusieurs filtres relationship(...) dans une même requête.

Filtres de relations

Vous pouvez utiliser la fonction relationship(...) pour filtrer en fonction des critères suivants:

  • providerId: ID du marchand du fournisseur de services. Par exemple, si le filtre ne doit renvoyer que les comptes disposant d'un service fourni par account/123, utilisez providerId = 123.
  • callerHasAccessToProviderFilter(): filtre les comptes qui sont en relation avec un fournisseur de services auquel vous avez accès.
  • externalAccountId: ID de compte externe du fournisseur de services pour le compte auquel il fournit un service.
  • accountIdAlias: : alias d'ID de compte configuré pour la relation.
  • service(...): service fourni dans le cadre de la relation. Vous pouvez inclure plusieurs fonctions service(...) dans une fonction relationship(...).

Filtres de service

Vous pouvez utiliser la fonction service(...) pour filtrer davantage les comptes en fonction de l'état de leurs relations et des types de services qu'elles fournissent:

  • handshakeState: état d'un contrat de service entre deux comptes Accepte les valeurs suivantes :
    • PENDING
    • APPROVED
  • type: Type de service fourni par le fournisseur. Accepte les valeurs suivantes :
    • ACCOUNT_MANAGEMENT Le fournisseur gère le compte.
    • ACCOUNT_AGGREGATION Le fournisseur est un agrégateur du compte.

Exemples

Voici quelques exemples de filtres à essayer.

Filtrez les comptes dont le nom à afficher contient "store" et les fournisseurs avec l'ID "123":

accountName = "*store*" AND relationship(providerId = 123)

Filtrer tous les sous-comptes du compte "123":

relationship(providerId = 123 AND service(type = "ACCOUNT_AGGREGATION"))

Filtrez les comptes associés à des services de gestion de compte approuvés:

relationship(service(handshakeState = "APPROVED" AND type = "ACCOUNT_MANAGEMENT"))

Filtrez les comptes avec un alias et un ID spécifiques, et ayant accès à un fournisseur. Vous devez également avoir accès au fournisseur pour cette requête:

relationship(callerHasAccessToProviderFilter() AND externalAccountId = "extAcctId" AND accountIdAlias = "alias")

Étapes suivantes