openapi: 3.2.0 info: title: Monite Payment records API contact: name: Monite team url: https://monite.com/about/ email: developers@monite.com termsOfService: https://monite.com/terms version: '1.0' description: 'Operations tagged Payment records across 3 of this provider''s published API definitions: monite-openapi-2023-09-01.json, monite-openapi-2024-05-25.json, monite-openapi.yml. Each path carries the servers of the definition it was published in.' servers: - url: https://api.dev.monite.com/v1 description: Development environment - url: https://api.sandbox.monite.com/v1 description: Sandbox environment - url: https://api.monite.com/v1 description: Production environment (Europe) - url: https://us.api.monite.com/v1 description: Production environment (North America) - url: https://api.monite.oaknorth.co.uk/v1 description: Oak POC environment tags: - name: Payment records paths: /payment_records: get: tags: - Payment records summary: Get payment records operationId: get_payment_records parameters: - required: true schema: type: string format: date example: '2023-09-01' name: x-monite-version in: header - description: Order by required: false schema: allOf: - $ref: '#/components/schemas/OrderEnum' default: asc name: order in: query - description: Max is 100 required: false schema: type: integer maximum: 100.0 minimum: 1.0 default: 100 name: limit in: query - description: A token, obtained from previous page. Prior over other filters required: false schema: type: string name: pagination_token in: query - description: Allowed sort fields required: false schema: allOf: - $ref: '#/components/schemas/PaymentRecordCursorFields' name: sort in: query - description: Identifies whether payment is from our rails or external system required: false schema: type: boolean name: is_external in: query - description: ID of the object, that is connected to payment required: false schema: type: string format: uuid name: object_id in: query - description: List of IDs of the objects, that are connected to payments required: false schema: items: type: string format: uuid type: array name: object_id__in in: query - description: Type of an object, which is connected with payment required: false schema: allOf: - $ref: '#/components/schemas/ObjectTypeEnum' name: object_type in: query - description: Created after this datetime (exclusive) required: false schema: type: string format: date-time name: created_at__gt in: query - description: Created before this datetime (exclusive) required: false schema: type: string format: date-time name: created_at__lt in: query - description: Updated after this datetime (exclusive) required: false schema: type: string format: date-time name: updated_at__gt in: query - description: Updated before this datetime (exclusive) required: false schema: type: string format: date-time name: updated_at__lt in: query - description: Paid after this datetime (exclusive) required: false schema: type: string format: date-time name: paid_at__gt in: query - description: Paid before this datetime (exclusive) required: false schema: type: string format: date-time name: paid_at__lt in: query - description: Optional date of the upcoming payment (equality) required: false schema: type: string format: date name: planned_payment_date in: query - description: Planned after this date (exclusive) required: false schema: type: string format: date name: planned_payment_date__gt in: query - description: Planned before this date (exclusive) required: false schema: type: string format: date name: planned_payment_date__lt in: query - description: Planned at or after this date (inclusive) required: false schema: type: string format: date name: planned_payment_date__gte in: query - description: Planned at or before this date (inclusive) required: false schema: type: string format: date name: planned_payment_date__lte in: query - description: One of the payment record statuses required: false schema: allOf: - $ref: '#/components/schemas/PaymentRecordStatusEnum' name: status in: query - description: Payment intent status as a raw string required: false schema: type: string name: payment_intent_status in: query - description: Payment method used for the transaction required: false schema: type: string name: payment_method in: query - description: The ID of the entity that owns the requested resource. required: true schema: type: string format: uuid examples: - 9d2b4c8f-2087-4738-ba91-7359683c49a4 name: x-monite-entity-id in: header responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/PaymentRecordResponseList' '405': description: Method Not Allowed content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' security: - HTTPBearer: [] post: tags: - Payment records summary: Create a payment record operationId: post_payment_records parameters: - required: true schema: type: string format: date example: '2023-09-01' name: x-monite-version in: header - description: The ID of the entity that owns the requested resource. required: true schema: type: string format: uuid examples: - 9d2b4c8f-2087-4738-ba91-7359683c49a4 name: x-monite-entity-id in: header requestBody: content: application/json: schema: $ref: '#/components/schemas/PaymentRecordRequest' required: true responses: '201': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/PaymentRecordResponse' '405': description: Method Not Allowed content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' security: - HTTPBearer: [] servers: - url: https://api.dev.monite.com/v1 description: Development environment - url: https://api.sandbox.monite.com/v1 description: Sandbox environment - url: https://api.monite.com/v1 description: Production environment (Europe) - url: https://us.api.monite.com/v1 description: Production environment (North America) - url: https://api.monite.oaknorth.co.uk/v1 description: Oak POC environment /payment_records/{payment_record_id}: get: tags: - Payment records summary: Get a payment record operationId: get_payment_records_id parameters: - required: true schema: type: string format: date example: '2023-09-01' name: x-monite-version in: header - required: true schema: type: string format: uuid name: payment_record_id in: path - description: The ID of the entity that owns the requested resource. required: true schema: type: string format: uuid examples: - 9d2b4c8f-2087-4738-ba91-7359683c49a4 name: x-monite-entity-id in: header responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/PaymentRecordResponse' '405': description: Method Not Allowed content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' security: - HTTPBearer: [] patch: tags: - Payment records summary: Update a payment record operationId: patch_payment_records_id parameters: - required: true schema: type: string format: date example: '2023-09-01' name: x-monite-version in: header - required: true schema: type: string format: uuid name: payment_record_id in: path - description: The ID of the entity that owns the requested resource. required: true schema: type: string format: uuid examples: - 9d2b4c8f-2087-4738-ba91-7359683c49a4 name: x-monite-entity-id in: header requestBody: content: application/json: schema: $ref: '#/components/schemas/PaymentRecordUpdateRequest' required: true responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/PaymentRecordResponse' '405': description: Method Not Allowed content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' security: - HTTPBearer: [] servers: - url: https://api.dev.monite.com/v1 description: Development environment - url: https://api.sandbox.monite.com/v1 description: Sandbox environment - url: https://api.monite.com/v1 description: Production environment (Europe) - url: https://us.api.monite.com/v1 description: Production environment (North America) - url: https://api.monite.oaknorth.co.uk/v1 description: Oak POC environment /payment_records/{payment_record_id}/cancel: post: tags: - Payment records summary: Cancel a payment record operationId: post_payment_records_id_cancel parameters: - required: true schema: type: string format: date example: '2023-09-01' name: x-monite-version in: header - required: true schema: type: string format: uuid name: payment_record_id in: path - description: The ID of the entity that owns the requested resource. required: true schema: type: string format: uuid examples: - 9d2b4c8f-2087-4738-ba91-7359683c49a4 name: x-monite-entity-id in: header requestBody: content: application/json: schema: $ref: '#/components/schemas/PaymentRecordStatusUpdateRequest' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/PaymentRecordResponse' '405': description: Method Not Allowed content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' security: - HTTPBearer: [] servers: - url: https://api.dev.monite.com/v1 description: Development environment - url: https://api.sandbox.monite.com/v1 description: Sandbox environment - url: https://api.monite.com/v1 description: Production environment (Europe) - url: https://us.api.monite.com/v1 description: Production environment (North America) - url: https://api.monite.oaknorth.co.uk/v1 description: Oak POC environment /payment_records/{payment_record_id}/mark_as_succeeded: post: tags: - Payment records summary: Mark a payment record as succeeded operationId: post_payment_records_id_mark_as_succeeded parameters: - required: true schema: type: string format: date example: '2023-09-01' name: x-monite-version in: header - required: true schema: type: string format: uuid name: payment_record_id in: path - description: The ID of the entity that owns the requested resource. required: true schema: type: string format: uuid examples: - 9d2b4c8f-2087-4738-ba91-7359683c49a4 name: x-monite-entity-id in: header requestBody: content: application/json: schema: $ref: '#/components/schemas/PaymentRecordMarkAsSucceededRequest' required: true responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/PaymentRecordResponse' '405': description: Method Not Allowed content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' security: - HTTPBearer: [] servers: - url: https://api.dev.monite.com/v1 description: Development environment - url: https://api.sandbox.monite.com/v1 description: Sandbox environment - url: https://api.monite.com/v1 description: Production environment (Europe) - url: https://us.api.monite.com/v1 description: Production environment (North America) - url: https://api.monite.oaknorth.co.uk/v1 description: Oak POC environment /payment_records/{payment_record_id}/start_processing: post: tags: - Payment records summary: Start processing a payment record operationId: post_payment_records_id_start_processing parameters: - required: true schema: type: string format: date example: '2023-09-01' name: x-monite-version in: header - required: true schema: type: string format: uuid name: payment_record_id in: path - description: The ID of the entity that owns the requested resource. required: true schema: type: string format: uuid examples: - 9d2b4c8f-2087-4738-ba91-7359683c49a4 name: x-monite-entity-id in: header requestBody: content: application/json: schema: $ref: '#/components/schemas/PaymentRecordStatusUpdateRequest' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/PaymentRecordResponse' '405': description: Method Not Allowed content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' security: - HTTPBearer: [] servers: - url: https://api.dev.monite.com/v1 description: Development environment - url: https://api.sandbox.monite.com/v1 description: Sandbox environment - url: https://api.monite.com/v1 description: Production environment (Europe) - url: https://us.api.monite.com/v1 description: Production environment (North America) - url: https://api.monite.oaknorth.co.uk/v1 description: Oak POC environment components: schemas: PaymentRecordObjectRequest: properties: id: type: string format: uuid description: ID of the invoice type: $ref: '#/components/schemas/ObjectTypeEnum' additionalProperties: false type: object required: - id - type OrderEnum: type: string enum: - asc - desc PaymentRecordStatusEnum: type: string enum: - created - processing - succeeded - canceled PaymentRecordCursorFields: type: string enum: - paid_at - amount - overpaid_amount PaymentRecordResponseList: properties: data: items: $ref: '#/components/schemas/PaymentRecordResponse' type: array next_pagination_token: type: string description: A token that can be sent in the `pagination_token` query parameter to get the next page of results, or `null` if there is no next page (i.e. you've reached the last page). prev_pagination_token: type: string description: A token that can be sent in the `pagination_token` query parameter to get the previous page of results, or `null` if there is no previous page (i.e. you've reached the first page). additionalProperties: false type: object required: - data PaymentRecordRequest: properties: amount: type: integer description: Positive amount in case of successful payment, negative amount in case of payment failure or refund, represented in minor currency units (e.g., cents). currency: allOf: - $ref: '#/components/schemas/CurrencyEnum' description: Currency code (ISO 4217) indicating the currency in which the payment was made. entity_user_id: type: string format: uuid description: ID of the user associated with the payment, if applicable. object: allOf: - $ref: '#/components/schemas/PaymentRecordObjectRequest' description: Reference object linked to this payment record, indicating the type (receivable or payable) and its identifier. paid_at: type: string format: date-time description: Timestamp marking when the payment was executed. Null if payment hasn't occurred yet. payment_intent_id: type: string format: uuid description: Identifier for an payment intent. payment_intent_status: type: string description: Raw status string of the external payment intent. payment_method: type: string description: Payment method used or planned for the transaction. planned_payment_date: type: string format: date description: Scheduled date for future payments, required when the payment is planned but not yet executed. status: type: string enum: - created - processing - succeeded description: Status of the payment record indicating its current stage (e.g., created, processing, succeeded). default: succeeded additionalProperties: false type: object required: - amount - currency - object PaymentRecordObjectResponse: properties: id: type: string format: uuid description: ID of the invoice new_status: type: string description: Status, in which object has been moved old_status: type: string description: Status, in which object was before payment type: $ref: '#/components/schemas/ObjectTypeEnum' additionalProperties: false type: object required: - id - new_status - old_status - type HTTPValidationError: properties: detail: items: $ref: '#/components/schemas/ValidationError' type: array type: object ErrorSchema: properties: message: type: string type: object required: - message ValidationError: properties: loc: items: anyOf: - type: string - type: integer type: array msg: type: string type: type: string type: object required: - loc - msg - type PaymentRecordUpdateRequest: properties: amount: type: integer description: Positive amount in case of successful payment, negative amount in case of payment failure or refund, represented in minor currency units (e.g., cents). currency: allOf: - $ref: '#/components/schemas/CurrencyEnum' description: Currency code (ISO 4217) indicating the currency in which the payment was made. entity_user_id: type: string format: uuid description: ID of the user associated with the payment, if applicable. object: allOf: - $ref: '#/components/schemas/PaymentRecordObjectRequest' description: Reference object linked to this payment record, indicating the type (receivable or payable) and its identifier. paid_at: type: string format: date-time description: Timestamp marking when the payment was executed. Null if payment hasn't occurred yet. payment_intent_id: type: string format: uuid description: Identifier for an payment intent. payment_intent_status: type: string description: Raw status string of the external payment intent. payment_method: type: string description: Payment method used or planned for the transaction. planned_payment_date: type: string format: date description: Scheduled date for future payments, required when the payment is planned but not yet executed. additionalProperties: false type: object PaymentRecordHistoryResponse: properties: entity_user_id: type: string format: uuid status: $ref: '#/components/schemas/PaymentRecordStatusEnum' timestamp: type: string format: date-time description: Timestamp of the change in a history type: object required: - status - timestamp PaymentRecordStatusUpdateRequest: properties: payment_intent_status: type: string description: Raw status string of the external payment intent. additionalProperties: false type: object ErrorSchemaResponse: properties: error: $ref: '#/components/schemas/ErrorSchema' type: object required: - error ObjectTypeEnum: type: string enum: - receivable - payable PaymentRecordResponse: properties: id: type: string format: uuid amount: type: integer description: Positive amount in case of successful payment, negative amount in case of payment failure or refund, represented in minor currency units (e.g., cents). currency: allOf: - $ref: '#/components/schemas/CurrencyEnum' description: Currency code (ISO 4217) indicating the currency in which the payment was made. entity_user_id: type: string format: uuid description: ID of the user associated with the payment, if applicable. history: items: $ref: '#/components/schemas/PaymentRecordHistoryResponse' type: array description: History of the payment record. is_external: type: boolean object: $ref: '#/components/schemas/PaymentRecordObjectResponse' overpaid_amount: type: integer minimum: 0.0 description: Filled in a case, if payment amount is more, than total_amount default: 0 paid_at: type: string format: date-time description: Timestamp marking when the payment was executed. Null if payment hasn't occurred yet. payment_intent_id: type: string format: uuid description: Identifier for an payment intent. payment_intent_status: type: string description: Raw status string of the external payment intent. payment_method: type: string description: Payment method used or planned for the transaction. planned_payment_date: type: string format: date description: Scheduled date for future payments, required when the payment is planned but not yet executed. status: type: string description: 'The current status of the payment record. Possible values: `created`, `processing`, `succeeded`, `canceled`.' default: succeeded type: object required: - id - amount - currency - history - is_external - object PaymentRecordMarkAsSucceededRequest: properties: paid_at: type: string format: date-time description: Timestamp marking when the payment was executed. payment_intent_status: type: string description: Raw status string of the external payment intent. additionalProperties: false type: object required: - paid_at CurrencyEnum: type: string enum: - AED - AFN - ALL - AMD - ANG - AOA - ARS - AUD - AWG - AZN - BAM - BBD - BDT - BGN - BHD - BIF - BMD - BND - BOB - BRL - BSD - BTN - BWP - BYN - BZD - CAD - CDF - CHF - CLP - CNY - COP - CRC - CVE - CZK - DJF - DKK - DOP - DZD - EGP - ETB - EUR - FJD - FKP - GBP - GEL - GHS - GIP - GMD - GNF - GTQ - GYD - HKD - HNL - HTG - HUF - IDR - ILS - INR - IQD - ISK - JMD - JOD - JPY - KES - KGS - KHR - KMF - KRW - KWD - KYD - KZT - LAK - LBP - LKR - LRD - LSL - LYD - MAD - MDL - MGA - MKD - MMK - MNT - MOP - MUR - MVR - MWK - MXN - MYR - MZN - NAD - NGN - NIO - NOK - NPR - NZD - OMR - PAB - PEN - PGK - PHP - PKR - PLN - PYG - QAR - RON - RSD - RUB - RWF - SAR - SBD - SCR - SEK - SGD - SHP - SLE - SOS - SRD - SSP - SVC - SZL - THB - TJS - TMT - TND - TOP - TRY - TTD - TWD - TZS - UAH - UGX - USD - UYU - UZS - VND - VUV - WST - XAF - XCD - XOF - XPF - YER - ZAR - ZMW securitySchemes: HTTPBearer: type: http scheme: bearer x-refined-from: - monite-openapi-2023-09-01.json - monite-openapi-2024-05-25.json - monite-openapi.yml