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
| Resource | Description |
|---|---|
| Party | Banking party (account holder) identified by a Fiserv PartyId |
| Account | Bank account (DDA, SAV, LOAN, CDA) associated with a party, including current balance and currency |
| Transaction | Posted 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:
- POST to
<tokenURL>/tokenwith Basic auth (apiKey:apiSecret) andgrant_type=client_credentials - Bearer token is attached to all subsequent EFX API calls
- Tokens are refreshed automatically before expiry
Configuration Attributes
| Attribute | Type | Required | Description |
|---|---|---|---|
apiKey | String (secret) | Yes | Banking Hub API key |
apiSecret | String (secret) | Yes | Banking Hub API secret |
organizationId | String | No | Organization ID assigned to your Fiserv core banking institution. Required for Signature, Premier, Precision, and other core systems. |
partyIds | Collection | No | List of Fiserv PartyId strings to crawl. If omitted, party IDs are auto-discovered via the party list endpoint. |
transactionLookbackDays | String | No | Days of transaction history to retrieve. Defaults to 365 |
hostURL | String | Yes | Banking Hub base URL for your institution (e.g. https://bankinghub.fiservapis.com/banking/efx/v1) |
tokenURL | String | Yes | OAuth2 token URL for your institution (e.g. https://bankinghub.fiservapis.com/fts-apim/oauth2/v2) |
API Endpoints Used
| Endpoint | Purpose |
|---|---|
POST /fts-apim/oauth2/v2/token | OAuth2 token acquisition |
POST /partyservice/parties/parties/secured/list | Auto-discover party IDs (paginated, used when partyIds is omitted) |
POST /partyacctrelservice/partyacctrel/partyacctrel/secured | Fetch accounts for a party |
POST /accttranservice/acctmgmt/acctTrn/secured | Fetch transaction history for an account (paginated) |
Graph Nodes Produced
| KType | Display Field | Description |
|---|---|---|
fiserv.party.Party | PartyId | Account holder |
fiserv.party.Account | AcctId | Bank account with balance |
fiserv.transaction.Account | AcctId | Account node from transaction service |
fiserv.transaction.Transaction | Desc | Individual transaction record |
Joiner Bot Rules
- Party → Account: Links
fiserv.party.Partytofiserv.party.AccountviapartyId - Account → Transaction: Links
fiserv.transaction.Accounttofiserv.transaction.TransactionviaacctId - 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).