/

to search

Introducing Setu Changelog Check it out ↗

#Get Active FIPs

The GET Active FIP List API is the new version of our API to call the list of Active FIPs from which your customers can discover accounts, and consent to share data. The Active FIP List API works in a manner that

  • Dynamically activates and deactivates the status of FIPs based on performance.
  • Can be used to simply check the status of FIPs that are active or inactive on the ecosystem.
  • Can be used by FIUs as a mode of selection of FIPs/providers where a user has an account.
  • Multi-AA Support: Now tracking OneMoney, Finvu, Anumati, Saafe, and more!
  • Dual-Metric System: Combined data fetch + consent approval rates
  • Provides real-time success rates to help FIUs make data-driven decisions about creating consents, allowing them to route users to alternate data collection methods when FIP performance is poor.
  • Get detailed event-level performance metrics directly from AAs (Finvu, Anumati) including latency percentiles and success rates for each step in the AA flow
  • Access P50, P95, P99 latency metrics and success rates for specific events like Discovery, Consent Request, Data Fetch, etc.

#Details Shared in the FIP List API

Below is the parameters shared in the FIP List API that gives you each of the relevant details of the FIPs. These key details can be used by you for purposes like - offering a list of FIPs for your end-users to select or routing users to the Setu AA flow based on whether an FIP is active or not.

FieldDescription
nameThe name of the FIP - this is typically their brand name in camel case format.
fipIdThe unique identifier for the FIP in the central registry of participants maintained by Sahamati. This can be used in Context filters if you want auto-discovery or to only discover accounts from a particular institution. This is also the ID that is available in the logs of data fetch transactions.
fiTypesThis refers to the type of data available via the FIP. For example, an FIP with fiTypes “DEPOSITS“ will have Savings or Current Accounts available and be able to share bank statements upon user consent
statusThe Status field gives you the up-to-date status of the FIP. This will determine whether the FIP’s accounts can be discovered and whether data can be fetched from this FIP. More details on the statuses in the next section.
dataFetchSuccessRateThe data fetch success rate for any FIP is calculated based on successful data retrievals in the last 1 hour.

Formula: (Number of successful data fetches / Total number of data sessions created) × 100

Example: If data sessions are created for 100 FIP accounts and 80 are successfully fetched
Data Fetch Success Rate = (80/100) × 100 = 80%

If data fetch success rate is unavailable (minimum 100 accounts fetched needed): System will return a null value
consentConversionRateThe consent approval rate is calculated based on consent approvals in the last 1 hour.

Formula: (Number of approved consents / Total number of opened consent) × 100

Example: If 100 consents were opened with FIP specified in context filter and 70 were approved
Consent Approval Rate = (70/100) × 100 = 70%

If consent approval rate data is unavailable (Minimum 20 opened consent needed): System will use only data fetch success rate
aaWiseHealthMetricsAvailable only with expanded=true query parameter. Provides detailed event-level metrics from each AA including latency percentiles (P50, P95, P99) and success rates for specific AA flow events like Discovery, Consent Request, Data Fetch, etc. Data is sourced directly from AA health APIs and updated every 10 minutes.

#Categories of FIP Status

Below is the list of statuses for FIPs that you will see in a typical GET FIP List response.

StatusDescription
ACTIVEIs an available FIP for account discovery, account linking, consent and data fetches
INACTIVEThis is an unavailable FIP. If you are using this to route customers to AA — please route your customers to alternate methods of data collection.
TEMPORARILY_INACTIVEThis is an FIP that has been disabled for breaching SLIs on performance. If you are using this to route customers to AA — please route your customers to alternate methods of data collection. However, this is a temporary status and will be moved to ACTIVE status once their performance has improved. Do not redirect your customers to the consent flow when an FIP status is INACTIVE or TEMPORARILY_INACTIVE as that will mean their consents and/or data fetches are likely to fail.

#Enhanced Health Metrics provided by AAs

By adding the expanded=true query parameter to any FIP API endpoint, you get access to detailed health metrics provided directly by Account Aggregators. This gives you:

Business Value:

  • Granular Performance Monitoring: Track performance at each step of the AA flow
  • Latency Analysis: Understand response times with P50, P95, P99 percentiles
  • AA-Specific Insights: Compare performance across different AAs (Finvu, Anumati)
  • Real-time Decision Making: Route users based on current AA and event-level performance

When to Use:

  • Building advanced FIP selection logic
  • Monitoring AA performance trends
  • Debugging integration issues
  • Creating performance dashboards
  • Making data-driven routing decisions

Data Freshness: Health metrics are updated every 10 minutes by polling AA endpoints directly.

#AA Flow Event Types

When using expanded=true, you get metrics for these Account Aggregator flow events:

Event NameDescriptionBusiness Impact
DISCOVERYAccount discovery process when user searches for accounts at the FIPHigh latency affects user experience during account selection
CONSENT_REQUESTConsent creation and submission to the FIPFailures here prevent users from proceeding with consent flow
LINKINGAccount linking process after user provides credentialsCritical for successful account connection
LINKING_CONFIRMConfirmation of successful account linkingAffects user confidence in the linking process
FI_NOTIFICATIONNotification sent by FIP about data requestLow success rates indicate FIP communication issues
FI_REQUESTActual data request sent to the FIPHigh latency delays data availability to users
DATA_FETCHRetrieval of financial data from the FIPCore metric for data availability and speed
UNLINKINGAccount unlinking/disconnection processImportant for account management features

#Health Metrics Explained

MetricDescriptionUse Case
latency_avgAverage response time in millisecondsOverall performance indicator
latency_p5050th percentile (median) response timeTypical user experience
latency_p9595th percentile response timePerformance under load
latency_p9999th percentile response timeWorst-case performance scenarios
success_ratePercentage of successful operationsReliability indicator
metrics_as_ofTimestamp of when metrics were last updatedData freshness verification

#FIP List API

Request
GET /v2/fips

Response
{
"data": [
{
"name": "Axis Bank",
"fipId": "AXIS001",
"fiTypes": [
"DEPOSIT"
],
"institutionType": "BANK",
"status": "ACTIVE",
"consentConversionRate": 93.95, // Aggregate of all AA's
"dataFetchSuccessRate": 97.55,
"aaWiseSuccessRate": [
{
"consentConversionRate": 95.35,
"dataFetchSuccessRate": 98.55,
"aa": "onemoney"
},
{
"consentConversionRate": 92.55,
"dataFetchSuccessRate": 96.55,
"aa": "anumati"
}
]
},
{
"name": "Federal Bank",
"fipId": "FDRLFIP",
"fiTypes": [
"DEPOSIT"
],
"institutionType": "BANK",
"status": "ACTIVE",
"consentConversionRate": 95.25,
"dataFetchSuccessRate": 95.25,
"aaWiseSuccessRate": [
{
"consentConversionRate": 95.25,
"dataFetchSuccessRate": 95.25,
"aa": "onemoney"
}
]
},
{
"name": "IndusInd Bank Ltd.",
"fipId": "fiplive@indusind",
"fiTypes": [
"DEPOSIT",
"TERM_DEPOSIT",
"RECURRING_DEPOSIT"
],
"institutionType": "BANK",
"status": "TEMPORARILY_INACTIVE",
"consentConversionRate": 45.20,
"dataFetchSuccessRate": 9.20,
"aaWiseSuccessRate": [
{
"consentConversionRate": 45.20,
"dataFetchSuccessRate": 9.20,
"aa": "finvu"
}
]
},
{
"name": "HDFC Bank",
"fipId": "HDFC-FIP",
"fiTypes": [
"DEPOSIT"
],
"institutionType": "BANK",
"status": "INACTIVE",
"consentConversionRate": null,
"dataFetchSuccessRate": null,
"aaWiseSuccessRate": []
}
],
"traceId": "1-64313583-255e3a0705424652664584b2"
}
}

#Get FIP by ID API

Request
GET /v2/fips/:id

Response
{
"data": [
{
"name": "Axis Bank",
"fipId": "AXIS001",
"fiTypes": [
"DEPOSIT"
],
"institutionType": "BANK",
"status": "ACTIVE",
"consentConversionRate": 93.95, // Aggregate of all AA's
"dataFetchSuccessRate": 97.55,
"aaWiseSuccessRate": [
{
"consentConversionRate": 95.35,
"dataFetchSuccessRate": 98.55,
"aa": "onemoney"
},
{
"consentConversionRate": 92.55,
"dataFetchSuccessRate": 96.55,
"aa": "anumati"
}
]
}
],
"traceId": "1-66ff79c7-46029a1f1aaa59083489fd46"
}

#Get FIPs by Status API

Request
GET /v2/fips?status=ACTIVE

Response
{
"data": [
{
"name": "Axis Bank",
"fipId": "AXIS001",
"fiTypes": [
"DEPOSIT"
],
"institutionType": "BANK",
"status": "ACTIVE",
"consentConversionRate": 93.95, // Aggregate of all AA's
"dataFetchSuccessRate": 97.55,
"aaWiseSuccessRate": [
{
"consentConversionRate": 95.35,
"dataFetchSuccessRate": 98.55,
"aa": "onemoney"
},
{
"consentConversionRate": 92.55,
"dataFetchSuccessRate": 96.55,
"aa": "anumati"
}
]
},
{
"name": "Federal Bank",
"fipId": "FDRLFIP",
"fiTypes": [
"DEPOSIT"
],
"institutionType": "BANK",
"status": "ACTIVE",
"consentConversionRate": 95.25,
"dataFetchSuccessRate": 95.25,
"aaWiseSuccessRate": [
{
"consentConversionRate": 95.25,
"dataFetchSuccessRate": 95.25,
"aa": "onemoney"
}
]
}
],
"traceId": "1-64313583-255e3a0705424652664584b2"
}

#Get FIPs by AA API

Request
GET v2/fips?aa={aaHandle} OR v2/fips/{fipId}?aa={aaHandle}

Response
{
"data": [
{
"name": "Axis Bank",
"fipId": "AXIS001",
"fiTypes": [
"DEPOSIT"
],
"institutionType": "BANK",
"status": "ACTIVE",
"consentConversionRate": 95.35, // OneMoney's consent conversion rate if passed AA is OneMoney
"dataFetchSuccessRate": 98.55,
}
],
"traceId": "1-67bbf88f-6153048b7fd4bc7913995114"
}

#Enhanced FIP List API with Health Metrics

Request
GET /v2/fips?expanded=true

Response
{
"data": [
{
"name": "Axis Bank",
"fipId": "AXIS001",
"fiTypes": [
"DEPOSIT"
],
"institutionType": "BANK",
"status": "ACTIVE",
"consentConversionRate": 69.88,
"dataFetchSuccessRate": 54.63,
"aaWiseSuccessRate": [
{
"aa": "onemoney",
"dataFetchSuccessRate": 54.63,
"consentConversionRate": 69.88
}
],
"aaWiseHealthMetrics": {
"finvu": [
{
"eventName": "DISCOVERY",
"metrics_as_of": "2025-08-19T03:46:00.000+00:00",
"latency_avg": 174,
"latency_p50": 119,
"latency_p95": 460,
"latency_p99": 634,
"success_rate": 100.0
},
{
"eventName": "CONSENT_REQUEST",
"metrics_as_of": "2025-08-19T03:46:00.000+00:00",
"latency_avg": 52,
"latency_p50": 45,
"latency_p95": 68,
"latency_p99": 68,
"success_rate": 100.0
},
{
"eventName": "LINKING",
"metrics_as_of": "2025-08-19T03:46:00.000+00:00",
"latency_avg": 404,
"latency_p50": 383,
"latency_p95": 405,
"latency_p99": 405,
"success_rate": 100.0
},
{
"eventName": "LINKING_CONFIRM",
"metrics_as_of": "2025-08-19T03:46:00.000+00:00",
"latency_avg": 72,
"latency_p50": 66,
"latency_p95": 67,
"latency_p99": 67,
"success_rate": 100.0
},
{
"eventName": "FI_NOTIFICATION",
"metrics_as_of": "2025-08-19T03:46:00.000+00:00",
"latency_avg": 5,
"latency_p50": 5,
"latency_p95": 6,
"latency_p99": 7,
"success_rate": 89.11
},
{
"eventName": "FI_REQUEST",
"metrics_as_of": "2025-08-19T03:46:00.000+00:00",
"latency_avg": 66,
"latency_p50": 59,
"latency_p95": 105,
"latency_p99": 167,
"success_rate": 100.0
},
{
"eventName": "DATA_FETCH",
"metrics_as_of": "2025-08-19T03:46:00.000+00:00",
"latency_avg": 38,
"latency_p50": 32,
"latency_p95": 65,
"latency_p99": 93,
"success_rate": 100.0
},
{
"eventName": "UNLINKING",
"metrics_as_of": null,
"latency_avg": 0,
"latency_p50": 0,
"latency_p95": 0,
"latency_p99": 0,
"success_rate": 0.0
}
],
"anumati": [
{
"eventName": "DISCOVERY",
"metrics_as_of": "2025-08-19T03:32:31.653+00:00",
"latency_avg": 203.21848739495798,
"latency_p50": 74.0,
"latency_p95": 74.242,
"latency_p99": 74.3364,
"success_rate": 100.0
},
{
"eventName": "CONSENT_REQUEST",
"metrics_as_of": "2025-08-19T03:32:31.653+00:00",
"latency_avg": 50.94230769230769,
"latency_p50": 34.255,
"latency_p95": 34.4845,
"latency_p99": 34.5049,
"success_rate": 100.0
},
{
"eventName": "DATA_FETCH",
"metrics_as_of": "2025-08-19T03:32:31.653+00:00",
"latency_avg": 46.38053544367739,
"latency_p50": 23.0,
"latency_p95": 23.0,
"latency_p99": 23.0,
"success_rate": 100.0
},
{
"eventName": "FI_REQUEST",
"metrics_as_of": "2025-08-19T03:32:31.653+00:00",
"latency_avg": 83.22635476270617,
"latency_p50": 49.0,
"latency_p95": 50.0,
"latency_p99": 50.0,
"success_rate": 100.0
},
{
"eventName": "LINKING",
"metrics_as_of": "2025-08-19T03:32:31.653+00:00",
"latency_avg": 375.38461538461536,
"latency_p50": 340.36,
"latency_p95": 340.684,
"latency_p99": 340.7128,
"success_rate": 100.0
},
{
"eventName": "LINKING_CONFIRM",
"metrics_as_of": "2025-08-19T03:32:31.653+00:00",
"latency_avg": 98.22222222222223,
"latency_p50": 31.28,
"latency_p95": 32.432,
"latency_p99": 32.5344,
"success_rate": 100.0
}
]
}
}
],
"traceId": "1-64313583-255e3a0705424652664584b2"
}
Using Get FIP List for routing end-users to AA Flows

FIUs can use the FIP List API to route their end users to the AA flow or non-AA flows (Like PDF uploads, net banking integrations or alternative data collection modes)if the FIP is temporarily deactivated if the provider is not part of the list of active FIPs. How can you as an FIU route your users and select FIPs (providers where your end-user had accounts) ? We offer two modes of account discovery.

The two methods are as follows.

  • Standard User Selection of FIPs: Here it is used to offer FIP (Bank, insurers, securities providers, etc) selection when a customer begins a consent flow from Setu

  • Custom routing an FIP selection: FIUs can use the API to have FIP selection on their own page OR “Pre-select” FIPs (a maximum of 6 FIPs can be selected in this method)and auto-discover accounts by passing FIP ID in the context parameter on the Create consent API.


Was this page helpful?