Querying Card Products and Financial Accounts
Overview
This guide explains how to query your Card Product and Financial Account settings with the Highnote API. These two nesting entities hold almost all of your configuration:
- Card Product: Blueprint for a program. Defines the capabilities, rules, credit terms (if applicable), and fee structure. Settings attached to the Card Product apply to all of its Financial Accounts.
- Financial Account: Single account opened under a Card Product. Account-level settings, lifecycle states, and balances attached to a Financial Account apply only to that account.
Settings
Your effective settings come from both entities:
- The Card Product determines what the program allows.
- The Financial Account determines what is true of that one account.
Some settings are restricted to Highnote's dashboard applications. Throughout this guide they are marked dashboard only, either in an "Available to" column or inline after the field name. Everything unmarked is readable with an API key.
Restriction is per entity, not per field name: several fields are readable on CardProduct and dashboard-only on the FinancialAccount beneath it. Check the entity you are actually querying.
Selecting a dashboard-only field with an API key does not return a partial result — the whole operation fails validation and returns nothing.
Categories
Across both entities, settings fall into a few recurring categories:
- Features: Capability flags such as ACH, direct deposit, or on-demand funding, exposed as a
…Featureinterface you read withenabled. - Attached rules: Spend, velocity, risk, transfer, and check rules that limit what the product or account can do.
- Credit: Credit configuration and plans.
- Fees: Fee schedules.
- Lifecycle and balances (accounts only): Status, attributes, billing summary, and live velocity balances.
The rest of this guide walks each entity's fields by category, then gives one query that captures a full snapshot of both.
Finding your products and accounts
Every settings query in this guide takes a Card Product ID or a Financial Account ID, so the first step is finding yours.
Card Products have a top-level entry point and can be listed directly. Financial Accounts have no equivalent entry point. You reach one by traversing from its Card Product, from its account holder, or by direct lookup.
Card Products
Query.cardProducts is the top-level entry point. It is paginated and returns every CardProduct on your account.
query MyCardProducts {
cardProducts(first: 20) {
edges {
node {
id
name
commercial
usage
vertical
}
}
pageInfo {
hasNextPage
endCursor
}
}
}
MyCardProducts
Query
query MyCardProducts {
cardProducts(first: 20) {
edges {
node {
id
name
commercial
usage
vertical
}
}
pageInfo {
hasNextPage
endCursor
}
}
}
Result
{
"data": {
"cardProducts": {
"edges": [
{
"node": {
"id": "pd_36cb6f6818014bbba8644397ec5dfc86",
"name": "Consumer Prepaid",
"commercial": false,
"usage": "MULTI_USE",
"vertical": "CONSUMER_PREPAID"
}
}
],
"pageInfo": {
"hasNextPage": false,
"endCursor": "MQ"
}
}
}
}
Financial Accounts
There is no top-level financialAccounts query. To list yours, use one of three traversal paths:
| Path | When to Use It |
|---|---|
CardProduct.accounts(first, after, filterBy) | All Financial Accounts for a known Card Product |
USPersonAccountHolder.financialAccounts / USBusinessAccountHolder.financialAccounts | All Financial Accounts for a known account holder |
Query.node(id: "ac_…") | Direct lookup of a known Financial Account |
Card Product settings
CardProduct is the largest configuration surface in the API.
Identity and shape
| Field | What It Tells You |
|---|---|
id, name, vertical, commercial | Core identity and business intent |
usage | SINGLE_USE or MULTI_USE |
sourceTemplateId | Internal template the product was created from |
profiles | Attached ProductProfiles (program profiles) |
defaultCardProfileSet, cardProfileSets | BIN range, card art, and network configuration |
Features
cardProduct.features returns a list of CardProductFeature interfaces. Use inline fragments to read each capability's enabled flag and per-feature configuration:
features {
__typename
... on AuthorizedUserCardProductFeature { enabled }
... on ChargeCardProductFeature { enabled }
... on CollaborativeApplicationUnderwritingCardProductFeature { enabled }
... on CollaborativeAuthorizationCardProductFeature { enabled }
... on CreditLimitVarianceCardProductFeature { enabled }
... on DirectMerchantAcquiringCardProductFeature { enabled }
... on DisputeChargebackCardProductFeature { enabled }
... on EarlyDirectDepositCardProductFeature { enabled }
... on ExternalBusinessManagementCardProductFeature { enabled }
... on OnDemandFundingCardProductFeature { enabled }
... on PartialFundingCardProductFeature { enabled }
... on PointRewardCardProductFeature { enabled }
... on RevolvingCardProductFeature { enabled }
... on SecuredDepositCardProductFeature { enabled }
}
Rules attached at Card Product level
These apply to every Financial Account under the product.
| Field | Purpose | Available to |
|---|---|---|
attachedSpendRules | MCC, country, amount, and merchant-ID allow/blocklists | API key |
attachedVelocityRules | Velocity caps (count and amount over a time window) | API key |
attachedPlatformSpendRules, attachedPlatformVelocityRules | Read-only platform-mandated rules layered on top | API key |
attachedInterFinancialAccountTransferRules | Between-account transfer limits | API key |
attachedVelocityInterFinancialAccountTransferRules | Between-account velocity transfer limits | API key |
attachedRealtimeRiskRules | Real-time risk decisioning | API key |
attachedRewardRules, attachedRewardRedemptionConfigurations | Earn and redeem configurations | API key |
attachedTransferRules, attachedVelocityTransferRules | ACH and external transfer constraints | Dashboard only |
attachedRiskRules, attachedVelocityRiskRules, attachedVelocityRealtimeRiskRules | Risk-decisioning rules | Dashboard only |
attachedCheckRules, attachedVelocityCheckRules | Check-payment constraints | Dashboard only |
Credit
| Field | Purpose |
|---|---|
creditConfiguration | Credit product configuration (limits, plan templates, structure) |
creditPlans, creditPlanTemplates | Active plans and templates available to attach |
Fees
| Field | Purpose |
|---|---|
feeSchedules | Fee schedules attached to this product |
Activity and operations
These are paginated and filterable.
| Field | Purpose |
|---|---|
accounts | The Financial Accounts under this product |
paymentCards | All cards issued from this product |
searchCardProductApplications | Applications routed to this product |
transactionEvents | Recent transaction events on this product |
paymentCardTransactionChargebacks, paymentCardTransactionDisputes | Disputes and chargebacks scoped to the product |
integratorACHTransfers, externalACHTransfers, originatedAchTransfers, nonOriginatedAchTransfers, interFinancialAccountTransfers | Money-movement modalities scoped to the product |
groupOrders | Physical card group orders |
Financial Account settings
FinancialAccount exposes the largest per-account configuration surface in the API.
Identity and lifecycle
| Field | Purpose |
|---|---|
id, externalId, name, createdAt, updatedAt | Identity |
owner, accountHolder | Who owns the account and who the cardholder is (these can differ for authorized-user accounts) |
cardProduct | Parent product |
cardProductApplication | Origin application |
accountStatus, accountClosureReasons | Lifecycle state |
accountAttributes, financialAccountAttributesWithReason | Flagged states and reasons (for example, PAST_DUE, RESTRICTED_FROM_PURCHASE) |
partnerBankName | The underlying issuing bank |
customFields, userDefinedFields | Subscriber metadata |
revisionSnapshots | Audit-style history of changes |
Features
financialAccount.features returns FinancialAccountFeature interfaces — a different list than CardProduct.features. The enabled, effectiveFrom, and effectiveThrough fields live on the interface itself, so you can read enabled directly; use inline fragments when a feature has additional configuration.
features {
__typename
enabled
... on AchCapableFinancialAccountFeature { enabled }
... on AuthorizedUserAccountFeature { enabled }
... on CardFundingFinancialAccountFeature { enabled }
... on CheckCapableAccountFeature { enabled }
... on CommercialCreditPayInFullCardAccountFeature { enabled }
... on CreditCardAccountFeature { enabled }
... on DebitPaymentCardFinancialAccountFeature { enabled }
... on DirectDepositFinancialAccountFeature { enabled }
... on FleetCardAccountFeature { enabled }
... on IncomeAccountFinancialAccountFeature { enabled }
... on JustInTimeFundingFinancialAccountFeature { enabled }
... on MerchantSettlementFinancialAccountFeature { enabled }
... on NegativeBalanceReserveFinancialAccountFeature { enabled }
... on NonVerifiedFinancialAccountFeature { enabled }
... on OnDemandFundingFinancialAccountFeature { enabled }
... on PartialFundingFinancialAccountFeature { enabled }
... on PayrollAdvanceFinancialAccountFeature { enabled }
... on PayrollEmployerAdvanceFinancialAccountFeature { enabled }
... on PointRewardFinancialAccountFeature { enabled }
... on PrePaidPaymentCardFinancialAccountFeature { enabled }
... on PreprintedCardFinancialAccountFeature { enabled }
... on ProductFundingFinancialAccountFeature { enabled }
... on ProductReserveFinancialAccountFeature { enabled }
... on ProductSecuredDepositFinancialAccountFeature { enabled }
... on RepaymentFinancialAccountFeature { enabled }
... on ResetBalanceFinancialAccountFeature { enabled }
... on SecuredCreditPaymentCardFinancialAccountFeature { enabled }
... on SecuredDepositFinancialAccountFeature { enabled }
... on SuspenseFinancialAccountFeature { enabled }
... on VendorProvidedBankFinancialAccountFeature { enabled }
}
Balances and billing
| Field | Purpose |
|---|---|
ledgers | Underlying double-entry ledgers; the canonical balance source |
billingSummary | Latest closed statement: minimum payment due, payment due date, and remaining balance |
statementSnapshot | Latest balance snapshot |
statements | Paginated statement history |
activeBillingCycleConfiguration | Cycle anchor and cadence configuration |
billingCycleHistory | Past cycles |
delinquency, delinquencyState | Past-due tracking |
Direct deposit details
| Field | Purpose |
|---|---|
directDepositDetails | Direct deposit routing and account numbers |
The account and routing numbers sit behind directDepositDetails.restrictedDetails, which requires a Direct Deposit Details client token with the READ_RESTRICTED_DETAILS permission. Without that token the field resolves to an AccessDeniedError.
Attached rules
The same field names as the Card Product, scoped to the Financial Account — but not the same availability. The inter-account transfer rules are readable with an API key on CardProduct and dashboard-only on FinancialAccount, so check each entity separately rather than assuming a field carries the same access on both.
attachedSpendRulesattachedVelocityRulesattachedRealtimeRiskRulesattachedInterFinancialAccountTransferRules,attachedVelocityInterFinancialAccountTransferRules— dashboard onlyattachedRiskRules,attachedVelocityRiskRules,attachedVelocityRealtimeRiskRules— dashboard onlyattachedTransferRules,attachedVelocityTransferRules— dashboard only
Live velocity balances
How much room is left under each velocity rule:
velocitySpendRuleBalancesvelocityInterFinancialAccountTransferRuleBalancesvelocityTransferRuleBalances— dashboard onlyvelocityRiskRuleBalances,velocityRiskRealtimeRuleBalances— dashboard onlyplatformVelocitySpendRuleBalances— dashboard onlyruleOverrides— dashboard only
Activity
These are paginated and filterable.
| Field | What It Returns |
|---|---|
financialAccountActivities | All money-movement and ledger activity |
transactionEvents | Card transaction events |
paymentCards | Cards issued on this account |
paymentCardTransactionChargebacks, paymentCardTransactionDisputes | Disputes and chargebacks |
feeTransferEvents | Fees charged |
integratorACHTransfers, externalACHTransfers, originatedAchTransfers, nonOriginatedAchTransfers | ACH activity by direction and origination |
interFinancialAccountTransfers | Between-account transfers |
incomingScheduledTransfers | Future scheduled inbound transfers |
installmentAgreements, purchasePlans | Credit plan instances |
creditConfiguration | Per-account credit configuration |
reviewWorkflowEvents | Review history |
activeRiskTransactionAccountInvestigations, deposedRiskTransactionAccountInvestigations | Active and closed risk investigations — dashboard only |
globalNotes, accountReviewHistory | Operational notes |
Settings snapshot query
Supply a cardProductId and a financialAccountId of your choice. This query pulls a comprehensive settings snapshot for both entities in one round trip, with the feature unions resolved and a sample of each attached-rule connection.
This query selects only fields an API key can read, so you can run it as written. The attached-rule connections marked dashboard only in the tables above are deliberately left out — on CardProduct: attachedTransferRules, attachedRiskRules, attachedCheckRules; on FinancialAccount: attachedTransferRules, attachedRiskRules, attachedInterFinancialAccountTransferRules.
Adding any of them makes the whole query fail rather than returning a partial result. Most are dropped along with the connection type they return, which is itself restricted; FinancialAccount.attachedInterFinancialAccountTransferRules is dropped by its own field-level restriction, since the type it returns is readable on CardProduct. Either way the document fails validation and returns nothing. The unrestricted attachedRealtimeRiskRules is included on both types.
query CardProductAndFinancialAccountSnapshot(
$cardProductId: ID!
$financialAccountId: ID!
) {
# ============================================================
# CARD PRODUCT SETTINGS
# ============================================================
cardProduct: node(id: $cardProductId) {
__typename
... on CardProduct {
id
name
commercial
usage
vertical
sourceTemplateId
# Card design and BIN
defaultCardProfileSet {
id
name
}
cardProfileSets(first: 10) {
... on CardProfileSetConnection {
edges {
node {
id
name
}
}
}
}
# Profiles
profiles {
__typename
... on Node {
id
}
}
# Capability flags (every CardProductFeature subtype)
features {
__typename
... on AuthorizedUserCardProductFeature {
enabled
}
... on ChargeCardProductFeature {
enabled
}
... on CollaborativeApplicationUnderwritingCardProductFeature {
enabled
}
... on CollaborativeAuthorizationCardProductFeature {
enabled
}
... on CreditLimitVarianceCardProductFeature {
enabled
}
... on DirectMerchantAcquiringCardProductFeature {
enabled
}
... on DisputeChargebackCardProductFeature {
enabled
}
... on EarlyDirectDepositCardProductFeature {
enabled
}
... on ExternalBusinessManagementCardProductFeature {
enabled
}
... on OnDemandFundingCardProductFeature {
enabled
}
... on PartialFundingCardProductFeature {
enabled
}
... on PointRewardCardProductFeature {
enabled
}
... on RevolvingCardProductFeature {
enabled
}
... on SecuredDepositCardProductFeature {
enabled
}
}
# Credit and fees
creditConfiguration {
__typename
}
creditPlanTemplates(first: 10) {
edges {
node {
id
}
}
}
creditPlans(first: 10) {
edges {
node {
id
}
}
}
feeSchedules(first: 20) {
edges {
node {
id
status
}
}
}
# Subscriber-managed rules
attachedSpendRules(first: 20) {
edges {
node {
id
name
}
}
}
attachedVelocityRules(first: 20) {
edges {
node {
id
name
}
}
}
attachedInterFinancialAccountTransferRules(first: 20) {
... on InterFinancialAccountTransferRuleConnection {
edges {
node {
__typename
... on Node {
id
}
}
}
}
}
attachedRewardRules(first: 20) {
edges {
node {
__typename
}
}
}
attachedRewardRedemptionConfigurations(first: 20) {
edges {
node {
__typename
}
}
}
# Platform-imposed rules (read only)
attachedPlatformSpendRules(first: 20) {
edges {
node {
id
name
}
}
}
attachedPlatformVelocityRules(first: 20) {
edges {
node {
id
name
}
}
}
# Risk rules
attachedRealtimeRiskRules(first: 20) {
... on RealtimeRiskRuleConnection {
edges {
node {
__typename
... on Node {
id
}
}
}
}
}
# Sample of related accounts
accounts(first: 5) {
edges {
node {
id
name
accountStatus
partnerBankName
}
}
}
}
}
# ============================================================
# FINANCIAL ACCOUNT SETTINGS
# ============================================================
financialAccount: node(id: $financialAccountId) {
__typename
... on FinancialAccount {
id
externalId
name
createdAt
updatedAt
accountStatus
partnerBankName
# Lifecycle and state flags
accountAttributes
financialAccountAttributesWithReason {
attribute
reason
}
accountClosureReasons
# Relationships
cardProduct {
id
name
}
owner {
__typename
... on Node {
id
}
}
accountHolder {
__typename
... on Node {
id
}
}
cardProductApplication {
__typename
... on Node {
id
}
}
# Capabilities (enabled lives on the interface)
features {
__typename
enabled
}
# Direct deposit details (account and routing numbers require a
# Direct Deposit Details token with READ_RESTRICTED_DETAILS)
directDepositDetails {
id
restrictedDetails {
__typename
... on DirectDepositDetailRestrictedDetails {
number
routingNumber
}
}
}
# Balances and billing
billingSummary {
asOf
minimumPaymentDue {
value
currencyCode
decimalPlaces
}
paymentDueOn
remainingLatestClosedStatementBalance {
value
currencyCode
decimalPlaces
}
}
statementSnapshot {
__typename
}
activeBillingCycleConfiguration {
__typename
}
delinquency {
__typename
}
delinquencyState {
__typename
}
# Credit configuration
creditConfiguration {
__typename
}
purchasePlans {
__typename
}
# Attached rules (account level)
attachedSpendRules(first: 20) {
edges {
node {
id
name
}
}
}
attachedVelocityRules(first: 20) {
edges {
node {
id
name
}
}
}
attachedRealtimeRiskRules(first: 20) {
... on RealtimeRiskRuleConnection {
edges {
node {
__typename
... on Node {
id
}
}
}
}
}
# Live velocity balances
velocitySpendRuleBalances {
__typename
}
# Recent activity samples
paymentCards(first: 5) {
edges {
node {
id
last4
expirationDate
}
}
}
financialAccountActivities(first: 5) {
edges {
node {
__typename
}
}
}
transactionEvents(first: 5) {
edges {
node {
__typename
... on Node {
id
}
}
}
}
installmentAgreements(first: 5) {
edges {
node {
id
}
}
}
feeTransferEvents(first: 5) {
edges {
node {
__typename
}
}
}
# Subscriber metadata
customFields {
__typename
key
... on CustomStringField {
value
}
}
userDefinedFields(first: 5) {
edges {
node {
__typename
}
}
}
}
}
}
CardProductAndFinancialAccountSnapshot
Query
query CardProductAndFinancialAccountSnapshot(
$cardProductId: ID!
$financialAccountId: ID!
) {
# ============================================================
# CARD PRODUCT SETTINGS
# ============================================================
cardProduct: node(id: $cardProductId) {
__typename
... on CardProduct {
id
name
commercial
usage
vertical
sourceTemplateId
# Card design and BIN
defaultCardProfileSet {
id
name
}
cardProfileSets(first: 10) {
... on CardProfileSetConnection {
edges {
node {
id
name
}
}
}
}
# Profiles
profiles {
__typename
... on Node {
id
}
}
# Capability flags (every CardProductFeature subtype)
features {
__typename
... on AuthorizedUserCardProductFeature {
enabled
}
... on ChargeCardProductFeature {
enabled
}
... on CollaborativeApplicationUnderwritingCardProductFeature {
enabled
}
... on CollaborativeAuthorizationCardProductFeature {
enabled
}
... on CreditLimitVarianceCardProductFeature {
enabled
}
... on DirectMerchantAcquiringCardProductFeature {
enabled
}
... on DisputeChargebackCardProductFeature {
enabled
}
... on EarlyDirectDepositCardProductFeature {
enabled
}
... on ExternalBusinessManagementCardProductFeature {
enabled
}
... on OnDemandFundingCardProductFeature {
enabled
}
... on PartialFundingCardProductFeature {
enabled
}
... on PointRewardCardProductFeature {
enabled
}
... on RevolvingCardProductFeature {
enabled
}
... on SecuredDepositCardProductFeature {
enabled
}
}
# Credit and fees
creditConfiguration {
__typename
}
creditPlanTemplates(first: 10) {
edges {
node {
id
}
}
}
creditPlans(first: 10) {
edges {
node {
id
}
}
}
feeSchedules(first: 20) {
edges {
node {
id
status
}
}
}
# Subscriber-managed rules
attachedSpendRules(first: 20) {
edges {
node {
id
name
}
}
}
attachedVelocityRules(first: 20) {
edges {
node {
id
name
}
}
}
attachedInterFinancialAccountTransferRules(first: 20) {
... on InterFinancialAccountTransferRuleConnection {
edges {
node {
__typename
... on Node {
id
}
}
}
}
}
attachedRewardRules(first: 20) {
edges {
node {
__typename
}
}
}
attachedRewardRedemptionConfigurations(first: 20) {
edges {
node {
__typename
}
}
}
# Platform-imposed rules (read only)
attachedPlatformSpendRules(first: 20) {
edges {
node {
id
name
}
}
}
attachedPlatformVelocityRules(first: 20) {
edges {
node {
id
name
}
}
}
# Risk rules
attachedRealtimeRiskRules(first: 20) {
... on RealtimeRiskRuleConnection {
edges {
node {
__typename
... on Node {
id
}
}
}
}
}
# Sample of related accounts
accounts(first: 5) {
edges {
node {
id
name
accountStatus
partnerBankName
}
}
}
}
}
# ============================================================
# FINANCIAL ACCOUNT SETTINGS
# ============================================================
financialAccount: node(id: $financialAccountId) {
__typename
... on FinancialAccount {
id
externalId
name
createdAt
updatedAt
accountStatus
partnerBankName
# Lifecycle and state flags
accountAttributes
financialAccountAttributesWithReason {
attribute
reason
}
accountClosureReasons
# Relationships
cardProduct {
id
name
}
owner {
__typename
... on Node {
id
}
}
accountHolder {
__typename
... on Node {
id
}
}
cardProductApplication {
__typename
... on Node {
id
}
}
# Capabilities (enabled lives on the interface)
features {
__typename
enabled
}
# Direct deposit details (account and routing numbers require a
# Direct Deposit Details token with READ_RESTRICTED_DETAILS)
directDepositDetails {
id
restrictedDetails {
__typename
... on DirectDepositDetailRestrictedDetails {
number
routingNumber
}
}
}
# Balances and billing
billingSummary {
asOf
minimumPaymentDue {
value
currencyCode
decimalPlaces
}
paymentDueOn
remainingLatestClosedStatementBalance {
value
currencyCode
decimalPlaces
}
}
statementSnapshot {
__typename
}
activeBillingCycleConfiguration {
__typename
}
delinquency {
__typename
}
delinquencyState {
__typename
}
# Credit configuration
creditConfiguration {
__typename
}
purchasePlans {
__typename
}
# Attached rules (account level)
attachedSpendRules(first: 20) {
edges {
node {
id
name
}
}
}
attachedVelocityRules(first: 20) {
edges {
node {
id
name
}
}
}
attachedRealtimeRiskRules(first: 20) {
... on RealtimeRiskRuleConnection {
edges {
node {
__typename
... on Node {
id
}
}
}
}
}
# Live velocity balances
velocitySpendRuleBalances {
__typename
}
# Recent activity samples
paymentCards(first: 5) {
edges {
node {
id
last4
expirationDate
}
}
}
financialAccountActivities(first: 5) {
edges {
node {
__typename
}
}
}
transactionEvents(first: 5) {
edges {
node {
__typename
... on Node {
id
}
}
}
}
installmentAgreements(first: 5) {
edges {
node {
id
}
}
}
feeTransferEvents(first: 5) {
edges {
node {
__typename
}
}
}
# Subscriber metadata
customFields {
__typename
key
... on CustomStringField {
value
}
}
userDefinedFields(first: 5) {
edges {
node {
__typename
}
}
}
}
}
}
Variables
{ "cardProductId": "pd_36cb6f6818014bbba8644397ec5dfc86", "financialAccountId": "ac_c02204zs5i9mdnp381js3mksl5q8x9e6p6os" }
Result
{
"data": {
"cardProduct": {
"__typename": "CardProduct",
"id": "pd_36cb6f6818014bbba8644397ec5dfc86",
"name": "Consumer Prepaid",
"commercial": false,
"usage": "MULTI_USE",
"vertical": "CONSUMER_PREPAID",
"sourceTemplateId": "default_consumer_prepaid",
"defaultCardProfileSet": {
"id": "<CARD_PROFILE_SET_ID>",
"name": "Default Card Profile Set"
},
"cardProfileSets": {
"edges": [
{
"node": {
"id": "<CARD_PROFILE_SET_ID>",
"name": "Default Card Profile Set"
}
}
]
},
"profiles": [],
"features": [
{
"__typename": "DirectMerchantAcquiringCardProductFeature"
}
],
"creditConfiguration": null,
"creditPlanTemplates": {
"edges": []
},
"creditPlans": {
"edges": []
},
"feeSchedules": {
"edges": []
},
"attachedSpendRules": {
"edges": []
},
"attachedVelocityRules": {
"edges": []
},
"attachedInterFinancialAccountTransferRules": {
"edges": []
},
"attachedRewardRules": {
"edges": []
},
"attachedRewardRedemptionConfigurations": {
"edges": []
},
"attachedPlatformSpendRules": {
"edges": []
},
"attachedPlatformVelocityRules": {
"edges": []
},
"attachedRealtimeRiskRules": {
"edges": []
},
"accounts": {
"edges": [
{
"node": {
"id": "ac_c02204zs5i9mdnp381js3mksl5q8x9e6p6os",
"name": "Financial Account",
"accountStatus": "ACTIVE",
"partnerBankName": "<PARTNER_BANK_NAME>"
}
}
]
}
},
"financialAccount": {
"__typename": "FinancialAccount",
"id": "ac_c02204zs5i9mdnp381js3mksl5q8x9e6p6os",
"externalId": "8XB836QCX9",
"name": "Financial Account",
"createdAt": "2026-06-27T04:50:44.517Z",
"updatedAt": "2026-06-27T04:50:44.517Z",
"accountStatus": "ACTIVE",
"partnerBankName": "<PARTNER_BANK_NAME>",
"accountAttributes": [],
"financialAccountAttributesWithReason": [],
"accountClosureReasons": [],
"cardProduct": {
"id": "pd_36cb6f6818014bbba8644397ec5dfc86",
"name": "Consumer Prepaid"
},
"owner": {
"__typename": "USPersonAccountHolder",
"id": "ps_ah0104z4ut86egq6r1js3lt4ale8x53wmbp2"
},
"accountHolder": {
"__typename": "USPersonAccountHolder",
"id": "ps_ah0104z4ut86egq6r1js3lt4ale8x53wmbp2"
},
"cardProductApplication": {
"__typename": "AccountHolderCardProductApplication",
"id": "ap_22pcgm04zeomj6avgwa1js3lvibrwk2wvjb6wc"
},
"features": [
{
"__typename": "DirectDepositFinancialAccountFeature",
"enabled": true
},
{
"__typename": "PrePaidPaymentCardFinancialAccountFeature",
"enabled": true
}
],
"directDepositDetails": {
"id": "dd_6ad0d38f33594d0b89b17dc0076228b4",
"restrictedDetails": {
"__typename": "AccessDeniedError"
}
},
"billingSummary": null,
"statementSnapshot": null,
"activeBillingCycleConfiguration": null,
"delinquency": null,
"delinquencyState": null,
"creditConfiguration": null,
"purchasePlans": [],
"attachedSpendRules": {
"edges": []
},
"attachedVelocityRules": {
"edges": []
},
"attachedRealtimeRiskRules": {
"edges": []
},
"velocitySpendRuleBalances": [],
"paymentCards": {
"edges": []
},
"financialAccountActivities": {
"edges": []
},
"transactionEvents": {
"edges": []
},
"installmentAgreements": {
"edges": []
},
"feeTransferEvents": {
"edges": []
},
"customFields": [],
"userDefinedFields": {
"edges": []
}
}
}
}
Variables
{
"cardProductId": "<CARD_PRODUCT_ID>",
"financialAccountId": "<FINANCIAL_ACCOUNT_ID>"
}
Card Product IDs are prefixed pd_; Financial Account IDs are prefixed ac_. See Entity IDs and Object Types for the full prefix table.
Notes on running
- Highnote caps pagination at 20 items per page. Pass
first: 20or fewer, and page through more results withafterset to theendCursorfrompageInfo. - Connection types exposed through a
Payloadunion (for example,RiskRuleConnectionPayload) require an inline fragment such as... on RiskRuleConnectionto reachedges. node(id: "…")is the canonical way to fetch any entity by its global ID.- An
enabledflag returnstrueonly when the capability is currently active on the entity.
What is not directly queryable
- Webhook subscriptions are managed through
notificationEventsqueries and webhook mutations, not onCardProductorFinancialAccount. - API key configuration lives outside the Subscriber-facing schema.
- Partner-bank-side state is not directly visible; Highnote exposes
partnerBankNameand limited derived information. - Some platform-level configuration (interchange routing, network-side product enablement) is reflected in behavior but not exposed as raw configuration.
Introspection patterns
| When You See… | Do This |
|---|---|
A Connection field | Paginate with first and after; some accept filterBy |
A Payload union (a field whose type ends in Payload) | Use an inline fragment ... on ConcreteType to reach the data |
A Feature interface (CardProductFeature, FinancialAccountFeature) | Read enabled on the interface, then inline-fragment per subtype for additional configuration |
| A rule connection | Nodes are heterogeneous; fragment on the specific rule type for its configuration fields |
For the full filter-input shapes (for example, CardProductPaymentCardsFilterInput), introspect them with __type(name: "…") in your GraphQL client, or see the Searching the API guide.
Quick reference
- Start at
Query.cardProductsto enumerate your products. - From each
CardProduct, expandfeatures,attachedSpendRules,attachedVelocityRules,creditConfiguration,feeSchedules,cardProfileSets, andaccounts. - From each
FinancialAccount, expandfeatures,accountAttributes,billingSummary,directDepositDetails, and theattached…rule andvelocity…Balancescollections. - Use
node(id: "…")to drill into any specific entity by its global ID. - Pagination uses
firstandafter; filters usefilterBy.
The settings snapshot query returns a comprehensive snapshot in a single round trip.