openapi: 3.1.0 info: title: Montran Corporate Payments Portal Account Information Payment Status 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. version: 1.0.0 contact: name: Montran Corporation url: https://www.montran.com/contact-us/ license: name: Proprietary url: https://www.montran.com/terms-conditions/ x-logo: url: https://www.montran.com/logo.png servers: - url: https://api.montran.com/corporate/v1 description: Montran Corporate Payments Portal API Server security: - bearerAuth: [] - apiKey: [] tags: - name: Payment Status description: Payment status inquiry and tracking operations paths: /payments/{paymentId}/status: get: operationId: getPaymentStatus summary: Montran Get payment status description: Retrieves the current processing status of a payment. Returns status information aligned with ISO 20022 pacs.002 Payment Status Report format, including reason codes for rejected or returned payments. tags: - Payment Status parameters: - $ref: '#/components/parameters/PaymentIdParam' responses: '200': description: Successfully retrieved payment status content: application/json: schema: $ref: '#/components/schemas/PaymentStatus' '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' '500': $ref: '#/components/responses/InternalServerError' /payments/instant/{paymentId}: get: operationId: getInstantPayment summary: Montran Get instant payment details description: Retrieves the full details and current status of a specific instant payment. Returns ISO 20022 pacs.002 status information including acceptance or rejection reason codes. tags: - Payment Status parameters: - $ref: '#/components/parameters/PaymentIdParam' responses: '200': description: Successfully retrieved instant payment details content: application/json: schema: $ref: '#/components/schemas/InstantPaymentDetail' '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' '500': $ref: '#/components/responses/InternalServerError' components: schemas: Error: type: object description: Standard error response required: - code - message properties: code: type: string description: Error code message: type: string description: Human-readable error message details: type: array description: Detailed error information items: type: object properties: field: type: string description: Field that caused the error message: type: string description: Error detail message PaymentStatus: type: object description: Payment status information aligned with ISO 20022 pacs.002 FIToFIPaymentStatusReport properties: paymentId: type: string description: Unique payment identifier originalMessageId: type: string description: Original message identification originalEndToEndId: type: string description: Original end-to-end identification status: type: string description: Transaction status enum: - ACCP - ACSC - ACSP - ACTC - ACWC - PDNG - RCVD - RJCT - CANC reasonCode: type: string description: Reason code for rejection or return (ISO 20022 reason codes) reasonDescription: type: string description: Human-readable reason description statusDateTime: type: string format: date-time description: Timestamp of the status update InstantPaymentDetail: type: object description: Full instant payment details properties: paymentId: type: string messageId: type: string endToEndId: type: string transactionId: type: string status: type: string enum: - ACCP - ACSC - ACSP - RJCT - CANC - RTND debtorName: type: string debtorAccount: $ref: '#/components/schemas/AccountIdentification' debtorAgent: $ref: '#/components/schemas/FinancialInstitution' creditorName: type: string creditorAccount: $ref: '#/components/schemas/AccountIdentification' creditorAgent: $ref: '#/components/schemas/FinancialInstitution' amount: type: number format: double currency: type: string remittanceInformation: type: string reasonCode: type: string settlementDate: type: string format: date acceptanceDateTime: type: string format: date-time createdAt: type: string format: date-time AccountIdentification: type: object description: Account identification using IBAN or proprietary identifier properties: iban: type: string description: International Bank Account Number pattern: ^[A-Z]{2}[0-9]{2}[A-Z0-9]{4,30}$ accountNumber: type: string description: Proprietary account number currency: type: string description: Account currency (ISO 4217) pattern: ^[A-Z]{3}$ FinancialInstitution: type: object description: Financial institution identification properties: bic: type: string description: Bank Identifier Code (SWIFT/BIC) pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ name: type: string description: Name of the financial institution parameters: PaymentIdParam: name: paymentId in: path required: true description: Unique identifier of the payment schema: type: string responses: Unauthorized: description: Authentication required or credentials invalid content: application/json: schema: $ref: '#/components/schemas/Error' NotFound: description: Requested resource not found content: application/json: schema: $ref: '#/components/schemas/Error' InternalServerError: description: Internal server error content: application/json: schema: $ref: '#/components/schemas/Error' securitySchemes: bearerAuth: type: http scheme: bearer bearerFormat: JWT apiKey: type: apiKey in: header name: X-API-Key externalDocs: description: Montran Corporate Payments Portal Documentation url: https://www.montran.com/solutions/corporate-payments-portal/