naftiko: 1.0.0-alpha2 info: label: Montran Virtual Accounts API — Virtual IBANs description: 'Montran Virtual Accounts API — Virtual IBANs. 4 operations. Lead operation: Montran List virtual IBANs. Self-contained Naftiko capability covering one Montran business surface.' tags: - Montran - Virtual IBANs created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: MONTRAN_API_KEY: MONTRAN_API_KEY capability: consumes: - type: http namespace: virtual-accounts-virtual-ibans baseUri: https://api.montran.com/vam/v1 description: Montran Virtual Accounts API — Virtual IBANs business capability. Self-contained, no shared references. resources: - name: virtual-ibans path: /virtual-ibans operations: - name: listvirtualibans method: GET description: Montran List virtual IBANs outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: status in: query type: string - name: virtualAccountId in: query type: string description: Filter by associated virtual account - name: page in: query type: integer - name: pageSize in: query type: integer - name: issuevirtualiban method: POST description: Montran Issue a virtual IBAN outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: virtual-ibans-vibanId path: /virtual-ibans/{vibanId} operations: - name: getvirtualiban method: GET description: Montran Get virtual IBAN details outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: vibanId in: path type: string description: Unique identifier of the virtual IBAN required: true - name: virtual-ibans-vibanId-deactivate path: /virtual-ibans/{vibanId}/deactivate operations: - name: deactivatevirtualiban method: POST description: Montran Deactivate a virtual IBAN outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: vibanId in: path type: string description: Unique identifier of the virtual IBAN required: true authentication: type: bearer token: '{{env.MONTRAN_API_KEY}}' exposes: - type: rest namespace: virtual-accounts-virtual-ibans-rest port: 8080 description: REST adapter for Montran Virtual Accounts API — Virtual IBANs. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/virtual-ibans name: virtual-ibans description: REST surface for virtual-ibans. operations: - method: GET name: listvirtualibans description: Montran List virtual IBANs call: virtual-accounts-virtual-ibans.listvirtualibans with: status: rest.status virtualAccountId: rest.virtualAccountId page: rest.page pageSize: rest.pageSize outputParameters: - type: object mapping: $. - method: POST name: issuevirtualiban description: Montran Issue a virtual IBAN call: virtual-accounts-virtual-ibans.issuevirtualiban with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/virtual-ibans/{vibanid} name: virtual-ibans-vibanid description: REST surface for virtual-ibans-vibanId. operations: - method: GET name: getvirtualiban description: Montran Get virtual IBAN details call: virtual-accounts-virtual-ibans.getvirtualiban with: vibanId: rest.vibanId outputParameters: - type: object mapping: $. - path: /v1/virtual-ibans/{vibanid}/deactivate name: virtual-ibans-vibanid-deactivate description: REST surface for virtual-ibans-vibanId-deactivate. operations: - method: POST name: deactivatevirtualiban description: Montran Deactivate a virtual IBAN call: virtual-accounts-virtual-ibans.deactivatevirtualiban with: vibanId: rest.vibanId outputParameters: - type: object mapping: $. - type: mcp namespace: virtual-accounts-virtual-ibans-mcp port: 9090 transport: http description: MCP adapter for Montran Virtual Accounts API — Virtual IBANs. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: montran-list-virtual-ibans description: Montran List virtual IBANs hints: readOnly: true destructive: false idempotent: true call: virtual-accounts-virtual-ibans.listvirtualibans with: status: tools.status virtualAccountId: tools.virtualAccountId page: tools.page pageSize: tools.pageSize outputParameters: - type: object mapping: $. - name: montran-issue-virtual-iban description: Montran Issue a virtual IBAN hints: readOnly: false destructive: false idempotent: false call: virtual-accounts-virtual-ibans.issuevirtualiban with: body: tools.body outputParameters: - type: object mapping: $. - name: montran-get-virtual-iban-details description: Montran Get virtual IBAN details hints: readOnly: true destructive: false idempotent: true call: virtual-accounts-virtual-ibans.getvirtualiban with: vibanId: tools.vibanId outputParameters: - type: object mapping: $. - name: montran-deactivate-virtual-iban description: Montran Deactivate a virtual IBAN hints: readOnly: false destructive: false idempotent: false call: virtual-accounts-virtual-ibans.deactivatevirtualiban with: vibanId: tools.vibanId outputParameters: - type: object mapping: $.