For Agents
Aggregate access to European bank accounts via PSD2: start authorization sessions, read balances and transactions, and initiate payments.
Install Jentic One Beta
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the Enable Banking API, or any other public or private API you need. You set the rules, the agent never sees your credentials, and every call is logged.
Two steps, two machines. Install the instance in a safe environment, then register your agent from wherever it runs.
Step 1: Jentic One Host machine
# On the machine that will host your Jentic One instance:
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Fenablebanking.com%2Fenablebanking" | shStep 2: Agent machine
# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Fenablebanking.com%2Fenablebanking" | sh
jentic register # connects your agent to your Jentic One instanceJentic One is in public beta. The setup above keeps your agent separate from the instance, which is what you want before using real credentials: an agent running as the same OS user as Jentic One can read its stored keys directly. Just evaluating? A single local install is fine to start. See the secure deployment guide for the tiers.
What an agent can do with Enable Banking API.
Start a PSD2 authorization session for a chosen ASPSP and obtain the redirect for user consent
Authorize an active user session and persist it for subsequent calls
Retrieve account details, balances, and transactions across consented accounts
GET STARTED
Use for: I need to start an open banking authorization for a user, Get the latest transactions on a connected bank account, Retrieve account balances for a user's linked accounts, Initiate a payment from a user's bank account
Not supported: Does not handle card processing, KYC/identity verification, or accounting ledger operations. Use for PSD2 account information and payment initiation only.
Jentic maintains a curated, agent-optimized OpenAPI specification for Enable Banking API, generated from the vendor's published API reference. Enable Banking also publishes its own OpenAPI 3.1.0 document, linked from that reference; the FAQ below names it. Enable Banking is an open banking aggregator that exposes a single PSD2-compliant API across European banks, covering authorization sessions, account information, balances, transactions, and payment initiation. The API handles the consent and session lifecycle so applications can read account data and initiate payments without integrating each bank individually. Use it for personal finance, accounting automation, and bill-pay products targeting the European market.
Initiate payments through the open banking payment flow
Delete a finished or failed payment, or end a session when access is no longer needed
List supported ASPSPs to drive bank-selection UX in onboarding
Patterns agents use Enable Banking API for, with concrete tasks.
★ Personal Finance Aggregation
Connect users' European bank accounts via PSD2 consent and pull balances and transactions into a personal finance app. The API handles authorization session creation, ASPSP selection, and the per-account transactions endpoint, so the app integrates one API rather than each bank individually. Product teams use this to build account aggregation features without becoming a regulated entity themselves.
POST /auth and POST /sessions to obtain a session, then GET /accounts/{account_id}/transactions for each account the user has consented to.
Accounting Automation
Pull bank transactions into accounting software so invoices and expenses can be reconciled automatically. The API exposes balances and transactions per account, with the session lifecycle handled by /sessions endpoints. Finance operations teams use this to keep the books reconciled in near real time rather than waiting for monthly statement uploads.
Call GET /accounts/{account_id}/balances and GET /accounts/{account_id}/transactions and post the results to the accounting system as journal entries.
Account-to-Account Payment Initiation
Initiate account-to-account payments directly from a user's bank without going through a card network. The API exposes POST /payments to create the payment and GET /payments/{payment_id} to check status; DELETE /payments/{payment_id} removes a finished or failed payment and is not a way to cancel one in flight. E-commerce and bill-pay products use this to reduce processing fees and offer direct bank checkout in Europe.
POST /payments with the debtor account, creditor account, and amount, then poll GET /payments/{payment_id} until status reaches a terminal state.
Agent-Driven Bank Linking
An agent in a financial assistant flow walks the user through bank selection, starts the authorization, and once consent returns reads accounts and transactions to produce a spending summary. Through Jentic the agent searches by intent, loads the schemas, and chains calls without bespoke client code. Linking a new account drops from a multi-step custom flow to a single agent task.
Search Jentic for 'connect a European bank account', execute GET /aspsps to list banks, POST /auth, POST /sessions, and GET /accounts/{account_id}/transactions, then summarise the last 30 days of spending.
14 endpoints — jentic maintains a curated, agent-optimized openapi specification for enable banking api, generated from the vendor's published api reference.
METHOD
PATH
DESCRIPTION
/auth
Start authorization for a user
/sessions
Authorize the user session
/accounts/{account_id}/balances
Get account balances
/accounts/{account_id}/transactions
Get account transactions
/payments
Initiate a payment
/payments/{payment_id}
Get a payment by ID
/aspsps
List supported ASPSPs
/auth
Start authorization for a user
/sessions
Authorize the user session
/accounts/{account_id}/balances
Get account balances
/accounts/{account_id}/transactions
Get account transactions
/payments
Initiate a payment
What agents get from Jentic-routed access to this vendor.
Setup
Enable Banking does not issue a static API key. Each call needs a fresh JWT signed RS256 against the certificate you registered, with kid, iss, aud and an expiry inside the 86400-second ceiling, so a direct integration means writing and maintaining token construction, signing and rotation. Through Jentic that is an install once, an import of the API, and one registration of the application credential.
Permission scoping
A rule bounds the agent to the Enable Banking operations it needs. Because the account id travels in the URL path on the details, balances and transactions operations, a rule can also confine reads to a single consented account. Payment creation identifies its target in the request body, so scoping there is by operation rather than by counterparty.
Credential isolation
The Enable Banking private key and application id are held encrypted by your own self-hosted Jentic One instance, not by a hosted service. The agent never receives the key: the instance signs each JWT and sets the Authorization header at call time.
Intent-based discovery
Agents search by intent (e.g., 'connect a European bank account') and Jentic returns matching Enable Banking operations with their input schemas, so the agent calls the right endpoint without reading docs.
Alternatives and complements available in the Jentic catalogue.
Specific to using Enable Banking API through Jentic.
Does Enable Banking publish its own OpenAPI specification, and how does it differ from this one?
Yes. Enable Banking publishes an OpenAPI 3.1.0 document at https://enablebanking.com/docs/api/reference/enablebanking-api.yaml, linked from its API reference, and that file is the canonical contract. The specification behind this page is a separate Jentic-curated OpenAPI 3.0.3 document generated from the same reference: it carries its own title, description and a single production server, and it covers 14 of the vendor document's 15 operations. Read the vendor file for the full response schemas.
What authentication does the Enable Banking API use?
The specification declares an HTTP Bearer scheme with bearerFormat JWT, applied to every operation. The bearer is a JWT you sign yourself with RS256, using the private key behind the certificate you registered with Enable Banking. Its header carries kid set to your application id, its body carries iss enablebanking.com and aud api.enablebanking.com, and the maximum accepted time-to-live is 86400 seconds. Through Jentic the signing key stays inside your own self-hosted instance.
Can I initiate payments with the Enable Banking API?
Yes. POST /payments creates the payment and GET /payments/{payment_id} reports its status and details, so status polling is the recommended pattern. Cancellation is not exposed as an operation: the specification describes DELETE /payments/{payment_id} as 'Delete finished or failed payment', and the vendor reference documents the error PAYMENT_NOT_FINALIZED, 'You can not delete a payment that is not finalized or cancelled'.
How do I list supported European banks through Jentic?
Search Jentic for 'list European banks open banking', load the schema for GET /aspsps, and execute it. The response is the supported ASPSP directory, suitable for a bank-selection UI.
What are the rate limits for the Enable Banking API?
No quantitative rate limit is published. The vendor reference at https://enablebanking.com/docs/api/reference/ documents a 429 Too Many Requests response on every operation, so treat HTTP 429 as the throttling signal and back off. No numeric quota or threshold is stated there, and the specification behind this page declares no rate limit, so no figure is published here.
Can I delete a session when a user revokes access?
Yes. DELETE /sessions/{session_id} ends the session so subsequent calls with that session ID fail. This is the correct path when a user revokes consent in your app.
Is there an Enable Banking MCP server?
You do not need an MCP server to give your agent the Enable Banking API. Jentic connects it directly from the Jentic API Directory: import the API, register your Enable Banking application credential once with your self-hosted instance, and your agent calls the operations on demand without another server's tool definitions loaded into its context.
Can I limit what my agent is allowed to do with the Enable Banking API?
Yes, at operation level, and for account reads you can go narrower. The account id sits in the URL path on GET /accounts/{account_id}/details, GET /accounts/{account_id}/balances and GET /accounts/{account_id}/transactions, so a rule can pin the agent to one consented account. Payment creation works differently: POST /payments carries the ASPSP and the payment request in the body, so a rule there bounds the operation itself rather than a named creditor. A read-only agent is a rule that grants the GET operations and withholds POST /auth, POST /sessions, POST /payments, DELETE /payments/{payment_id} and DELETE /sessions/{session_id}.
/payments/{payment_id}
Get a payment by ID
/aspsps
List supported ASPSPs