---
title: "Get Financial Settlement Schedule"
url: "https://developer.pexa.co.uk/apis/financials-v1-v1/versions/d3f169b2-8b77-47f6-8696-d6efa1bd09f2/operations/fetchFinancialSettlementSchedule"
---

> Full API specification: https://developer.pexa.co.uk/apis/financials-v1-v1/versions/d3f169b2-8b77-47f6-8696-d6efa1bd09f2.md

# Get Financial Settlement Schedule

`GET` `/partner/api/platformconnect/v1/financial-settlement-schedules`

Operation ID: `fetchFinancialSettlementSchedule`

This API is used by Law Firms to fetch Financial Settlement Schedule information. This includes the funds source and destination line items and completion date. The API provides the Financial Settlement Schedule ID which can be used in conjunction with the additional Settlement Service APIs to add or update existing financial settlement schedule details.

## Query parameters

- `workspace_id` (string, uuid, optional) - Unique identifier of the Workspace entity for which financial settlement schedule need to be fetched

## Header parameters

- `X-Request-Correlation-Id` (string, optional)

## Responses

- `200` - OK
- `202` - ACCEPTED - Resource is being set up. Client should retry after a short delay.
- `400` - BAD REQUEST
- `500` - INTERNAL SERVER ERROR
- `503` - SERVICE UNAVAILABLE

## OpenAPI definition

```yaml
openapi: 3.0.1
info:
  title: Financial
  version: v1
servers:
  - url: https://api.pexa.co.uk
    description: API Gateway URL
paths:
  /partner/api/platformconnect/v1/financial-settlement-schedules:
    get:
      tags:
        - FinancialSettlementSchedule
      summary: Get Financial Settlement Schedule
      description: >
        This API is used by Law Firms to fetch Financial Settlement Schedule
        information. This includes the funds source and destination line items
        and completion date.


        The API provides the Financial Settlement Schedule ID which can be used
        in conjunction with the additional Settlement Service APIs to add or
        update existing financial settlement schedule details.
      operationId: fetchFinancialSettlementSchedule
      security:
        - oauth2:
            - view:financial_settlement_schedules
      parameters:
        - in: header
          name: X-Request-Correlation-Id
          schema:
            type: string
            description: The unique identifier for the request
        - name: workspace_id
          in: query
          description: Unique identifier of the Workspace entity for which financial
            settlement schedule need to be fetched
          schema:
            type: string
            format: uuid
      responses:
        "200":
          description: OK
          headers:
            X-API-Version:
              schema:
                type: string
                description: The API version that was used to process the request.
            X-Request-Correlation-Id:
              schema:
                type: string
                description: The unique identifier for the request
          content:
            application/json:
              schema:
                type: object
                properties:
                  records:
                    type: array
                    items:
                      type: object
                      properties:
                        financialSettlementScheduleId:
                          type: string
                          format: uuid
                          example: c7c0ee40-25c1-11ec-9621-0242ab130002
                        workspaceId:
                          type: string
                          description: UUID of the corresponding workspace
                          format: uuid
                          example: c7c0ee40-25c1-11ec-9621-0242ac130002
                        workspaceStatus:
                          type: string
                          description: Status of workspace to which the financial settlement schedule
                            belongs
                          example: PREPARED
                        completionDate:
                          type: string
                          description: settlement completion date, yyyy-mm-dd (format)
                          format: date
                        approvals:
                          default: []
                          type: array
                          items:
                            type: object
                            properties:
                              participantId:
                                type: string
                                format: uuid
                                example: 59a02f78-79c2-49ff-b27f-5606b4cda762
                              isApproved:
                                type: boolean
                                example: true
                          example:
                            - participantId: 59a02f78-79c2-49ff-b27f-5606b4cda762
                              isApproved: true
                        status:
                          type: string
                          description: financial settlement schedule status
                          example: Prepared
                        workspaceReferenceId:
                          type: string
                          description: Reference Id of the corresponding workspace
                          example: PEXA220000001
                        hardLocked:
                          type: boolean
                          description: Hard locked status of the workspace
                          example: false
                        held:
                          type: boolean
                          description: Held status of financial settlement schedule
                          example: false
                        settlementReference:
                          type: string
                          description: Reference of the associated settlement
                          example: PEXA081220211105
                        slotTime:
                          type: string
                          description: slot time at which financial settlement schedule will settle
                          example: 880
                        amountPayableOnCompletion:
                          type: number
                          description: Amount payable to the seller representative on completion in S&P
                            transaction
                          example: 100
                        lineItems:
                          type: array
                          default: []
                          items:
                            type: object
                            properties:
                              lineItemId:
                                type: string
                                description: UUID of the corresponding line item
                                format: uuid
                                example: c7c0ee40-25c1-11ec-9621-0242ac130002
                              type:
                                type: string
                                pattern: ^(SOURCE|DESTINATION)$
                                example: SOURCE
                                description: |
                                  Allowed values:
                                   [`SOURCE`, `DESTINATION`]
                              amount:
                                type: number
                                minimum: 1
                                maximum: 999999999999.99
                                description: Amount to be credited / debited
                                example: 10
                              authorised:
                                type: boolean
                                example: true
                                nullable: true
                                description: Authorisation status of the line item
                              reference:
                                type: string
                                minLength: 1
                                maxLength: 18
                                pattern: ^[a-zA-Z0-9\/\-\\?:().,'#=!"%&*<>;@{+\s]*$
                                example: Nation wide
                              category:
                                type: string
                                description: >
                                  Allowed values for source line item:
                                   [`Mortgage Advance`]
                                  <br> Allowed values for destination line item:
                                   [`Redemption`, `Conveyancing Fees`, `Surplus`, `Onward Funds`]
                              lineItemReference:
                                type: string
                                example: PEXA220000003D01
                              bankAccount:
                                type: object
                                nullable: true
                                description: This field is required and can be updated only for type
                                  DESTINATION.
                                properties:
                                  accountName:
                                    type: string
                                    maxLength: 35
                                    minLength: 1
                                    pattern: ^[a-zA-Z0-9\/\-\\?:().,'#=!"%&*<>;@{+\s]*$
                                    example: Bob Smith
                                  accountNumber:
                                    type: string
                                    pattern: ^\d{8}$
                                    example: "12345678"
                                  bankCode:
                                    type: string
                                    pattern: ^\d{6}$
                                    example: "123456"
                                  accountType:
                                    type: string
                                    pattern: ^(BUSINESS|PERSONAL)$
                                    example: BUSINESS
                                    description: |
                                      Allowed Values: [`BUSINESS`, `PERSONAL`]
                                  displayName:
                                    type: string
                                    nullable: true
                                    maxLength: 35
                                    pattern: ^[0-9a-zA-Z/\-\?:\(\)\.,'\+ !#$%&\*=^_`\{\|\}~";<>@\[\\\]]+$
                                    example: Mortgage account
                                required:
                                  - accountName
                                  - accountNumber
                                  - bankCode
                              verificationDetail:
                                type: object
                                nullable: true
                                properties:
                                  status:
                                    type: string
                                    pattern: ^(MATCH|NAME_PARTIAL_MATCH|NAME_PARTIAL_MATCH_TYPE_NO_MATCH|NO_MATCH|UNABLE_TO_MATCH|ERROR|TIMEOUT|TYPE_NO_MATCH|ACCOUNT_VERIFICATION_NOT_RUN)$
                                    example: NAME_PARTIAL_MATCH
                                    description: >
                                      status of account verification Allowed
                                      Values: [ `MATCH`, `NAME_PARTIAL_MATCH`,
                                      `NAME_PARTIAL_MATCH_TYPE_NO_MATCH`,
                                      `NO_MATCH`, `UNABLE_TO_MATCH`, `ERROR`,
                                      `TIMEOUT`, `TYPE_NO_MATCH`,
                                      `ACCOUNT_VERIFICATION_NOT_RUN` ]
                                  partnerReasonCode:
                                    type: string
                                    nullable: true
                                    description: |
                                      Reason code sent from third party system for account verification.

                                      | Code |                Description                   |
                                      | -------|----------------------------------|
                                      | ANNM | Account Name does Not Match |
                                      | MBAM | There may be a match on the Account name |
                                      | BANM | Business account, name matches |
                                      | PANM | Personal account, name matches |
                                      | BAMM | Business account, name may be a match |
                                      | PAMM | Personal account, name may be a match |
                                      | AC01 | Incorrect Account Number |
                                      | IVCR | Invalid Customer Reference |
                                      | ACNS | Account type Not Supported for CoP |
                                      | OPTO | Opted out of CoP Scheme |
                                      | CASS | Account has been switched |
                                      | SCNS | Sort code not supported at endpoint |
                                  verified:
                                    type: boolean
                                    description: denotes in the account details are verified
                                  acceptedAt:
                                    type: string
                                    nullable: true
                                    format: date-time
                                    description: timestamp recorded when the consent was given for the account
                                  acceptedBy:
                                    type: string
                                    nullable: true
                                    description: id of the user who gave the consent for the account
                                  actualName:
                                    type: string
                                    nullable: true
                                    description: Actual name of given account received from CoP in case of partial
                                      match
                                  isManualOverrideAllowed:
                                    type: boolean
                                    description: Flag to indicate if manual override is allowed
                              hasLinkedAccount:
                                type: boolean
                                nullable: true
                                description: Flag to indicate whether account is a linked account
                          example:
                            - lineItemId: 5c39f824-4070-46fc-97c0-72c565542e09
                              type: SOURCE
                              amount: 19
                              authorised: false
                              reference: dfd
                              category: Mortgage Advance
                              lineItemReference: PEXA230044822S01
                              bankAccount: null
                              verificationDetail: null
                              hasLinkedAccount: null
                            - lineItemId: ed781522-e4df-4a11-936c-6b5ec0ec9498
                              amount: 56
                              type: DESTINATION
                              authorised: null
                              reference: hdg
                              category: Redemption
                              lineItemReference: PEXA230044822D02
                              bankAccount:
                                accountName: acc name
                                accountNumber: "34235648"
                                bankCode: "453673"
                                accountType: BUSINESS
                                displayName: null
                              verificationDetail:
                                status: MATCH
                                partnerReasonCode: null
                                verified: true
                                acceptedAt: null
                                acceptedBy: null
                                actualName: null
                                isManualOverrideAllowed: false
                              hasLinkedAccount: false
                        participants:
                          default: []
                          type: array
                          items:
                            type: object
                            properties:
                              subscriberId:
                                type: string
                                format: uuid
                                example: 59a02f78-79c2-49ff-b27f-5606b4cda762
                              role:
                                type: string
                                example: INCOMING_LENDER
                      required:
                        - financialSettlementScheduleId
                  errors:
                    default: []
                    type: array
                    items:
                      type: object
                      properties:
                        field:
                          type: string
                          description: Field
                        message:
                          type: string
                          description: Error message
        "202":
          description: ACCEPTED - Resource is being set up. Client should retry after a
            short delay.
          headers:
            X-API-Version:
              schema:
                type: string
                description: The API version that was used to process the request.
            X-Request-Correlation-Id:
              schema:
                type: string
                description: The unique identifier for the request
          content:
            application/json:
              schema:
                type: object
                properties:
                  records:
                    type: array
                    items:
                      type: object
                      properties:
                        financialSettlementScheduleId:
                          type: string
                          format: uuid
                          example: c7c0ee40-25c1-11ec-9621-0242ab130002
                        workspaceId:
                          type: string
                          description: UUID of the corresponding workspace
                          format: uuid
                          example: c7c0ee40-25c1-11ec-9621-0242ac130002
                        workspaceStatus:
                          type: string
                          description: Status of workspace to which the financial settlement schedule
                            belongs
                          example: PREPARED
                        completionDate:
                          type: string
                          description: settlement completion date, yyyy-mm-dd (format)
                          format: date
                        approvals:
                          default: []
                          type: array
                          items:
                            type: object
                            properties:
                              participantId:
                                type: string
                                format: uuid
                                example: 59a02f78-79c2-49ff-b27f-5606b4cda762
                              isApproved:
                                type: boolean
                                example: true
                          example:
                            - participantId: 59a02f78-79c2-49ff-b27f-5606b4cda762
                              isApproved: true
                        status:
                          type: string
                          description: financial settlement schedule status
                          example: Prepared
                        workspaceReferenceId:
                          type: string
                          description: Reference Id of the corresponding workspace
                          example: PEXA220000001
                        hardLocked:
                          type: boolean
                          description: Hard locked status of the workspace
                          example: false
                        held:
                          type: boolean
                          description: Held status of financial settlement schedule
                          example: false
                        settlementReference:
                          type: string
                          description: Reference of the associated settlement
                          example: PEXA081220211105
                        slotTime:
                          type: string
                          description: slot time at which financial settlement schedule will settle
                          example: 880
                        amountPayableOnCompletion:
                          type: number
                          description: Amount payable to the seller representative on completion in S&P
                            transaction
                          example: 100
                        lineItems:
                          type: array
                          default: []
                          items:
                            type: object
                            properties:
                              lineItemId:
                                type: string
                                description: UUID of the corresponding line item
                                format: uuid
                                example: c7c0ee40-25c1-11ec-9621-0242ac130002
                              type:
                                type: string
                                pattern: ^(SOURCE|DESTINATION)$
                                example: SOURCE
                                description: |
                                  Allowed values:
                                   [`SOURCE`, `DESTINATION`]
                              amount:
                                type: number
                                minimum: 1
                                maximum: 999999999999.99
                                description: Amount to be credited / debited
                                example: 10
                              authorised:
                                type: boolean
                                example: true
                                nullable: true
                                description: Authorisation status of the line item
                              reference:
                                type: string
                                minLength: 1
                                maxLength: 18
                                pattern: ^[a-zA-Z0-9\/\-\\?:().,'#=!"%&*<>;@{+\s]*$
                                example: Nation wide
                              category:
                                type: string
                                description: >
                                  Allowed values for source line item:
                                   [`Mortgage Advance`]
                                  <br> Allowed values for destination line item:
                                   [`Redemption`, `Conveyancing Fees`, `Surplus`, `Onward Funds`]
                              lineItemReference:
                                type: string
                                example: PEXA220000003D01
                              bankAccount:
                                type: object
                                nullable: true
                                description: This field is required and can be updated only for type
                                  DESTINATION.
                                properties:
                                  accountName:
                                    type: string
                                    maxLength: 35
                                    minLength: 1
                                    pattern: ^[a-zA-Z0-9\/\-\\?:().,'#=!"%&*<>;@{+\s]*$
                                    example: Bob Smith
                                  accountNumber:
                                    type: string
                                    pattern: ^\d{8}$
                                    example: "12345678"
                                  bankCode:
                                    type: string
                                    pattern: ^\d{6}$
                                    example: "123456"
                                  accountType:
                                    type: string
                                    pattern: ^(BUSINESS|PERSONAL)$
                                    example: BUSINESS
                                    description: |
                                      Allowed Values: [`BUSINESS`, `PERSONAL`]
                                  displayName:
                                    type: string
                                    nullable: true
                                    maxLength: 35
                                    pattern: ^[0-9a-zA-Z/\-\?:\(\)\.,'\+ !#$%&\*=^_`\{\|\}~";<>@\[\\\]]+$
                                    example: Mortgage account
                                required:
                                  - accountName
                                  - accountNumber
                                  - bankCode
                              verificationDetail:
                                type: object
                                nullable: true
                                properties:
                                  status:
                                    type: string
                                    pattern: ^(MATCH|NAME_PARTIAL_MATCH|NAME_PARTIAL_MATCH_TYPE_NO_MATCH|NO_MATCH|UNABLE_TO_MATCH|ERROR|TIMEOUT|TYPE_NO_MATCH|ACCOUNT_VERIFICATION_NOT_RUN)$
                                    example: NAME_PARTIAL_MATCH
                                    description: >
                                      status of account verification Allowed
                                      Values: [ `MATCH`, `NAME_PARTIAL_MATCH`,
                                      `NAME_PARTIAL_MATCH_TYPE_NO_MATCH`,
                                      `NO_MATCH`, `UNABLE_TO_MATCH`, `ERROR`,
                                      `TIMEOUT`, `TYPE_NO_MATCH`,
                                      `ACCOUNT_VERIFICATION_NOT_RUN` ]
                                  partnerReasonCode:
                                    type: string
                                    nullable: true
                                    description: |
                                      Reason code sent from third party system for account verification.

                                      | Code |                Description                   |
                                      | -------|----------------------------------|
                                      | ANNM | Account Name does Not Match |
                                      | MBAM | There may be a match on the Account name |
                                      | BANM | Business account, name matches |
                                      | PANM | Personal account, name matches |
                                      | BAMM | Business account, name may be a match |
                                      | PAMM | Personal account, name may be a match |
                                      | AC01 | Incorrect Account Number |
                                      | IVCR | Invalid Customer Reference |
                                      | ACNS | Account type Not Supported for CoP |
                                      | OPTO | Opted out of CoP Scheme |
                                      | CASS | Account has been switched |
                                      | SCNS | Sort code not supported at endpoint |
                                  verified:
                                    type: boolean
                                    description: denotes in the account details are verified
                                  acceptedAt:
                                    type: string
                                    nullable: true
                                    format: date-time
                                    description: timestamp recorded when the consent was given for the account
                                  acceptedBy:
                                    type: string
                                    nullable: true
                                    description: id of the user who gave the consent for the account
                                  actualName:
                                    type: string
                                    nullable: true
                                    description: Actual name of given account received from CoP in case of partial
                                      match
                                  isManualOverrideAllowed:
                                    type: boolean
                                    description: Flag to indicate if manual override is allowed
                              hasLinkedAccount:
                                type: boolean
                                nullable: true
                                description: Flag to indicate whether account is a linked account
                          example:
                            - lineItemId: 5c39f824-4070-46fc-97c0-72c565542e09
                              type: SOURCE
                              amount: 19
                              authorised: false
                              reference: dfd
                              category: Mortgage Advance
                              lineItemReference: PEXA230044822S01
                              bankAccount: null
                              verificationDetail: null
                              hasLinkedAccount: null
                            - lineItemId: ed781522-e4df-4a11-936c-6b5ec0ec9498
                              amount: 56
                              type: DESTINATION
                              authorised: null
                              reference: hdg
                              category: Redemption
                              lineItemReference: PEXA230044822D02
                              bankAccount:
                                accountName: acc name
                                accountNumber: "34235648"
                                bankCode: "453673"
                                accountType: BUSINESS
                                displayName: null
                              verificationDetail:
                                status: MATCH
                                partnerReasonCode: null
                                verified: true
                                acceptedAt: null
                                acceptedBy: null
                                actualName: null
                                isManualOverrideAllowed: false
                              hasLinkedAccount: false
                        participants:
                          default: []
                          type: array
                          items:
                            type: object
                            properties:
                              subscriberId:
                                type: string
                                format: uuid
                                example: 59a02f78-79c2-49ff-b27f-5606b4cda762
                              role:
                                type: string
                                example: INCOMING_LENDER
                      required:
                        - financialSettlementScheduleId
                  errors:
                    default: []
                    type: array
                    items:
                      type: object
                      properties:
                        field:
                          type: string
                          description: Field
                        message:
                          type: string
                          description: Error message
              example:
                errors:
                  - field: null
                    message: Resource being set up. Please try again after a few seconds.
        "400":
          description: BAD REQUEST
          headers:
            X-API-Version:
              schema:
                type: string
                description: The API version that was used to process the request.
            X-Request-Correlation-Id:
              schema:
                type: string
                description: The unique identifier for the request
          content:
            application/json:
              schema:
                type: object
                properties:
                  records:
                    type: array
                    items:
                      type: object
                      properties:
                        financialSettlementScheduleId:
                          type: string
                          format: uuid
                          example: c7c0ee40-25c1-11ec-9621-0242ab130002
                        workspaceId:
                          type: string
                          description: UUID of the corresponding workspace
                          format: uuid
                          example: c7c0ee40-25c1-11ec-9621-0242ac130002
                        workspaceStatus:
                          type: string
                          description: Status of workspace to which the financial settlement schedule
                            belongs
                          example: PREPARED
                        completionDate:
                          type: string
                          description: settlement completion date, yyyy-mm-dd (format)
                          format: date
                        approvals:
                          default: []
                          type: array
                          items:
                            type: object
                            properties:
                              participantId:
                                type: string
                                format: uuid
                                example: 59a02f78-79c2-49ff-b27f-5606b4cda762
                              isApproved:
                                type: boolean
                                example: true
                          example:
                            - participantId: 59a02f78-79c2-49ff-b27f-5606b4cda762
                              isApproved: true
                        status:
                          type: string
                          description: financial settlement schedule status
                          example: Prepared
                        workspaceReferenceId:
                          type: string
                          description: Reference Id of the corresponding workspace
                          example: PEXA220000001
                        hardLocked:
                          type: boolean
                          description: Hard locked status of the workspace
                          example: false
                        held:
                          type: boolean
                          description: Held status of financial settlement schedule
                          example: false
                        settlementReference:
                          type: string
                          description: Reference of the associated settlement
                          example: PEXA081220211105
                        slotTime:
                          type: string
                          description: slot time at which financial settlement schedule will settle
                          example: 880
                        amountPayableOnCompletion:
                          type: number
                          description: Amount payable to the seller representative on completion in S&P
                            transaction
                          example: 100
                        lineItems:
                          type: array
                          default: []
                          items:
                            type: object
                            properties:
                              lineItemId:
                                type: string
                                description: UUID of the corresponding line item
                                format: uuid
                                example: c7c0ee40-25c1-11ec-9621-0242ac130002
                              type:
                                type: string
                                pattern: ^(SOURCE|DESTINATION)$
                                example: SOURCE
                                description: |
                                  Allowed values:
                                   [`SOURCE`, `DESTINATION`]
                              amount:
                                type: number
                                minimum: 1
                                maximum: 999999999999.99
                                description: Amount to be credited / debited
                                example: 10
                              authorised:
                                type: boolean
                                example: true
                                nullable: true
                                description: Authorisation status of the line item
                              reference:
                                type: string
                                minLength: 1
                                maxLength: 18
                                pattern: ^[a-zA-Z0-9\/\-\\?:().,'#=!"%&*<>;@{+\s]*$
                                example: Nation wide
                              category:
                                type: string
                                description: >
                                  Allowed values for source line item:
                                   [`Mortgage Advance`]
                                  <br> Allowed values for destination line item:
                                   [`Redemption`, `Conveyancing Fees`, `Surplus`, `Onward Funds`]
                              lineItemReference:
                                type: string
                                example: PEXA220000003D01
                              bankAccount:
                                type: object
                                nullable: true
                                description: This field is required and can be updated only for type
                                  DESTINATION.
                                properties:
                                  accountName:
                                    type: string
                                    maxLength: 35
                                    minLength: 1
                                    pattern: ^[a-zA-Z0-9\/\-\\?:().,'#=!"%&*<>;@{+\s]*$
                                    example: Bob Smith
                                  accountNumber:
                                    type: string
                                    pattern: ^\d{8}$
                                    example: "12345678"
                                  bankCode:
                                    type: string
                                    pattern: ^\d{6}$
                                    example: "123456"
                                  accountType:
                                    type: string
                                    pattern: ^(BUSINESS|PERSONAL)$
                                    example: BUSINESS
                                    description: |
                                      Allowed Values: [`BUSINESS`, `PERSONAL`]
                                  displayName:
                                    type: string
                                    nullable: true
                                    maxLength: 35
                                    pattern: ^[0-9a-zA-Z/\-\?:\(\)\.,'\+ !#$%&\*=^_`\{\|\}~";<>@\[\\\]]+$
                                    example: Mortgage account
                                required:
                                  - accountName
                                  - accountNumber
                                  - bankCode
                              verificationDetail:
                                type: object
                                nullable: true
                                properties:
                                  status:
                                    type: string
                                    pattern: ^(MATCH|NAME_PARTIAL_MATCH|NAME_PARTIAL_MATCH_TYPE_NO_MATCH|NO_MATCH|UNABLE_TO_MATCH|ERROR|TIMEOUT|TYPE_NO_MATCH|ACCOUNT_VERIFICATION_NOT_RUN)$
                                    example: NAME_PARTIAL_MATCH
                                    description: >
                                      status of account verification Allowed
                                      Values: [ `MATCH`, `NAME_PARTIAL_MATCH`,
                                      `NAME_PARTIAL_MATCH_TYPE_NO_MATCH`,
                                      `NO_MATCH`, `UNABLE_TO_MATCH`, `ERROR`,
                                      `TIMEOUT`, `TYPE_NO_MATCH`,
                                      `ACCOUNT_VERIFICATION_NOT_RUN` ]
                                  partnerReasonCode:
                                    type: string
                                    nullable: true
                                    description: |
                                      Reason code sent from third party system for account verification.

                                      | Code |                Description                   |
                                      | -------|----------------------------------|
                                      | ANNM | Account Name does Not Match |
                                      | MBAM | There may be a match on the Account name |
                                      | BANM | Business account, name matches |
                                      | PANM | Personal account, name matches |
                                      | BAMM | Business account, name may be a match |
                                      | PAMM | Personal account, name may be a match |
                                      | AC01 | Incorrect Account Number |
                                      | IVCR | Invalid Customer Reference |
                                      | ACNS | Account type Not Supported for CoP |
                                      | OPTO | Opted out of CoP Scheme |
                                      | CASS | Account has been switched |
                                      | SCNS | Sort code not supported at endpoint |
                                  verified:
                                    type: boolean
                                    description: denotes in the account details are verified
                                  acceptedAt:
                                    type: string
                                    nullable: true
                                    format: date-time
                                    description: timestamp recorded when the consent was given for the account
                                  acceptedBy:
                                    type: string
                                    nullable: true
                                    description: id of the user who gave the consent for the account
                                  actualName:
                                    type: string
                                    nullable: true
                                    description: Actual name of given account received from CoP in case of partial
                                      match
                                  isManualOverrideAllowed:
                                    type: boolean
                                    description: Flag to indicate if manual override is allowed
                              hasLinkedAccount:
                                type: boolean
                                nullable: true
                                description: Flag to indicate whether account is a linked account
                          example:
                            - lineItemId: 5c39f824-4070-46fc-97c0-72c565542e09
                              type: SOURCE
                              amount: 19
                              authorised: false
                              reference: dfd
                              category: Mortgage Advance
                              lineItemReference: PEXA230044822S01
                              bankAccount: null
                              verificationDetail: null
                              hasLinkedAccount: null
                            - lineItemId: ed781522-e4df-4a11-936c-6b5ec0ec9498
                              amount: 56
                              type: DESTINATION
                              authorised: null
                              reference: hdg
                              category: Redemption
                              lineItemReference: PEXA230044822D02
                              bankAccount:
                                accountName: acc name
                                accountNumber: "34235648"
                                bankCode: "453673"
                                accountType: BUSINESS
                                displayName: null
                              verificationDetail:
                                status: MATCH
                                partnerReasonCode: null
                                verified: true
                                acceptedAt: null
                                acceptedBy: null
                                actualName: null
                                isManualOverrideAllowed: false
                              hasLinkedAccount: false
                        participants:
                          default: []
                          type: array
                          items:
                            type: object
                            properties:
                              subscriberId:
                                type: string
                                format: uuid
                                example: 59a02f78-79c2-49ff-b27f-5606b4cda762
                              role:
                                type: string
                                example: INCOMING_LENDER
                      required:
                        - financialSettlementScheduleId
                  errors:
                    default: []
                    type: array
                    items:
                      type: object
                      properties:
                        field:
                          type: string
                          description: Field
                        message:
                          type: string
                          description: Error message
              example:
                errors:
                  - field: workspaceId
                    message: workspaceId has to be a UUID
        "500":
          description: INTERNAL SERVER ERROR
          headers:
            X-API-Version:
              schema:
                type: string
                description: The API version that was used to process the request.
            X-Request-Correlation-Id:
              schema:
                type: string
                description: The unique identifier for the request
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      financialSettlementScheduleId:
                        type: string
                        format: uuid
                        example: c7c0ee40-25c1-11ec-9621-0242ab130002
                      workspaceId:
                        type: string
                        description: UUID of the corresponding workspace
                        format: uuid
                        example: c7c0ee40-25c1-11ec-9621-0242ac130002
                      workspaceStatus:
                        type: string
                        description: Status of workspace to which the financial settlement schedule
                          belongs
                        example: PREPARED
                      completionDate:
                        type: string
                        description: settlement completion date, yyyy-mm-dd (format)
                        format: date
                      approvals:
                        default: []
                        type: array
                        items:
                          type: object
                          properties:
                            participantId:
                              type: string
                              format: uuid
                              example: 59a02f78-79c2-49ff-b27f-5606b4cda762
                            isApproved:
                              type: boolean
                              example: true
                        example:
                          - participantId: 59a02f78-79c2-49ff-b27f-5606b4cda762
                            isApproved: true
                      status:
                        type: string
                        description: financial settlement schedule status
                        example: Prepared
                      workspaceReferenceId:
                        type: string
                        description: Reference Id of the corresponding workspace
                        example: PEXA220000001
                      hardLocked:
                        type: boolean
                        description: Hard locked status of the workspace
                        example: false
                      held:
                        type: boolean
                        description: Held status of financial settlement schedule
                        example: false
                      settlementReference:
                        type: string
                        description: Reference of the associated settlement
                        example: PEXA081220211105
                      slotTime:
                        type: string
                        description: slot time at which financial settlement schedule will settle
                        example: 880
                      amountPayableOnCompletion:
                        type: number
                        description: Amount payable to the seller representative on completion in S&P
                          transaction
                        example: 100
                      lineItems:
                        type: array
                        default: []
                        items:
                          type: object
                          properties:
                            lineItemId:
                              type: string
                              description: UUID of the corresponding line item
                              format: uuid
                              example: c7c0ee40-25c1-11ec-9621-0242ac130002
                            type:
                              type: string
                              pattern: ^(SOURCE|DESTINATION)$
                              example: SOURCE
                              description: |
                                Allowed values:
                                 [`SOURCE`, `DESTINATION`]
                            amount:
                              type: number
                              minimum: 1
                              maximum: 999999999999.99
                              description: Amount to be credited / debited
                              example: 10
                            authorised:
                              type: boolean
                              example: true
                              nullable: true
                              description: Authorisation status of the line item
                            reference:
                              type: string
                              minLength: 1
                              maxLength: 18
                              pattern: ^[a-zA-Z0-9\/\-\\?:().,'#=!"%&*<>;@{+\s]*$
                              example: Nation wide
                            category:
                              type: string
                              description: >
                                Allowed values for source line item:
                                 [`Mortgage Advance`]
                                <br> Allowed values for destination line item:
                                 [`Redemption`, `Conveyancing Fees`, `Surplus`, `Onward Funds`]
                            lineItemReference:
                              type: string
                              example: PEXA220000003D01
                            bankAccount:
                              type: object
                              nullable: true
                              description: This field is required and can be updated only for type
                                DESTINATION.
                              properties:
                                accountName:
                                  type: string
                                  maxLength: 35
                                  minLength: 1
                                  pattern: ^[a-zA-Z0-9\/\-\\?:().,'#=!"%&*<>;@{+\s]*$
                                  example: Bob Smith
                                accountNumber:
                                  type: string
                                  pattern: ^\d{8}$
                                  example: "12345678"
                                bankCode:
                                  type: string
                                  pattern: ^\d{6}$
                                  example: "123456"
                                accountType:
                                  type: string
                                  pattern: ^(BUSINESS|PERSONAL)$
                                  example: BUSINESS
                                  description: |
                                    Allowed Values: [`BUSINESS`, `PERSONAL`]
                                displayName:
                                  type: string
                                  nullable: true
                                  maxLength: 35
                                  pattern: ^[0-9a-zA-Z/\-\?:\(\)\.,'\+ !#$%&\*=^_`\{\|\}~";<>@\[\\\]]+$
                                  example: Mortgage account
                              required:
                                - accountName
                                - accountNumber
                                - bankCode
                            verificationDetail:
                              type: object
                              nullable: true
                              properties:
                                status:
                                  type: string
                                  pattern: ^(MATCH|NAME_PARTIAL_MATCH|NAME_PARTIAL_MATCH_TYPE_NO_MATCH|NO_MATCH|UNABLE_TO_MATCH|ERROR|TIMEOUT|TYPE_NO_MATCH|ACCOUNT_VERIFICATION_NOT_RUN)$
                                  example: NAME_PARTIAL_MATCH
                                  description: >
                                    status of account verification Allowed
                                    Values: [ `MATCH`, `NAME_PARTIAL_MATCH`,
                                    `NAME_PARTIAL_MATCH_TYPE_NO_MATCH`,
                                    `NO_MATCH`, `UNABLE_TO_MATCH`, `ERROR`,
                                    `TIMEOUT`, `TYPE_NO_MATCH`,
                                    `ACCOUNT_VERIFICATION_NOT_RUN` ]
                                partnerReasonCode:
                                  type: string
                                  nullable: true
                                  description: |
                                    Reason code sent from third party system for account verification.

                                    | Code |                Description                   |
                                    | -------|----------------------------------|
                                    | ANNM | Account Name does Not Match |
                                    | MBAM | There may be a match on the Account name |
                                    | BANM | Business account, name matches |
                                    | PANM | Personal account, name matches |
                                    | BAMM | Business account, name may be a match |
                                    | PAMM | Personal account, name may be a match |
                                    | AC01 | Incorrect Account Number |
                                    | IVCR | Invalid Customer Reference |
                                    | ACNS | Account type Not Supported for CoP |
                                    | OPTO | Opted out of CoP Scheme |
                                    | CASS | Account has been switched |
                                    | SCNS | Sort code not supported at endpoint |
                                verified:
                                  type: boolean
                                  description: denotes in the account details are verified
                                acceptedAt:
                                  type: string
                                  nullable: true
                                  format: date-time
                                  description: timestamp recorded when the consent was given for the account
                                acceptedBy:
                                  type: string
                                  nullable: true
                                  description: id of the user who gave the consent for the account
                                actualName:
                                  type: string
                                  nullable: true
                                  description: Actual name of given account received from CoP in case of partial
                                    match
                                isManualOverrideAllowed:
                                  type: boolean
                                  description: Flag to indicate if manual override is allowed
                            hasLinkedAccount:
                              type: boolean
                              nullable: true
                              description: Flag to indicate whether account is a linked account
                        example:
                          - lineItemId: 5c39f824-4070-46fc-97c0-72c565542e09
                            type: SOURCE
                            amount: 19
                            authorised: false
                            reference: dfd
                            category: Mortgage Advance
                            lineItemReference: PEXA230044822S01
                            bankAccount: null
                            verificationDetail: null
                            hasLinkedAccount: null
                          - lineItemId: ed781522-e4df-4a11-936c-6b5ec0ec9498
                            amount: 56
                            type: DESTINATION
                            authorised: null
                            reference: hdg
                            category: Redemption
                            lineItemReference: PEXA230044822D02
                            bankAccount:
                              accountName: acc name
                              accountNumber: "34235648"
                              bankCode: "453673"
                              accountType: BUSINESS
                              displayName: null
                            verificationDetail:
                              status: MATCH
                              partnerReasonCode: null
                              verified: true
                              acceptedAt: null
                              acceptedBy: null
                              actualName: null
                              isManualOverrideAllowed: false
                            hasLinkedAccount: false
                      participants:
                        default: []
                        type: array
                        items:
                          type: object
                          properties:
                            subscriberId:
                              type: string
                              format: uuid
                              example: 59a02f78-79c2-49ff-b27f-5606b4cda762
                            role:
                              type: string
                              example: INCOMING_LENDER
                    required:
                      - financialSettlementScheduleId
                  errors:
                    default: []
                    type: array
                    items:
                      type: object
                      properties:
                        field:
                          type: string
                          description: Field
                        message:
                          type: string
                          description: Error message
              example:
                errors:
                  - message: Internal server error
        "503":
          description: SERVICE UNAVAILABLE
          headers:
            X-API-Version:
              schema:
                type: string
                description: The API version that was used to process the request.
            X-Request-Correlation-Id:
              schema:
                type: string
                description: The unique identifier for the request
          content:
            application/json:
              schema:
                type: object
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      properties:
                        field:
                          type: string
                          description: Field
                        message:
                          type: string
                          description: Error message
              example:
                errors:
                  - message: Service under maintenance
security:
  - oauth2:
      - view:financial_settlement_schedules
components:
  securitySchemes:
    oauth2:
      type: oauth2
      flows:
        clientCredentials:
          tokenUrl: https://login.pexauk.co.uk/oauth/token
          scopes:
            x-api:accept:payee_account_details: Permission to accept payee account details (CoP override)
            x-api:authorise:funds: Permission to authorise funds for a workspace
            x-api:approve:financial_settlement_schedules: Permission to approve financial settlement schedules
            x-api:unapprove:financial_settlement_schedules: Permission to unapprove financial settlement schedules
            add:fss_line_items: Permission to add financial settlement schedule line items
            delete:fss_line_items: Permission to delete financial settlement schedule line items
            view:financial_settlement_schedules: Permission to view financial settlement schedules
            edit:financial_settlement_schedules: Permission to edit financial settlement schedules
            edit:fss_line_items: Permission to edit financial settlement schedule line items
            authorise:funds: Permission to authorise funds for a workspace
            approve:financial_settlement_schedules: Permission to approve financial settlement schedules
            unapprove:financial_settlement_schedules: Permission to unapprove financial settlement schedules
```
