Banking API (BaaS)

Write

These tools are not enabled by default. They are turned on on request and only work for users with Tilopay banking API credentials registered by Tilopay on the server side. Standard MCP access does not include the group; and if a tool is called without those credentials, it replies that they do not exist. To request it, use the access form and state that you need the banking API.

What it covers#

Eleven read tools over the banking API: contexts (assignments), credential diagnostics, accounts, balances, payments, statements and an analytical payments report.

None of these tools initiates, approves or reverses transfers. They only extract information. The only one that is not a pure read is baas_request_statement, which generates a read-only document: it moves no money.

Accounts are identified with accountType: "IBAN" plus accountValue, dates are RFC 3339 (2026-01-01T00:00:00Z) and assignmentId is only needed when the user has several contexts.

Tools#

These tools are enabled on request and only work for users with Tilopay banking API credentials. They are not part of the default MCP access: Tilopay enables the group case by case. Requires: Credenciales del API bancario de Tilopay registradas por Tilopay para ese usuario.

Banking API contexts (assignments)

Read only

baas_list_assignments

Lists the tenant/account contexts (assignments) available for the user's banking API credentials. Use it when another tool asks for assignmentId.

Parameters

No parameters.

Returns

{ assignments[] }

assignments = available contexts with assignment_id, tenant_code, owner_type, country_code and status.

Banking API diagnostics

Read only

baas_diagnostics

Checks the user's banking API credentials, the login, the token exchange and access to accounts. Use it when a query fails.

Parameters

ParameterTypeRequiredDescription
assignmentIdstringBanking API context (assignment); only needed when there are several

Returns

{ checks[], failed }

checks = one row per check (credentials, login + assignments, accounts) with ok and detail; failed = how many failed. The credential email comes back masked.

List banking API accounts

Read only

baas_list_accounts

Lists the accessible banking API accounts, without balances: identifier type, value and currency.

API operation: GET /api/public/v1/accountssee the operation page

Parameters

ParameterTypeRequiredDescription
accountTypestringFilter by scheme (IBAN)
accountValuestringFilter by identifier
limitintegerPage size, between 1 and 100
cursorstringCursor from the previous page
assignmentIdstringBanking API context (assignment); only needed when there are several

Returns

{ result }

result = the banking API response as returned.

Banking API account balances

Read only

baas_list_balances

Lists the real-time balances of the accessible accounts: account, amounts and cut-off date.

API operation: GET /api/public/v1/accounts/balancessee the operation page

Parameters

ParameterTypeRequiredDescription
accountTypestringFilter by scheme (IBAN)
accountValuestringFilter by identifier
limitintegerPage size, between 1 and 100
cursorstringCursor from the previous page
assignmentIdstringBanking API context (assignment); only needed when there are several

Returns

{ result }

result = the banking API response as returned.

Balance of one account

Read only

baas_get_balance

Gets the current balance of a banking API account identified by IBAN.

API operation: GET /api/public/v1/accounts/balancesee the operation page

Parameters

ParameterTypeRequiredDescription
accountTypestring (IBAN)Identifier scheme (IBAN)
accountValuestringyesAccount identifier (IBAN)
assignmentIdstringBanking API context (assignment); only needed when there are several

Returns

{ result }

result = the banking API response as returned.

List banking API payments

Read only

baas_list_payments

Reads the payments of an owned account identified by IBAN, with date, status, currency, method and direction filters. Cursor pagination.

API operation: GET /api/public/v1/transactions/paymentssee the operation page

Parameters

ParameterTypeRequiredDescription
accountTypestring (IBAN)Identifier scheme (IBAN)
accountValuestringyesAccount identifier (IBAN)
dateFromstringFrom, RFC 3339 (2026-01-01T00:00:00Z)
dateTostringTo, RFC 3339
statusstring (pending | processing | confirmed | posted | failed)Public payment status
currencystringISO 4217 currency (CRC, USD)
paymentMethodCodestring (PIN | SINPE_MOVIL)Payment method
directionstring (OUT | IN)OUT = sent, IN = received
clientReferencestringMerchant reference
limitintegerPage size, 100 maximum (20 by default)
cursorstringCursor from the previous page
assignmentIdstringBanking API context (assignment); only needed when there are several

Returns

{ result }

result = the banking API response as returned, with its pagination cursor.

Find a payment

Read only

baas_search_payment

Finds a payment inside an account by exactly one of: paymentId (UUID), publicId (number) or clientReference. Sending more than one returns an error.

API operation: POST /api/public/v1/transactions/payments/searchsee the operation page

Parameters

ParameterTypeRequiredDescription
accountTypestring (IBAN)Identifier scheme (IBAN)
accountValuestringyesAccount identifier (IBAN)
paymentIdstringInternal payment UUID
publicIdstringNumeric public identifier
clientReferencestringMerchant reference
assignmentIdstringBanking API context (assignment); only needed when there are several

Returns

{ result }

result = the banking API response as returned.

Payment detail

Read only

baas_get_payment

Gets the detail of a banking API payment from its internal UUID, read only.

API operation: GET /api/public/v1/transactions/payments/{payment_id}see the operation page

Parameters

ParameterTypeRequiredDescription
paymentIdstringyesInternal payment UUID
assignmentIdstringBanking API context (assignment); only needed when there are several

Returns

{ result }

result = the banking API response as returned.

Request an account statement

Write

baas_request_statement

Requests the generation of an account statement for a banking API account, with a 60-day maximum range. It moves no money: it generates a read-only document and returns request_id with status PENDING.

API operation: POST /api/public/v1/accounts/statementssee the operation page

Parameters

ParameterTypeRequiredDescription
accountTypestring (IBAN)Identifier scheme (IBAN)
accountValuestringyesAccount identifier (IBAN)
dateFromstringyesFrom, RFC 3339 (2026-01-01T00:00:00Z)
dateTostringyesTo, RFC 3339, at most 60 days after dateFrom
assignmentIdstringBanking API context (assignment); only needed when there are several

Returns

{ result }

result = the banking API response with request_id and status. The tool requests the document without email notification.

Statement request status

Read only

baas_get_statement_status

Reads the status of an account statement request. When it is DONE it includes the signed download link and its expiry.

API operation: GET /api/public/v1/accounts/statements/{request_id}see the operation page

Parameters

ParameterTypeRequiredDescription
requestIdstringyesrequest_id returned when the statement was requested
assignmentIdstringBanking API context (assignment); only needed when there are several

Returns

{ result }

result = the banking API response as returned.

Banking API payments analyst

Read only

baas_analyze_payments

Analyses, read only, the payments of an account in a date range and returns a natural-language report: success, failures, reversals, net amounts and recommendations. It runs a language model over the computed figures.

Parameters

ParameterTypeRequiredDescription
accountTypestring (IBAN)Identifier scheme (IBAN)
accountValuestringyesAccount identifier (IBAN)
dateFromstringyesFrom, RFC 3339
dateTostringyesTo, RFC 3339
currencystringISO 4217 currency
directionstring (OUT | IN)OUT = sent, IN = received
questionstringSpecific focus for the analysis
maxItemsintegerMaximum payments to analyse, between 1 and 1000 (300 by default)
assignmentIdstringBanking API context (assignment); only needed when there are several

Returns

{ summary }

summary carries account, range, totals {count, succeeded, failed, reversed, pending, successRate}, byCurrency with succeededAmount, reversedAmount, netAmount and averageTicket, failureReasons and sample. The written report comes in the text. With no payments in the range it says so and does not analyse.

Last verified: 2026-09-03 · Owner: equipo-integraciones

View as raw Markdown