naftiko: 1.0.0-alpha2 info: label: Temenos Core Banking description: Unified core banking workflow combining Transact and Payments APIs for account management, customer operations, and payment processing. Used by retail and corporate banking teams to manage the complete customer banking lifecycle. tags: - Banking - Core Banking - Accounts - Payments - Customers - Transactions created: '2026-05-03' modified: '2026-05-06' binds: - namespace: env keys: TEMENOS_TRANSACT_TOKEN: TEMENOS_TRANSACT_TOKEN TEMENOS_PAYMENTS_TOKEN: TEMENOS_PAYMENTS_TOKEN capability: consumes: - type: http namespace: transact baseUri: https://api.temenos.com/transact/v1 description: Temenos Transact core banking API authentication: type: bearer token: '{{TEMENOS_TRANSACT_TOKEN}}' resources: - name: accounts path: /holdings/accounts description: Customer account arrangements operations: - name: list-accounts method: GET description: List customer accounts with optional filtering inputParameters: - name: customerId in: query type: string required: false description: Filter accounts by customer identifier - name: accountType in: query type: string required: false description: Filter by account type (CURRENT, SAVINGS, DEPOSIT, LOAN) - name: page_size in: query type: integer required: false description: Number of records per page - name: page_start in: query type: integer required: false description: Starting record number outputRawFormat: json outputParameters: - name: result type: object value: $. - name: create-account method: POST description: Create a new account arrangement body: type: json data: customerId: '{{tools.customerId}}' accountType: '{{tools.accountType}}' currency: '{{tools.currency}}' productId: '{{tools.productId}}' outputRawFormat: json outputParameters: - name: result type: object value: $. - name: account-detail path: /holdings/accounts/{accountId} description: Single account operations operations: - name: get-account method: GET description: Get account details inputParameters: - name: accountId in: path type: string required: true description: Unique account identifier outputRawFormat: json outputParameters: - name: result type: object value: $. - name: update-account method: PUT description: Update account arrangement inputParameters: - name: accountId in: path type: string required: true description: Unique account identifier body: type: json data: status: '{{tools.status}}' outputRawFormat: json outputParameters: - name: result type: object value: $. - name: account-balances path: /holdings/accounts/{accountId}/balances description: Account balance information operations: - name: get-account-balances method: GET description: Get account balances inputParameters: - name: accountId in: path type: string required: true description: Unique account identifier outputRawFormat: json outputParameters: - name: result type: object value: $. - name: account-transactions path: /holdings/accounts/{accountId}/transactions description: Account transaction history operations: - name: list-account-transactions method: GET description: List account transactions inputParameters: - name: accountId in: path type: string required: true description: Unique account identifier - name: page_size in: query type: integer required: false description: Records per page outputRawFormat: json outputParameters: - name: result type: object value: $. - name: customers path: /party/customers description: Customer management operations: - name: list-customers method: GET description: List customers inputParameters: - name: page_size in: query type: integer required: false description: Records per page outputRawFormat: json outputParameters: - name: result type: object value: $. - name: create-customer method: POST description: Create new customer body: type: json data: firstName: '{{tools.firstName}}' lastName: '{{tools.lastName}}' customerType: '{{tools.customerType}}' email: '{{tools.email}}' outputRawFormat: json outputParameters: - name: result type: object value: $. - name: customer-detail path: /party/customers/{customerId} description: Single customer operations operations: - name: get-customer method: GET description: Get customer details inputParameters: - name: customerId in: path type: string required: true description: Unique customer identifier outputRawFormat: json outputParameters: - name: result type: object value: $. - name: payment-orders path: /order/paymentOrders description: Payment order management operations: - name: list-payment-orders method: GET description: List payment orders inputParameters: - name: page_size in: query type: integer required: false description: Records per page outputRawFormat: json outputParameters: - name: result type: object value: $. - name: create-payment-order method: POST description: Create payment order body: type: json data: debitAccountId: '{{tools.debitAccountId}}' creditAccountId: '{{tools.creditAccountId}}' amount: '{{tools.amount}}' currency: '{{tools.currency}}' paymentType: '{{tools.paymentType}}' outputRawFormat: json outputParameters: - name: result type: object value: $. - type: http namespace: payments baseUri: https://api.temenos.com/payments/v1 description: Temenos Payments API for multi-type payment processing authentication: type: bearer token: '{{TEMENOS_PAYMENTS_TOKEN}}' resources: - name: payment-orders path: /paymentOrders description: Payment order initiation and management operations: - name: list-payment-orders method: GET description: List payment orders inputParameters: - name: status in: query type: string required: false description: Filter by status - name: paymentType in: query type: string required: false description: Filter by payment type outputRawFormat: json outputParameters: - name: result type: object value: $. - name: create-payment-order method: POST description: Initiate a payment order body: type: json data: debitAccountId: '{{tools.debitAccountId}}' amount: '{{tools.amount}}' currency: '{{tools.currency}}' paymentType: '{{tools.paymentType}}' beneficiary: '{{tools.beneficiary}}' outputRawFormat: json outputParameters: - name: result type: object value: $. - name: bulk-payments path: /bulkPayments description: Bulk payment file processing operations: - name: list-bulk-payments method: GET description: List bulk payment batches inputParameters: - name: page_size in: query type: integer required: false description: Records per page outputRawFormat: json outputParameters: - name: result type: object value: $. - name: create-bulk-payment method: POST description: Create a bulk payment batch body: type: json data: batchReference: '{{tools.batchReference}}' debitAccountId: '{{tools.debitAccountId}}' outputRawFormat: json outputParameters: - name: result type: object value: $. - name: standing-orders path: /standingOrders description: Recurring payment standing orders operations: - name: list-standing-orders method: GET description: List standing orders inputParameters: - name: page_size in: query type: integer required: false description: Records per page outputRawFormat: json outputParameters: - name: result type: object value: $. - name: create-standing-order method: POST description: Create a standing order body: type: json data: debitAccountId: '{{tools.debitAccountId}}' amount: '{{tools.amount}}' frequency: '{{tools.frequency}}' outputRawFormat: json outputParameters: - name: result type: object value: $. - name: direct-debits path: /directDebits description: Direct debit mandate management operations: - name: list-direct-debits method: GET description: List direct debit mandates inputParameters: - name: page_size in: query type: integer required: false description: Records per page outputRawFormat: json outputParameters: - name: result type: object value: $. exposes: - type: rest port: 8080 namespace: core-banking-api description: Unified REST API for Temenos core banking operations. resources: - path: /v1/accounts name: accounts description: Customer account management operations: - method: GET name: list-accounts description: List customer accounts call: transact.list-accounts with: customerId: rest.customerId outputParameters: - type: object mapping: $. - method: POST name: create-account description: Create a new account arrangement call: transact.create-account outputParameters: - type: object mapping: $. - path: /v1/accounts/{accountId} name: account-detail description: Single account operations operations: - method: GET name: get-account description: Get account details call: transact.get-account with: accountId: rest.accountId outputParameters: - type: object mapping: $. - path: /v1/accounts/{accountId}/balances name: account-balances description: Account balance information operations: - method: GET name: get-balances description: Get account balances call: transact.get-account-balances with: accountId: rest.accountId outputParameters: - type: object mapping: $. - path: /v1/accounts/{accountId}/transactions name: account-transactions description: Account transaction history operations: - method: GET name: list-transactions description: List account transactions call: transact.list-account-transactions with: accountId: rest.accountId outputParameters: - type: object mapping: $. - path: /v1/customers name: customers description: Customer management operations: - method: GET name: list-customers description: List customers call: transact.list-customers outputParameters: - type: object mapping: $. - method: POST name: create-customer description: Create a new customer call: transact.create-customer outputParameters: - type: object mapping: $. - path: /v1/customers/{customerId} name: customer-detail description: Single customer operations operations: - method: GET name: get-customer description: Get customer details call: transact.get-customer with: customerId: rest.customerId outputParameters: - type: object mapping: $. - path: /v1/payment-orders name: payment-orders description: Payment order management operations: - method: GET name: list-payment-orders description: List payment orders call: payments.list-payment-orders outputParameters: - type: object mapping: $. - method: POST name: create-payment-order description: Create a payment order call: payments.create-payment-order outputParameters: - type: object mapping: $. - path: /v1/standing-orders name: standing-orders description: Recurring standing orders operations: - method: GET name: list-standing-orders description: List standing orders call: payments.list-standing-orders outputParameters: - type: object mapping: $. - method: POST name: create-standing-order description: Create a standing order call: payments.create-standing-order outputParameters: - type: object mapping: $. - path: /v1/direct-debits name: direct-debits description: Direct debit mandates operations: - method: GET name: list-direct-debits description: List direct debit mandates call: payments.list-direct-debits outputParameters: - type: object mapping: $. - type: mcp port: 9090 namespace: core-banking-mcp transport: http description: MCP server for AI-assisted core banking operations. tools: - name: list-accounts description: List banking accounts for a customer hints: readOnly: true openWorld: false call: transact.list-accounts with: customerId: tools.customerId outputParameters: - type: object mapping: $. - name: get-account description: Get details for a specific bank account hints: readOnly: true openWorld: false call: transact.get-account with: accountId: tools.accountId outputParameters: - type: object mapping: $. - name: get-account-balances description: Get current balances for a bank account hints: readOnly: true openWorld: false call: transact.get-account-balances with: accountId: tools.accountId outputParameters: - type: object mapping: $. - name: list-account-transactions description: List transaction history for a bank account hints: readOnly: true openWorld: false call: transact.list-account-transactions with: accountId: tools.accountId outputParameters: - type: object mapping: $. - name: create-account description: Create a new banking account arrangement hints: readOnly: false destructive: false idempotent: false call: transact.create-account outputParameters: - type: object mapping: $. - name: list-customers description: List banking customers hints: readOnly: true openWorld: false call: transact.list-customers outputParameters: - type: object mapping: $. - name: get-customer description: Get customer details hints: readOnly: true openWorld: false call: transact.get-customer with: customerId: tools.customerId outputParameters: - type: object mapping: $. - name: create-customer description: Create a new banking customer hints: readOnly: false destructive: false idempotent: false call: transact.create-customer outputParameters: - type: object mapping: $. - name: list-payment-orders description: List payment orders hints: readOnly: true openWorld: false call: payments.list-payment-orders outputParameters: - type: object mapping: $. - name: create-payment-order description: Create a new payment order (SEPA, SWIFT, domestic) hints: readOnly: false destructive: false idempotent: false call: payments.create-payment-order outputParameters: - type: object mapping: $. - name: list-standing-orders description: List recurring standing orders hints: readOnly: true openWorld: false call: payments.list-standing-orders outputParameters: - type: object mapping: $. - name: create-standing-order description: Set up a new recurring standing order hints: readOnly: false destructive: false idempotent: false call: payments.create-standing-order outputParameters: - type: object mapping: $. - name: list-direct-debits description: List direct debit mandates hints: readOnly: true openWorld: false call: payments.list-direct-debits outputParameters: - type: object mapping: $.