Skip to main content

Fiserv Banking Hub (BP-FISERV)

Crawls Fiserv Banking Hub EFX API to collect party, account, and transaction data from Fiserv core banking systems (Signature, Premier, Precision, and others).

Resources Collected

ResourceDescription
PartyBanking party (account holder) identified by a Fiserv PartyId
AccountBank account (DDA, SAV, LOAN, CDA) associated with a party, including current balance and currency
TransactionPosted and effective transaction records with amount, direction (debit/credit), description, and running balance

Prerequisites

  • A Fiserv Banking Hub API application with an API key and secret (obtained from your Fiserv account team or integration portal)
  • The organization ID for your Fiserv core banking system (e.g. Signature, Premier, Precision)
  • Optionally, the party IDs of the account holders you want to crawl (if omitted, they are auto-discovered)

Authentication

The crawler uses OAuth2 client credentials flow:

  1. POST to <tokenURL>/token with Basic auth (apiKey:apiSecret) and grant_type=client_credentials
  2. Bearer token is attached to all subsequent EFX API calls
  3. Tokens are refreshed automatically before expiry

Configuration Attributes

AttributeTypeRequiredDescription
apiKeyString (secret)YesBanking Hub API key
apiSecretString (secret)YesBanking Hub API secret
organizationIdStringNoOrganization ID assigned to your Fiserv core banking institution. Required for Signature, Premier, Precision, and other core systems.
partyIdsCollectionNoList of Fiserv PartyId strings to crawl. If omitted, party IDs are auto-discovered via the party list endpoint.
transactionLookbackDaysStringNoDays of transaction history to retrieve. Defaults to 365
hostURLStringYesBanking Hub base URL for your institution (e.g. https://bankinghub.fiservapis.com/banking/efx/v1)
tokenURLStringYesOAuth2 token URL for your institution (e.g. https://bankinghub.fiservapis.com/fts-apim/oauth2/v2)

API Endpoints Used

EndpointPurpose
POST /fts-apim/oauth2/v2/tokenOAuth2 token acquisition
POST /partyservice/parties/parties/secured/listAuto-discover party IDs (paginated, used when partyIds is omitted)
POST /partyacctrelservice/partyacctrel/partyacctrel/securedFetch accounts for a party
POST /accttranservice/acctmgmt/acctTrn/securedFetch transaction history for an account (paginated)

Graph Nodes Produced

KTypeDisplay FieldDescription
fiserv.party.PartyPartyIdAccount holder
fiserv.party.AccountAcctIdBank account with balance
fiserv.transaction.AccountAcctIdAccount node from transaction service
fiserv.transaction.TransactionDescIndividual transaction record

Joiner Bot Rules

  • Party → Account: Links fiserv.party.Party to fiserv.party.Account via partyId
  • Account → Transaction: Links fiserv.transaction.Account to fiserv.transaction.Transaction via acctId
  • PartyAccount → TransactionAccount: Cross-links account nodes from the two services via acctId

Troubleshooting

403 Forbidden: Verify the organizationId matches the core system type for your credentials. The EFXHeader must include the correct org ID.

422 Unprocessable Entity: The request body format may be incorrect for the selected core system. Ensure AcctType values are valid for the target core (DDA, SAV, LOAN, CDA).

1120 No Records Match Selection Criteria: The account exists but has no transactions in the requested date range. Try increasing transactionLookbackDays.

Token errors: Confirm apiKey and apiSecret are from a Banking Hub application (not Commerce Hub, which is a separate Fiserv product).