Flow Overview
Understanding the steps in the Fiskil consent flow
The Fiskil Link widget guides users through a multi-step consent flow. Understanding each step helps you design a better user experience and handle edge cases.
Flow Steps
1. Institution Selection
Users first see a list of available institutions (banks or energy providers) they can connect. The list is filtered based on your account configuration.
2. Authentication
After selecting an institution, users authenticate with their existing credentials at that institution. This typically involves:
- Username/password entry
- Multi-factor authentication (SMS, email, or app-based)
- Security questions
3. Account Selection
Once authenticated, users see a list of their accounts at the institution. They select which accounts to share with your application.
4. Consent Confirmation
Users review the data being shared and the consent duration. This screen displays:
- Your company name and logo
- Data types being requested
- Consent period (how long you'll have access)
- Purpose of data access (your configured use cases)
5. Completion
After confirming, users are returned to your application with a successful consent. You can now access their data via the Fiskil APIs.
Handling Different Outcomes
Successful Completion
The user completed the entire flow. You receive a consent_id and can start fetching data.
User Cancellation
The user closed the widget or clicked cancel. No consent was created.
Authentication Failure
The user entered incorrect credentials or failed multi-factor authentication. They can retry or cancel.
Institution Unavailable
Occasionally an institution may be temporarily unavailable. The user will see an error message and can try again later.
Best Practices
- Prepare Users: Explain what data you'll access and why before launching the Link widget
- Handle All Outcomes: Implement proper error handling for cancellations and failures
- Listen for Webhooks: Don't rely solely on the client callback—use webhooks for reliable data sync notifications
- Test Thoroughly: Use the sandbox environment to test various scenarios
Was this page helpful?