openapi: 3.2.0 info: title: Book Transfers API version: v1 servers: - url: https://cubi-sandbox-api.customersbank.com/transfers/v1 tags: - name: BookTransfers paths: /: post: tags: - BookTransfers summary: / - POST operationId: post parameters: - name: x-idempotency-key in: header description: Unique request idenitfier for idempotency. required: true schema: type: string format: uuid example: d13e5a3f-2ddb-40b7-88b0-b3b0901aa76e requestBody: description: Transfer initiation payload content: application/json: schema: $ref: '#/components/schemas/Cubi.Transfers.WebApi.Dto.BookTransfers.InitiateBookTransferDto' example: fromAccountId: string toAccountId: string amount: 0 internalMemo: string publicMemo: string coreMemo: string purposeCode: string purposeDescription: string processDate: string text/json: schema: $ref: '#/components/schemas/Cubi.Transfers.WebApi.Dto.BookTransfers.InitiateBookTransferDto' example: fromAccountId: string toAccountId: string amount: 0 internalMemo: string publicMemo: string coreMemo: string purposeCode: string purposeDescription: string processDate: string application/*+json: schema: $ref: '#/components/schemas/Cubi.Transfers.WebApi.Dto.BookTransfers.InitiateBookTransferDto' example: fromAccountId: string toAccountId: string amount: 0 internalMemo: string publicMemo: string coreMemo: string purposeCode: string purposeDescription: string processDate: string responses: '202': description: id content: text/plain: schema: $ref: '#/components/schemas/Cubi.Common.WebApi.Mediatr.Validation.IdentifierContainer_System.Guid' examples: default: value: null application/json: schema: $ref: '#/components/schemas/Cubi.Common.WebApi.Mediatr.Validation.IdentifierContainer_System.Guid' example: id: string text/json: schema: $ref: '#/components/schemas/Cubi.Common.WebApi.Mediatr.Validation.IdentifierContainer_System.Guid' example: id: string '400': description: BadRequest content: application/problem+json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ValidationProblemDetails' example: type: https://tools.ietf.org/html/rfc9110#section-15.5.1 title: One or more validation errors occurred. status: 400 traceId: string '401': description: Unauthorized content: application/problem+json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' example: type: https://tools.ietf.org/html/rfc9110#section-15.5.2 title: Unauthorized status: 401 traceId: string '403': description: Forbidden content: application/problem+json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' example: type: https://tools.ietf.org/html/rfc9110#section-15.5.4 title: Forbidden status: 403 traceId: string '404': description: NotFound content: application/problem+json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' example: type: https://tools.ietf.org/html/rfc9110#section-15.5.5 title: Not Found status: 404 traceId: string '422': description: UnprocessableEntity content: application/problem+json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ValidationProblemDetails' example: type: https://tools.ietf.org/html/rfc4918#section-11.2 title: Unprocessable Entity status: 422 traceId: string '500': description: InternalServerError content: application/problem+json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' example: type: https://tools.ietf.org/html/rfc9110#section-15.6.1 title: An error occurred while processing your request. status: 500 traceId: string get: tags: - BookTransfers summary: /?id={id} - GET operationId: get-id-id parameters: - name: id in: query description: The account id to search transactions for required: true schema: type: string format: uuid example: 00000000-0000-0000-0000-000000000000 example: 00000000-0000-0000-0000-000000000000 - name: fromDate in: query description: Optional start date from which to search schema: type: string format: date-time example: '1980-01-01T12:00:00+00:00' example: '1980-01-01T12:00:00+00:00' - name: toDate in: query description: Optional end date for which to search schema: type: string format: date-time example: '1980-01-02T12:00:00+00:00' example: '1980-01-02T12:00:00+00:00' - name: inStatus in: query description: Optional list of transfer statuses to filter on schema: type: array items: $ref: '#/components/schemas/Cubi.Transfers.WebApi.Dto.BookTransfers.BookTransferStatus' - name: paginateResults in: query schema: type: boolean - name: page in: query schema: type: integer format: int32 - name: perPage in: query schema: type: integer format: int32 - name: sortOn in: query schema: type: string - name: sortAscending in: query schema: type: boolean responses: '200': description: OK content: text/plain: schema: $ref: '#/components/schemas/Cubi.Common.Abstractions.Paginated_Cubi.Transfers.WebApi.Dto.BookTransfers.BookTransferDto' examples: default: value: null application/json: schema: $ref: '#/components/schemas/Cubi.Common.Abstractions.Paginated_Cubi.Transfers.WebApi.Dto.BookTransfers.BookTransferDto' example: pageSize: 0 pageOffset: 0 totalPages: 0 totalItemCount: 0 items: - id: 00000000-0000-0000-0000-000000000000 accountId: 00000000-0000-0000-0000-000000000000 accountName: string counterParty: string counterPartyAccountId: 00000000-0000-0000-0000-000000000000 counterPartyAccountName: string sendingPartner: string sendingAccount: string sendingAccountNumberLast4Digits: string receivingPartner: string receivingAccount: string receivingAccountNumberLast4Digits: string amount: 0 transactionType: Send internalMemo: string publicMemo: string coreMemo: string purposeCode: string purposeDescription: string processDate: string status: ApprovalRequired declineReason: string initiatingUserId: string initiatingUserName: string initiatingUserEmail: string approvalUserId: string approvalUserName: string approvalUserEmail: string approvedAt: string completedAt: string sourceType: Api createdAt: string lastModifiedAt: string confirmationNumber: string text/json: schema: $ref: '#/components/schemas/Cubi.Common.Abstractions.Paginated_Cubi.Transfers.WebApi.Dto.BookTransfers.BookTransferDto' example: pageSize: 0 pageOffset: 0 totalPages: 0 totalItemCount: 0 items: - id: 00000000-0000-0000-0000-000000000000 accountId: 00000000-0000-0000-0000-000000000000 accountName: string counterParty: string counterPartyAccountId: 00000000-0000-0000-0000-000000000000 counterPartyAccountName: string sendingPartner: string sendingAccount: string sendingAccountNumberLast4Digits: string receivingPartner: string receivingAccount: string receivingAccountNumberLast4Digits: string amount: 0 transactionType: Send internalMemo: string publicMemo: string coreMemo: string purposeCode: string purposeDescription: string processDate: string status: ApprovalRequired declineReason: string initiatingUserId: string initiatingUserName: string initiatingUserEmail: string approvalUserId: string approvalUserName: string approvalUserEmail: string approvedAt: string completedAt: string sourceType: Api createdAt: string lastModifiedAt: string confirmationNumber: string '400': description: BadRequest content: application/problem+json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ValidationProblemDetails' example: type: https://tools.ietf.org/html/rfc9110#section-15.5.1 title: One or more validation errors occurred. status: 400 traceId: string '401': description: Unauthorized content: application/problem+json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' example: type: https://tools.ietf.org/html/rfc9110#section-15.5.2 title: Unauthorized status: 401 traceId: string '403': description: Forbidden content: application/problem+json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' example: type: https://tools.ietf.org/html/rfc9110#section-15.5.4 title: Forbidden status: 403 traceId: string '422': description: UnprocessableEntity content: application/problem+json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ValidationProblemDetails' example: type: https://tools.ietf.org/html/rfc4918#section-11.2 title: Unprocessable Entity status: 422 traceId: string '500': description: InternalServerError content: application/problem+json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' example: type: https://tools.ietf.org/html/rfc9110#section-15.6.1 title: An error occurred while processing your request. status: 500 traceId: string /{id}: get: tags: - BookTransfers summary: /{id} - GET operationId: get-id parameters: - name: id in: path description: The id of the book transfer required: true schema: type: string format: uuid responses: '200': description: OK content: text/plain: schema: $ref: '#/components/schemas/Cubi.Transfers.WebApi.Dto.BookTransfers.BookTransferDto' examples: default: value: null application/json: schema: $ref: '#/components/schemas/Cubi.Transfers.WebApi.Dto.BookTransfers.BookTransferDto' example: id: 00000000-0000-0000-0000-000000000000 accountId: 00000000-0000-0000-0000-000000000000 accountName: string counterParty: string counterPartyAccountId: 00000000-0000-0000-0000-000000000000 counterPartyAccountName: string sendingPartner: string sendingAccount: string sendingAccountNumberLast4Digits: string receivingPartner: string receivingAccount: string receivingAccountNumberLast4Digits: string amount: 0 transactionType: Send internalMemo: string publicMemo: string coreMemo: string purposeCode: string purposeDescription: string processDate: string status: ApprovalRequired declineReason: string initiatingUserId: string initiatingUserName: string initiatingUserEmail: string approvalUserId: string approvalUserName: string approvalUserEmail: string approvedAt: string completedAt: string sourceType: Api createdAt: string lastModifiedAt: string confirmationNumber: string text/json: schema: $ref: '#/components/schemas/Cubi.Transfers.WebApi.Dto.BookTransfers.BookTransferDto' example: id: 00000000-0000-0000-0000-000000000000 accountId: 00000000-0000-0000-0000-000000000000 accountName: string counterParty: string counterPartyAccountId: 00000000-0000-0000-0000-000000000000 counterPartyAccountName: string sendingPartner: string sendingAccount: string sendingAccountNumberLast4Digits: string receivingPartner: string receivingAccount: string receivingAccountNumberLast4Digits: string amount: 0 transactionType: Send internalMemo: string publicMemo: string coreMemo: string purposeCode: string purposeDescription: string processDate: string status: ApprovalRequired declineReason: string initiatingUserId: string initiatingUserName: string initiatingUserEmail: string approvalUserId: string approvalUserName: string approvalUserEmail: string approvedAt: string completedAt: string sourceType: Api createdAt: string lastModifiedAt: string confirmationNumber: string '400': description: BadRequest content: application/problem+json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ValidationProblemDetails' example: type: https://tools.ietf.org/html/rfc9110#section-15.5.1 title: One or more validation errors occurred. status: 400 traceId: string '401': description: Unauthorized content: application/problem+json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' example: type: https://tools.ietf.org/html/rfc9110#section-15.5.2 title: Unauthorized status: 401 traceId: string '403': description: Forbidden content: application/problem+json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' example: type: https://tools.ietf.org/html/rfc9110#section-15.5.4 title: Forbidden status: 403 traceId: string '404': description: NotFound content: application/problem+json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' example: type: https://tools.ietf.org/html/rfc9110#section-15.5.5 title: Not Found status: 404 traceId: string '422': description: UnprocessableEntity content: application/problem+json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ValidationProblemDetails' example: type: https://tools.ietf.org/html/rfc4918#section-11.2 title: Unprocessable Entity status: 422 traceId: string '500': description: InternalServerError content: application/problem+json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' example: type: https://tools.ietf.org/html/rfc9110#section-15.6.1 title: An error occurred while processing your request. status: 500 traceId: string /{id}/approve: post: tags: - BookTransfers summary: /{id}/approve - POST operationId: post-id-approve parameters: - name: id in: path description: The id of the book transfer entry to be approved required: true schema: type: string format: uuid - name: x-idempotency-key in: header description: Unique request idenitfier for idempotency. required: true schema: type: string format: uuid example: 6eb4cec4-4a1d-45a9-ae58-3196bd1049f8 responses: '202': description: Accepted content: text/plain: schema: $ref: '#/components/schemas/Cubi.Common.WebApi.Mediatr.Validation.IdentifierContainer_System.Guid' examples: default: value: null application/json: schema: $ref: '#/components/schemas/Cubi.Common.WebApi.Mediatr.Validation.IdentifierContainer_System.Guid' example: id: string text/json: schema: $ref: '#/components/schemas/Cubi.Common.WebApi.Mediatr.Validation.IdentifierContainer_System.Guid' example: id: string '400': description: BadRequest content: application/problem+json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ValidationProblemDetails' example: type: https://tools.ietf.org/html/rfc9110#section-15.5.1 title: One or more validation errors occurred. status: 400 traceId: string '401': description: Unauthorized content: application/problem+json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' example: type: https://tools.ietf.org/html/rfc9110#section-15.5.2 title: Unauthorized status: 401 traceId: string '403': description: Forbidden content: application/problem+json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' example: type: https://tools.ietf.org/html/rfc9110#section-15.5.4 title: Forbidden status: 403 traceId: string '404': description: NotFound content: application/problem+json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' example: type: https://tools.ietf.org/html/rfc9110#section-15.5.5 title: Not Found status: 404 traceId: string '422': description: UnprocessableEntity content: application/problem+json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ValidationProblemDetails' example: type: https://tools.ietf.org/html/rfc4918#section-11.2 title: Unprocessable Entity status: 422 traceId: string '500': description: InternalServerError content: application/problem+json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' example: type: https://tools.ietf.org/html/rfc9110#section-15.6.1 title: An error occurred while processing your request. status: 500 traceId: string /{id}/decline: post: tags: - BookTransfers summary: /{id}/decline - POST operationId: post-id-decline parameters: - name: id in: path description: The id of the book transfer entry to be declined required: true schema: type: string format: uuid - name: x-idempotency-key in: header description: Unique request idenitfier for idempotency. required: true schema: type: string format: uuid example: e04a5f1f-9c51-4778-8e50-df20f9d5412e requestBody: description: Contains IdempotencyKey content: application/json: schema: $ref: '#/components/schemas/Cubi.Transfers.WebApi.Dto.BookTransfers.DeclineBookTransferDto' example: reason: string text/json: schema: $ref: '#/components/schemas/Cubi.Transfers.WebApi.Dto.BookTransfers.DeclineBookTransferDto' example: reason: string application/*+json: schema: $ref: '#/components/schemas/Cubi.Transfers.WebApi.Dto.BookTransfers.DeclineBookTransferDto' example: reason: string responses: '202': description: Accepted content: text/plain: schema: $ref: '#/components/schemas/Cubi.Common.WebApi.Mediatr.Validation.IdentifierContainer_System.Guid' examples: default: value: null application/json: schema: $ref: '#/components/schemas/Cubi.Common.WebApi.Mediatr.Validation.IdentifierContainer_System.Guid' example: id: string text/json: schema: $ref: '#/components/schemas/Cubi.Common.WebApi.Mediatr.Validation.IdentifierContainer_System.Guid' example: id: string '400': description: BadRequest content: application/problem+json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ValidationProblemDetails' example: type: https://tools.ietf.org/html/rfc9110#section-15.5.1 title: One or more validation errors occurred. status: 400 traceId: string '401': description: Unauthorized content: application/problem+json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' example: type: https://tools.ietf.org/html/rfc9110#section-15.5.2 title: Unauthorized status: 401 traceId: string '403': description: Forbidden content: application/problem+json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' example: type: https://tools.ietf.org/html/rfc9110#section-15.5.4 title: Forbidden status: 403 traceId: string '404': description: NotFound content: application/problem+json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' example: type: https://tools.ietf.org/html/rfc9110#section-15.5.5 title: Not Found status: 404 traceId: string '422': description: UnprocessableEntity content: application/problem+json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ValidationProblemDetails' example: type: https://tools.ietf.org/html/rfc4918#section-11.2 title: Unprocessable Entity status: 422 traceId: string '500': description: InternalServerError content: application/problem+json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' example: type: https://tools.ietf.org/html/rfc9110#section-15.6.1 title: An error occurred while processing your request. status: 500 traceId: string /purposeCodes: get: tags: - BookTransfers summary: /purposeCodes - GET operationId: get-purposecodes responses: '200': description: OK content: text/plain: schema: $ref: '#/components/schemas/Cubi.Transfers.WebApi.Dto.BookTransfers.PurposeCodesDto' examples: default: value: null application/json: schema: $ref: '#/components/schemas/Cubi.Transfers.WebApi.Dto.BookTransfers.PurposeCodesDto' example: purposeCodes: - purpose: string code: string description: string text/json: schema: $ref: '#/components/schemas/Cubi.Transfers.WebApi.Dto.BookTransfers.PurposeCodesDto' example: purposeCodes: - purpose: string code: string description: string '400': description: BadRequest content: application/problem+json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ValidationProblemDetails' example: type: https://tools.ietf.org/html/rfc9110#section-15.5.1 title: One or more validation errors occurred. status: 400 traceId: string '401': description: Unauthorized content: application/problem+json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' example: type: https://tools.ietf.org/html/rfc9110#section-15.5.2 title: Unauthorized status: 401 traceId: string '403': description: Forbidden content: application/problem+json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' example: type: https://tools.ietf.org/html/rfc9110#section-15.5.4 title: Forbidden status: 403 traceId: string '500': description: InternalServerError content: application/problem+json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' example: type: https://tools.ietf.org/html/rfc9110#section-15.6.1 title: An error occurred while processing your request. status: 500 traceId: string /download: get: tags: - BookTransfers summary: /download?id={id} - GET operationId: get-download-id-id parameters: - name: id in: query description: The account id to search transactions for required: true schema: type: string format: uuid example: 00000000-0000-0000-0000-000000000000 example: 00000000-0000-0000-0000-000000000000 - name: fromDate in: query description: Optional start date from which to search schema: type: string format: date-time example: '1980-01-01T12:00:00+00:00' example: '1980-01-01T12:00:00+00:00' - name: toDate in: query description: Optional end date for which to search schema: type: string format: date-time example: '1980-01-02T12:00:00+00:00' example: '1980-01-02T12:00:00+00:00' - name: inStatus in: query description: Optional list of transfer statuses to filter on schema: type: array items: $ref: '#/components/schemas/Cubi.Transfers.WebApi.Dto.BookTransfers.BookTransferStatus' - name: paginateResults in: query schema: type: boolean - name: page in: query schema: type: integer format: int32 - name: perPage in: query schema: type: integer format: int32 - name: sortOn in: query schema: type: string - name: sortAscending in: query schema: type: boolean responses: '200': description: OK content: text/plain: schema: type: array items: $ref: '#/components/schemas/Cubi.Transfers.WebApi.Dto.BookTransfers.BookTransferDto' examples: default: value: null application/json: schema: type: array items: $ref: '#/components/schemas/Cubi.Transfers.WebApi.Dto.BookTransfers.BookTransferDto' example: - id: 00000000-0000-0000-0000-000000000000 accountId: 00000000-0000-0000-0000-000000000000 accountName: string counterParty: string counterPartyAccountId: 00000000-0000-0000-0000-000000000000 counterPartyAccountName: string sendingPartner: string sendingAccount: string sendingAccountNumberLast4Digits: string receivingPartner: string receivingAccount: string receivingAccountNumberLast4Digits: string amount: 0 transactionType: Send internalMemo: string publicMemo: string coreMemo: string purposeCode: string purposeDescription: string processDate: string status: ApprovalRequired declineReason: string initiatingUserId: string initiatingUserName: string initiatingUserEmail: string approvalUserId: string approvalUserName: string approvalUserEmail: string approvedAt: string completedAt: string sourceType: Api createdAt: string lastModifiedAt: string confirmationNumber: string text/json: schema: type: array items: $ref: '#/components/schemas/Cubi.Transfers.WebApi.Dto.BookTransfers.BookTransferDto' example: - id: 00000000-0000-0000-0000-000000000000 accountId: 00000000-0000-0000-0000-000000000000 accountName: string counterParty: string counterPartyAccountId: 00000000-0000-0000-0000-000000000000 counterPartyAccountName: string sendingPartner: string sendingAccount: string sendingAccountNumberLast4Digits: string receivingPartner: string receivingAccount: string receivingAccountNumberLast4Digits: string amount: 0 transactionType: Send internalMemo: string publicMemo: string coreMemo: string purposeCode: string purposeDescription: string processDate: string status: ApprovalRequired declineReason: string initiatingUserId: string initiatingUserName: string initiatingUserEmail: string approvalUserId: string approvalUserName: string approvalUserEmail: string approvedAt: string completedAt: string sourceType: Api createdAt: string lastModifiedAt: string confirmationNumber: string '400': description: BadRequest content: application/problem+json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ValidationProblemDetails' example: type: https://tools.ietf.org/html/rfc9110#section-15.5.1 title: One or more validation errors occurred. status: 400 traceId: string '401': description: Unauthorized content: application/problem+json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' example: type: https://tools.ietf.org/html/rfc9110#section-15.5.2 title: Unauthorized status: 401 traceId: string '403': description: Forbidden content: application/problem+json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' example: type: https://tools.ietf.org/html/rfc9110#section-15.5.4 title: Forbidden status: 403 traceId: string '422': description: UnprocessableEntity content: application/problem+json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ValidationProblemDetails' example: type: https://tools.ietf.org/html/rfc4918#section-11.2 title: Unprocessable Entity status: 422 traceId: string '500': description: InternalServerError content: application/problem+json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' example: type: https://tools.ietf.org/html/rfc9110#section-15.6.1 title: An error occurred while processing your request. status: 500 traceId: string components: schemas: Microsoft.AspNetCore.Mvc.ProblemDetails: type: object properties: type: type: - string - 'null' title: type: - string - 'null' status: type: - integer - 'null' format: int32 detail: type: - string - 'null' traceId: type: - string - 'null' additionalProperties: {} Cubi.Transfers.WebApi.Dto.BookTransfers.BookTransferSourceType: enum: - Api - Ui - Pain001 type: string Cubi.Transfers.WebApi.Dto.BookTransfers.DeclineBookTransferDto: type: object properties: reason: type: - string - 'null' additionalProperties: false Cubi.Transfers.WebApi.Dto.BookTransfers.BookTransferDto: required: - accountId - accountName - amount - counterParty - counterPartyAccountId - counterPartyAccountName - id - status - transactionType type: object properties: id: type: string description: The ID of the book transfer format: uuid example: 00000000-0000-0000-0000-000000000000 accountId: type: string description: "1. If you are requesting transfers for a specific account Id, this is the account id of the account requested.\n2. If you are requesting a book transfer by the book transfer Id then:\n a. If you originated the transfer, this will be your accountId the funds were transferred from.\n b. If a third party originated the transfer, this will be your account Id the funds were transferred to.\n c. If a transfer is between your own accounts, this be your accountId the funds were transferred from." format: uuid example: 00000000-0000-0000-0000-000000000000 accountName: type: string description: "1. If you are requesting transfers for a specific account Id, this is the name of the account requested.\n2. If you are requesting a book transfer by the book transfer Id then:\n a. If you originated the transfer, this will be the name of your account the funds were transferred from.\n b. If a third party originated the transfer, this will be the name of your account the funds were transferred to.\n c. If a transfer is between your own accounts, this is the name of the account the funds were transferred from." counterParty: type: string description: 'The name of the counter party participating in the transfer If it a transfer between your own accounts, this will be your own client name' counterPartyAccountId: type: string description: "The counter party account Id participating in the transfer.\n1. If you are requesting transfers for a specific account Id then this will be the Id of the account opposite the requested account. i.e. If the request is for the sending account, this value will be of the receiving account\n2. If you are requesting a book transfer by the book transfer Id then:\n a. If the transfer involves a third party, this will be the third parties account Id.\n b. If the tranfer is between your own accounts this will the account Id the funds were transferred to." format: uuid example: 00000000-0000-0000-0000-000000000000 counterPartyAccountName: type: string description: "The counter party account name participating in the transfer.\n1. If you are requesting transfers for a specific account Id then this will be the name of the account opposite the requested account. i.e. If the request is for the sending account, this value will be of the receiving account\n2. If you are requesting a book transfer by the book transfer Id then:\n a. If the transfer involves a third party, this will be the third parties account name.\n b. If the tranfer is between your own accounts this will the account name the funds were transferred to." sendingPartner: type: - string - 'null' description: Optional. Will be populated only when you're the originator of the transfer. sendingAccount: type: - string - 'null' description: 'Optional. Will be populated only when you''re the originator of the transfer. The name of the account the funds were transfered from' sendingAccountNumberLast4Digits: type: - string - 'null' description: Optional. Will be populated only when you're the originator of the transfer. receivingPartner: type: - string - 'null' description: 'Optional. Will be populated only when you''re the originator of the transfer. The name of the partner the funds were transfered to' receivingAccount: type: - string - 'null' description: 'Optional. Will be populated only when you''re the originator of the transfer. The name of the account the funds were transfered to' receivingAccountNumberLast4Digits: type: - string - 'null' description: Optional. Will be populated only when you're the originator of the transfer. amount: type: number description: The amount of the book transfer format: double transactionType: $ref: '#/components/schemas/Cubi.Transfers.WebApi.Dto.BookTransfers.TransactionType' internalMemo: type: - string - 'null' description: Optional. Will be populated only when you're the originator of the transfer. publicMemo: type: - string - 'null' description: Optional, will be populated if the sender provided a public memo coreMemo: type: - string - 'null' description: Optional. Memo visible on core and OLB statements. purposeCode: type: - string - 'null' description: Optional. Will be populated only when you're the originator of the transfer. purposeDescription: type: - string - 'null' description: Optional. Will be populated only when you're the originator of the transfer. processDate: type: - string - 'null' description: DateTime in UTC at which the Transfer will be or was scheduled to be posted. format: date-time status: $ref: '#/components/schemas/Cubi.Transfers.WebApi.Dto.BookTransfers.BookTransferStatus' declineReason: type: - string - 'null' description: Optional. Will be populated only when you're the originator of the transfer. initiatingUserId: type: - string - 'null' description: Optional. Will be populated only when you're the originator of the transfer. format: uuid initiatingUserName: type: - string - 'null' description: Optional. Will be populated only when you're the originator of the transfer. initiatingUserEmail: type: - string - 'null' description: Optional. Will be populated only when you're the originator of the transfer. approvalUserId: type: - string - 'null' description: Optional. Will be populated only when you're the originator of the transfer. Will not be populated for transfers from single control accounts. format: uuid approvalUserName: type: - string - 'null' description: Optional. Will be populated only when you're the originator of the transfer. Will not be populated for transfers from single control accounts. approvalUserEmail: type: - string - 'null' description: Optional. Will be populated only when you're the originator of the transfer. Will not be populated for transfers from single control accounts. approvedAt: type: - string - 'null' description: 'Optional. Will be populated only when you''re the originator of the transfer. Will not be populated for transfers from single control accounts. Uses UTC date time.' format: date-time completedAt: type: - string - 'null' description: "Optional. Date time in UTC the transfer was processed successfully.\n 1. If you are NOT the originator of the transfer, then this will always be populated\n 2. If you originated the transfer this will only be populated when and if the transfer is processsed successfully" format: date-time sourceType: $ref: '#/components/schemas/Cubi.Transfers.WebApi.Dto.BookTransfers.BookTransferSourceType' createdAt: type: - string - 'null' description: "Optional. Will be populated only when you're the originator of the transfer. \nDate and time in UTC when the transfer was submitted" format: date-time lastModifiedAt: type: - string - 'null' description: "Optional. Will be populated only when you're the originator of the transfer. \nDate and time in UTC of the current status of the transfer." format: date-time confirmationNumber: type: - string - 'null' description: Confirmation Number for the book transfer entry. This can be used for reconciliation during the BAI2 process. additionalProperties: false Cubi.Transfers.WebApi.Dto.BookTransfers.InitiateBookTransferDto: required: - amount - fromAccountId - toAccountId type: object properties: fromAccountId: type: string description: The AccountId of the Account sending the Instant Transfer format: uuid toAccountId: type: string description: The AccountId of the Account receiving the Instant Transfer format: uuid amount: type: number description: Dollar amount to be transferred format: double internalMemo: type: - string - 'null' description: Free text field, only visible internally publicMemo: type: - string - 'null' description: Free text field, visible to both the Sender and Receiver of the Instant Transfer coreMemo: type: - string - 'null' description: Free text field that will appear on core and OLB statements purposeCode: type: - string - 'null' description: Indicates the reason for the transfer - select one of six preset codes (see Guides for details) purposeDescription: type: - string - 'null' description: Free text field to provide additional context for the selected purpose code processDate: type: - string - 'null' description: Future DateTime in UTC for Transfer to be posted format: date-time additionalProperties: false Cubi.Transfers.WebApi.Dto.BookTransfers.BookTransferStatus: enum: - ApprovalRequired - Scheduled - Pending - Posted - Rejected - Declined type: string Cubi.Transfers.WebApi.Dto.BookTransfers.PurposeCodeDto: type: object properties: purpose: type: string code: type: string description: type: string additionalProperties: false Cubi.Transfers.WebApi.Dto.BookTransfers.TransactionType: enum: - Send - Receive type: string Microsoft.AspNetCore.Mvc.ValidationProblemDetails: type: object properties: type: type: - string - 'null' title: type: - string - 'null' status: type: - integer - 'null' format: int32 detail: type: - string - 'null' traceId: type: - string - 'null' errors: type: object additionalProperties: type: array items: type: string additionalProperties: {} Cubi.Common.WebApi.Mediatr.Validation.IdentifierContainer_System.Guid: type: object properties: id: type: string format: uuid additionalProperties: false Cubi.Transfers.WebApi.Dto.BookTransfers.PurposeCodesDto: type: object properties: purposeCodes: type: array items: $ref: '#/components/schemas/Cubi.Transfers.WebApi.Dto.BookTransfers.PurposeCodeDto' additionalProperties: false Cubi.Common.Abstractions.Paginated_Cubi.Transfers.WebApi.Dto.BookTransfers.BookTransferDto: type: object properties: pageSize: type: integer format: int32 pageOffset: type: integer format: int32 totalPages: type: integer format: int32 totalItemCount: type: integer format: int32 items: type: array items: $ref: '#/components/schemas/Cubi.Transfers.WebApi.Dto.BookTransfers.BookTransferDto' additionalProperties: false x-readme: explorer-enabled: false proxy-enabled: true