naftiko: 1.0.0-alpha2 info: label: Montran Corporate Payments Portal API description: The Montran Corporate Payments Portal enables corporates to exercise complete control over accounts at their various bank relationships, with the ability to make secure payments over the Internet. It supports SWIFT payments and local clearing delivery through API integration and H2H (Host-to-Host) protocols. Corporates can connect their ERP systems and manually or automatically upload invoices for payments and collections management. The portal provides multi-bank visibility and supports secure payment initiation across multiple currencies and payment types. tags: - Montran - API created: '2026-05-06' modified: '2026-05-06' capability: consumes: - type: http namespace: montran baseUri: https://api.montran.com/corporate/v1 description: Montran Corporate Payments Portal API HTTP API. authentication: type: bearer token: '{{MONTRAN_TOKEN}}' resources: - name: payments path: /payments operations: - name: listcorporatepayments method: GET description: Montran List corporate payments inputParameters: - name: status in: query type: string description: Filter by payment status - name: paymentType in: query type: string description: Filter by payment type - name: bankId in: query type: string description: Filter by bank relationship - name: currency in: query type: string - name: fromDate in: query type: string - name: toDate in: query type: string - name: page in: query type: integer - name: pageSize in: query type: integer outputRawFormat: json outputParameters: - name: result type: object value: $. - name: createcorporatepayment method: POST description: Montran Create a corporate payment outputRawFormat: json outputParameters: - name: result type: object value: $. - name: payments-paymentid path: /payments/{paymentId} operations: - name: getcorporatepayment method: GET description: Montran Get payment details outputRawFormat: json outputParameters: - name: result type: object value: $. - name: payments-paymentid-approve path: /payments/{paymentId}/approve operations: - name: approvepayment method: POST description: Montran Approve a payment outputRawFormat: json outputParameters: - name: result type: object value: $. - name: payments-paymentid-reject path: /payments/{paymentId}/reject operations: - name: rejectpayment method: POST description: Montran Reject a payment outputRawFormat: json outputParameters: - name: result type: object value: $. - name: accounts path: /accounts operations: - name: listbankaccounts method: GET description: Montran List bank accounts inputParameters: - name: bankId in: query type: string description: Filter by bank relationship - name: currency in: query type: string outputRawFormat: json outputParameters: - name: result type: object value: $. - name: accounts-accountid path: /accounts/{accountId} operations: - name: getbankaccount method: GET description: Montran Get bank account details inputParameters: - name: accountId in: path type: string required: true description: Unique account identifier outputRawFormat: json outputParameters: - name: result type: object value: $. - name: accounts-accountid-transactions path: /accounts/{accountId}/transactions operations: - name: listaccounttransactions method: GET description: Montran List account transactions inputParameters: - name: accountId in: path type: string required: true - name: fromDate in: query type: string - name: toDate in: query type: string - name: page in: query type: integer - name: pageSize in: query type: integer outputRawFormat: json outputParameters: - name: result type: object value: $. - name: files path: /files operations: - name: uploadpaymentfile method: POST description: Montran Upload a payment file outputRawFormat: json outputParameters: - name: result type: object value: $. - name: files-fileid path: /files/{fileId} operations: - name: getfilestatus method: GET description: Montran Get file processing status inputParameters: - name: fileId in: path type: string required: true description: Unique identifier of the uploaded file outputRawFormat: json outputParameters: - name: result type: object value: $. - name: beneficiaries path: /beneficiaries operations: - name: listbeneficiaries method: GET description: Montran List beneficiaries inputParameters: - name: page in: query type: integer - name: pageSize in: query type: integer outputRawFormat: json outputParameters: - name: result type: object value: $. - name: createbeneficiary method: POST description: Montran Create a beneficiary outputRawFormat: json outputParameters: - name: result type: object value: $. exposes: - type: rest port: 8080 namespace: montran-rest description: REST adapter for Montran Corporate Payments Portal API. resources: - path: /payments name: listcorporatepayments operations: - method: GET name: listcorporatepayments description: Montran List corporate payments call: montran.listcorporatepayments outputParameters: - type: object mapping: $. - path: /payments name: createcorporatepayment operations: - method: POST name: createcorporatepayment description: Montran Create a corporate payment call: montran.createcorporatepayment outputParameters: - type: object mapping: $. - path: /payments/{paymentId} name: getcorporatepayment operations: - method: GET name: getcorporatepayment description: Montran Get payment details call: montran.getcorporatepayment outputParameters: - type: object mapping: $. - path: /payments/{paymentId}/approve name: approvepayment operations: - method: POST name: approvepayment description: Montran Approve a payment call: montran.approvepayment outputParameters: - type: object mapping: $. - path: /payments/{paymentId}/reject name: rejectpayment operations: - method: POST name: rejectpayment description: Montran Reject a payment call: montran.rejectpayment outputParameters: - type: object mapping: $. - path: /accounts name: listbankaccounts operations: - method: GET name: listbankaccounts description: Montran List bank accounts call: montran.listbankaccounts outputParameters: - type: object mapping: $. - path: /accounts/{accountId} name: getbankaccount operations: - method: GET name: getbankaccount description: Montran Get bank account details call: montran.getbankaccount with: accountId: rest.accountId outputParameters: - type: object mapping: $. - path: /accounts/{accountId}/transactions name: listaccounttransactions operations: - method: GET name: listaccounttransactions description: Montran List account transactions call: montran.listaccounttransactions with: accountId: rest.accountId outputParameters: - type: object mapping: $. - path: /files name: uploadpaymentfile operations: - method: POST name: uploadpaymentfile description: Montran Upload a payment file call: montran.uploadpaymentfile outputParameters: - type: object mapping: $. - path: /files/{fileId} name: getfilestatus operations: - method: GET name: getfilestatus description: Montran Get file processing status call: montran.getfilestatus with: fileId: rest.fileId outputParameters: - type: object mapping: $. - path: /beneficiaries name: listbeneficiaries operations: - method: GET name: listbeneficiaries description: Montran List beneficiaries call: montran.listbeneficiaries outputParameters: - type: object mapping: $. - path: /beneficiaries name: createbeneficiary operations: - method: POST name: createbeneficiary description: Montran Create a beneficiary call: montran.createbeneficiary outputParameters: - type: object mapping: $. - type: mcp port: 9090 namespace: montran-mcp transport: http description: MCP adapter for Montran Corporate Payments Portal API for AI agent use. tools: - name: listcorporatepayments description: Montran List corporate payments hints: readOnly: true destructive: false idempotent: true call: montran.listcorporatepayments with: status: tools.status paymentType: tools.paymentType bankId: tools.bankId currency: tools.currency fromDate: tools.fromDate toDate: tools.toDate page: tools.page pageSize: tools.pageSize inputParameters: - name: status type: string description: Filter by payment status - name: paymentType type: string description: Filter by payment type - name: bankId type: string description: Filter by bank relationship - name: currency type: string description: currency - name: fromDate type: string description: fromDate - name: toDate type: string description: toDate - name: page type: integer description: page - name: pageSize type: integer description: pageSize outputParameters: - type: object mapping: $. - name: createcorporatepayment description: Montran Create a corporate payment hints: readOnly: false destructive: false idempotent: false call: montran.createcorporatepayment outputParameters: - type: object mapping: $. - name: getcorporatepayment description: Montran Get payment details hints: readOnly: true destructive: false idempotent: true call: montran.getcorporatepayment outputParameters: - type: object mapping: $. - name: approvepayment description: Montran Approve a payment hints: readOnly: false destructive: false idempotent: false call: montran.approvepayment outputParameters: - type: object mapping: $. - name: rejectpayment description: Montran Reject a payment hints: readOnly: false destructive: false idempotent: false call: montran.rejectpayment outputParameters: - type: object mapping: $. - name: listbankaccounts description: Montran List bank accounts hints: readOnly: true destructive: false idempotent: true call: montran.listbankaccounts with: bankId: tools.bankId currency: tools.currency inputParameters: - name: bankId type: string description: Filter by bank relationship - name: currency type: string description: currency outputParameters: - type: object mapping: $. - name: getbankaccount description: Montran Get bank account details hints: readOnly: true destructive: false idempotent: true call: montran.getbankaccount with: accountId: tools.accountId inputParameters: - name: accountId type: string description: Unique account identifier required: true outputParameters: - type: object mapping: $. - name: listaccounttransactions description: Montran List account transactions hints: readOnly: true destructive: false idempotent: true call: montran.listaccounttransactions with: accountId: tools.accountId fromDate: tools.fromDate toDate: tools.toDate page: tools.page pageSize: tools.pageSize inputParameters: - name: accountId type: string description: accountId required: true - name: fromDate type: string description: fromDate - name: toDate type: string description: toDate - name: page type: integer description: page - name: pageSize type: integer description: pageSize outputParameters: - type: object mapping: $. - name: uploadpaymentfile description: Montran Upload a payment file hints: readOnly: false destructive: false idempotent: false call: montran.uploadpaymentfile outputParameters: - type: object mapping: $. - name: getfilestatus description: Montran Get file processing status hints: readOnly: true destructive: false idempotent: true call: montran.getfilestatus with: fileId: tools.fileId inputParameters: - name: fileId type: string description: Unique identifier of the uploaded file required: true outputParameters: - type: object mapping: $. - name: listbeneficiaries description: Montran List beneficiaries hints: readOnly: true destructive: false idempotent: true call: montran.listbeneficiaries with: page: tools.page pageSize: tools.pageSize inputParameters: - name: page type: integer description: page - name: pageSize type: integer description: pageSize outputParameters: - type: object mapping: $. - name: createbeneficiary description: Montran Create a beneficiary hints: readOnly: false destructive: false idempotent: false call: montran.createbeneficiary outputParameters: - type: object mapping: $. binds: - namespace: env keys: MONTRAN_TOKEN: MONTRAN_TOKEN