Bank Disablement

Lean may disable a bank integration to maintain platform reliability, protect users, or reflect changes in a bank’s systems. When this happens, the bank should no longer be offered to end-users for data or payments.

This page explains:

  • What disablement means
  • How disablement is represented in the API and webhooks
  • How clients should implement checks

What does “disabled” mean?

A disabled bank is unavailable for either data, payments, or both. Disablement can be triggered by:

  • Lean: e.g. when a bank changes its login flow or service becomes unstable
  • Clients: via the Developer Portal (disabling a bank for your own users)

How disablement is represented

In the /banks/v1 API

Each bank object contains an availability object:

"availability": {
  "active": {
    "payments": false,
    "data": false
  },
  "enabled": {
    "payments": true,
    "data": true
  }
}
  • availability.active → set by Lean when a bank is disabled at the platform level
  • availability.enabled → set by clients when a bank is disabled in the Developer Portal

Both must be true for a bank to be considered available. If either active or enabled is false, the bank should not be displayed.

In Webhooks

Disablement also triggers a webhook event.

  • Payload will contain the updated availability object
  • Integrators should handle these events and update their local state accordingly

Best practice for clients

When determining whether a bank is usable, always check:

availability.active.payments && availability.enabled.payments
availability.active.data && availability.enabled.data

If either condition is false, treat the bank as disabled for that product.

This ensures consistency whether the disablement originated from Lean or from your own portal configuration.


Debugging tips

  • If a bank appears active in /banks/v1 but disabled in the webhook logs, verify you are checking both active and enabled fields.
  • Use the Developer Portal webhook logs to confirm events were received and retried.
  • Remember: Lean may disable banks without prior notice if stability or compliance issues arise.

Availability logic diagram

flowchart TD
A[availability.active == true] --> C{Available?}
B[availability.enabled == true] --> C
C -->|Both true| D[Bank Available ✅]
C -->|Either false| E[Bank Disabled ❌]

This shows that a bank is only Available if both active (Lean-controlled) and enabled (client-controlled) are true.