Filtruj konta, do których masz dostęp

Za pomocą interfejsu Merchant Accounts API możesz wyświetlić przefiltrowaną listę kont, do których masz dostęp, w tym również subkont. Możesz filtrować według wyświetlanych nazw i relacji z innymi kontami. Możesz np. odfiltrować konta o wyświetlanych nazwach zawierających ciąg znaków "store", które też mają stan połączenia PENDING, aby zobaczyć wszystkie sklepy, które nie zaakceptowały jeszcze prośby o połączenie kont.

Aby wyświetlić wszystkie subkonta, wywołaj accounts.v1beta.accounts.listSubAccounts.

Aby wyświetlić przefiltrowaną listę wszystkich kont, do których masz dostęp, w tym subkont i wszystkich kont, na których masz konto User, wywołaj metodę accounts.v1beta.accounts.list i określ kryteria filtrowania w polu filter.

Szczegółowe informacje o składni pola filter znajdziesz w dokumentacji składni filtra.

Oto rodzaje filtrów, których możesz użyć:

Filtry konta

Możesz używać tych pól do filtrowania na poziomie account:

  • accountName: filtrowanie według accountName zasobu account.
  • relationship(...): filtruje według typu relacji między kontem a innym kontem. W jednym żądaniu możesz uwzględnić wiele filtrów relationship(...).

Filtry relacji

Za pomocą funkcji relationship(...) możesz filtrować na podstawie tych kryteriów:

  • providerId: identyfikator sprzedawcy dostawcy usług. Jeśli np. filtr powinien zwracać tylko konta, które mają usługę dostarczaną przez account/123, użyj funkcji providerId = 123.
  • callerHasAccessToProviderFilter(): filtry dla kont powiązanych z dostawcą usług, do którego masz dostęp.
  • externalAccountId: identyfikator zewnętrznego konta dostawcy usług dla konta, któremu udostępnia usługę.
  • accountIdAlias: Alias identyfikatora konta skonfigurowany na potrzeby relacji.
  • service(...): usługa świadczona w ramach danej relacji. Jedna funkcja relationship(...) może zawierać wiele funkcji service(...).

Filtry usług

Funkcji service(...) możesz używać do dalszego filtrowania kont na podstawie stanu ich relacji i typów usług dostarczanych przez te relacje:

  • handshakeState: stan umowy o świadczenie usług między dwoma kontami. Akceptuje te wartości:
    • PENDING
    • APPROVED
  • type: Rodzaj usługi świadczonej przez dostawcę. Akceptuje te wartości:
    • ACCOUNT_MANAGEMENT Kontem zarządza usługodawca.
    • ACCOUNT_AGGREGATION Dostawca jest pośrednikiem gromadzącym konto.

Przykłady

Oto kilka przykładów filtrów, które możesz wypróbować.

Odfiltruj konta, których wyświetlane nazwy zawierają słowo „sklep” i dostawców o identyfikatorze „123”:

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

Filtruj wszystkie subkonta konta „123”:

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

Filtruj konta z zatwierdzonymi usługami zarządzania kontem:

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

Wyświetl konta z określonym aliasem i identyfikatorem, które mają dostęp do dostawcy. W przypadku tej prośby musisz też mieć dostęp do dostawcy:

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

Co dalej