openapi: 3.1.0 info: title: Temenos Transact Core Banking Accounts API description: RESTful APIs for Temenos Transact (formerly T24) core banking operations. Provides comprehensive banking functionality organized into domain-driven API categories including Holdings (accounts, deposits, loans, cards), Order (payments, transfers, standing orders), Party (customers, beneficiaries, KYC), Reference (currencies, countries, rates), Product (catalog, conditions), and Enterprise (pricing, bundles). Built on the Arrangement Architecture, a modular business component-based framework enabling reusable product components across retail, corporate, treasury, wealth, and Islamic banking domains. APIs exchange data over HTTP using JSON format with a versioned URL structure following the pattern api/v1.0.0/{domain}/{resource}. version: 1.0.0 contact: name: Temenos Developer Support url: https://developer.temenos.com/ email: api.support@temenos.com license: name: Temenos Terms of Service url: https://www.temenos.com/terms-of-service/ termsOfService: https://www.temenos.com/terms-of-service/ servers: - url: https://api.temenos.com/api/v1.0.0 description: Temenos Transact API - Production - url: https://sandbox.temenos.com/api/v1.0.0 description: Temenos Transact API - Sandbox security: - bearerAuth: [] tags: - name: Accounts description: Manage customer accounts created using the Arrangement Architecture including current accounts, savings accounts, corporate accounts, Islamic accounts, non-resident and minor accounts. paths: /holdings/accounts: get: operationId: getAccounts summary: Temenos Transact List Accounts description: Retrieve a list of customer accounts. Supports filtering by customer, account type, status, currency, and other criteria. Returns account arrangements created through the Arrangement Architecture including current, savings, corporate, and Islamic account types. tags: - Accounts parameters: - $ref: '#/components/parameters/pageSize' - $ref: '#/components/parameters/pageStart' - $ref: '#/components/parameters/customerId' - name: accountType in: query description: Filter by account type (e.g., CURRENT, SAVINGS, CORPORATE) schema: type: string - name: currency in: query description: Filter by account currency (ISO 4217 code) schema: type: string - name: status in: query description: Filter by account status schema: type: string enum: - ACTIVE - INACTIVE - CLOSED - PENDING responses: '200': description: Successful retrieval of accounts list content: application/json: schema: $ref: '#/components/schemas/AccountsResponse' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '500': $ref: '#/components/responses/InternalServerError' x-microcks-operation: delay: 0 dispatcher: FALLBACK /holdings/accounts/{accountId}: get: operationId: getAccount summary: Temenos Transact Get Account Details description: Retrieve detailed information for a specific account arrangement including balances, product details, interest conditions, charges, and account officer assignment. tags: - Accounts parameters: - $ref: '#/components/parameters/accountId' responses: '200': description: Successful retrieval of account details content: application/json: schema: $ref: '#/components/schemas/AccountDetailsResponse' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '500': $ref: '#/components/responses/InternalServerError' x-microcks-operation: delay: 0 dispatcher: FALLBACK put: operationId: updateAccount summary: Temenos Transact Update Account description: Update an existing account arrangement. Supports modifying account attributes such as posting restrictions, overdraft limits, account officer, and product conditions. tags: - Accounts parameters: - $ref: '#/components/parameters/accountId' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/AccountUpdateRequest' responses: '200': description: Account updated successfully content: application/json: schema: $ref: '#/components/schemas/AccountDetailsResponse' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '500': $ref: '#/components/responses/InternalServerError' x-microcks-operation: delay: 0 dispatcher: FALLBACK /holdings/accounts/{accountId}/balances: get: operationId: getAccountBalances summary: Temenos Transact Get Account Balances description: Retrieve balance information for a specific account including available balance, working balance, locked amount, cleared balance, and other balance types as configured. tags: - Accounts parameters: - $ref: '#/components/parameters/accountId' responses: '200': description: Successful retrieval of account balances content: application/json: schema: $ref: '#/components/schemas/AccountBalancesResponse' '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' '500': $ref: '#/components/responses/InternalServerError' x-microcks-operation: delay: 0 dispatcher: FALLBACK /party/customers/{customerId}/accounts: get: operationId: getCustomerAccounts summary: Temenos Transact List Customer Accounts description: Retrieve all accounts associated with a specific customer, including account type, status, currency, and balance summary. tags: - Accounts parameters: - $ref: '#/components/parameters/customerIdPath' - $ref: '#/components/parameters/pageSize' - $ref: '#/components/parameters/pageStart' responses: '200': description: Successful retrieval of customer accounts content: application/json: schema: $ref: '#/components/schemas/AccountsResponse' '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' '500': $ref: '#/components/responses/InternalServerError' x-microcks-operation: delay: 0 dispatcher: FALLBACK components: schemas: AccountBalances: type: object description: Balance breakdown for a banking account properties: accountId: type: string description: Account identifier example: '500123' currency: type: string description: Currency of the balances example: example_value workingBalance: type: number description: Current working balance including pending transactions example: 42.5 availableBalance: type: number description: Balance available for withdrawals and payments example: 42.5 clearedBalance: type: number description: Balance of cleared funds only example: 42.5 lockedAmount: type: number description: Amount locked or blocked on the account example: 42.5 overdraftLimit: type: number description: Approved overdraft facility amount example: 42.5 accruedInterest: type: number description: Interest accrued but not yet capitalized example: 42.5 pendingDeposits: type: number description: Deposits received but not yet cleared example: 42.5 asOfDate: type: string format: date-time description: Timestamp when balances were calculated example: '2026-01-15T10:30:00Z' ErrorResponse: type: object description: Standard error response structure required: - header properties: header: type: object properties: id: type: string description: Request identifier status: type: string description: Error status enum: - error transactionStatus: type: string description: Transaction status example: example_value error: type: object properties: type: type: string description: Error type classification message: type: string description: Human-readable error message code: type: string description: Machine-readable error code details: type: array description: Detailed error information items: type: object properties: field: type: string description: Field that caused the error message: type: string description: Field-level error message code: type: string description: Field-level error code example: example_value PaginationInfo: type: object description: Pagination metadata for list responses properties: pageSize: type: integer description: Number of records per page example: 10 pageStart: type: integer description: Current page offset example: 10 totalRecords: type: integer description: Total number of records available example: 10 AccountsResponse: type: object properties: header: $ref: '#/components/schemas/ResponseHeader' body: type: array items: $ref: '#/components/schemas/Account' example: [] page: $ref: '#/components/schemas/PaginationInfo' AccountDetailsResponse: type: object properties: header: $ref: '#/components/schemas/ResponseHeader' body: $ref: '#/components/schemas/Account' AccountBalancesResponse: type: object properties: header: $ref: '#/components/schemas/ResponseHeader' body: $ref: '#/components/schemas/AccountBalances' ResponseHeader: type: object description: Standard response header returned by all Transact API operations properties: id: type: string description: Unique identifier for the resource example: abc123 status: type: string description: Status of the operation (success, error) enum: - success - error example: success transactionStatus: type: string description: Transaction lifecycle status enum: - Live - Unauth - Hold - Reversed example: Live audit: type: object properties: parseTime: type: integer description: Time taken to parse the request in milliseconds responseParse: type: integer description: Time taken to generate the response in milliseconds example: example_value AccountUpdateRequest: type: object properties: header: type: object properties: override: type: boolean description: Override warnings and proceed example: example_value body: type: object properties: accountName: type: string accountOfficerId: type: integer overdraftLimit: type: number postingRestriction: type: string example: example_value Account: type: object description: A banking account arrangement in Temenos Transact. Created through the Arrangement Architecture supporting current, savings, corporate, Islamic, non-resident, and minor account types. properties: accountId: type: string description: Unique system-generated account identifier examples: - AA2014500001 accountName: type: string description: Display name of the account example: example_value customerId: type: string description: Identifier of the owning customer example: '500123' customerName: type: string description: Name of the owning customer example: example_value productId: type: string description: Product identifier from the arrangement architecture example: '500123' productName: type: string description: Human-readable product name example: example_value accountType: type: string description: Type of account enum: - CURRENT - SAVINGS - CORPORATE - ISLAMIC - NON_RESIDENT - MINOR example: CURRENT currency: type: string description: Account currency in ISO 4217 format pattern: ^[A-Z]{3}$ examples: - USD - EUR - GBP status: type: string description: Current account status enum: - ACTIVE - INACTIVE - CLOSED - PENDING - DORMANT example: ACTIVE openingDate: type: string format: date description: Date the account was opened example: '2026-01-15' workingBalance: type: number description: Current working balance of the account example: 42.5 availableBalance: type: number description: Available balance including overdraft facility example: 42.5 accountOfficerId: type: integer description: Identifier of the assigned account officer example: '500123' branchId: type: string description: Branch where the account is held example: '500123' iban: type: string description: International Bank Account Number example: example_value bic: type: string description: Bank Identifier Code (SWIFT code) example: example_value responses: NotFound: description: Requested resource not found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' InternalServerError: description: Internal server error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' Forbidden: description: Insufficient permissions to access this resource content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' Unauthorized: description: Authentication required or token expired content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' BadRequest: description: Bad request - invalid parameters or malformed request content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' parameters: customerIdPath: name: customerId in: path required: true description: Unique identifier of the customer schema: type: string accountId: name: accountId in: path required: true description: Unique identifier of the account arrangement schema: type: string pageStart: name: page_start in: query description: Page token or offset for pagination schema: type: integer default: 0 minimum: 0 customerId: name: customerId in: query description: Filter by customer identifier schema: type: string pageSize: name: page_size in: query description: Number of records to return per page (default 25, max 100) schema: type: integer default: 25 minimum: 1 maximum: 100 securitySchemes: bearerAuth: type: http scheme: bearer bearerFormat: JWT description: OAuth 2.0 Bearer token authentication. Obtain a token from the Temenos authentication endpoint using client credentials or authorization code flow.