Transaction Management

Routes for managing transactions and investor journeys.


Load Workflow Structure

GET/deals/deal/:dealId/workflow-status

Retrieve the full Workflow for a specified deal.

Required attributes

  • Name
    dealId
    Type
    string
    Description

    The unique identifier of the deal

Description

This endpoint returns the full Workflow for the specified deal, providing information to construct requests for moving investors along the workflow.

cURL

curl https://your.platform.url/api/gateway/deals/deal/056802c0-dfa6-4593-b449-f9932683d5ee/workflow-status \
  -H "Authorization: Bearer {token}"

Sample Response

{
  "id": "056802c0-dfa6-4593-b449-f9932683d5ee",
  "label": "Example Workflow",
  "description": "This is a sample workflow",
  "steps": [
    {
      "id": "fab0ffe9-6797-4801-943c-d5dd811934fd",
      "label": "Indicate Commitment",
      "type": "default",
      "previousStepLinks": [
        {
          "fromStepId": "6195ea1f-73f1-496d-9ec3-7c3ae2b44fdf",
          "toStepId": "fab0ffe9-6797-4801-943c-d5dd811934fd"
        }
      ],
      "nextStepLinks": [
        {
          "fromStepId": "fab0ffe9-6797-4801-943c-d5dd811934fd",
          "toStepId": "fdc826cc-21ef-4c62-8b2a-c6b2435b1138"
        }
      ],
      "stepFields": [
        {
          "fieldKey": "committed_amount",
          "required": true
        }
      ]
    }
  ],
  "investorEngagementEnabled": true
}

Update Investor Journey

POST/deals/deal/:dealId/jump-to-step

Move an investor forward or backward within a Workflow.

Required attributes

  • Name
    dealId
    Type
    string
    Description

    The unique identifier of the deal

  • Name
    investorUserId
    Type
    string
    Description

    The ID of the investor to move

  • Name
    targetStepId
    Type
    string
    Description

    The unique ID of the Workflow Step to move the investor to

  • Name
    data
    Type
    object
    Description

    Object containing data for the target step or intermediary steps

Description

Move an investor within a Workflow, ensuring required fields are populated and step requirements are met.

cURL

curl -X POST https://your.platform.url/api/gateway/deals/deal/35fe515a-53df-4d14-96e5-1b2e22984ae6/jump-to-step \
  -H "Authorization: Bearer {token}" \
  -H "Content-Type: application/json" \
  -d '{
    "investorUserId": "fabc653f-e974-4903-b47f-5ad607c52098",
    "targetStepId": "739b24ea-b31c-4e03-baa5-d13dda435692",
    "data": {
      "currency_code": "EUR",
      "committed_amount": "100"
    }
  }'

Load Investor Journey

GET/deals/deal/:dealId/investor-data/:investorUserId

Retrieve Workflow Events for a specific deal and investor.

Required attributes

  • Name
    dealId
    Type
    string
    Description

    The unique identifier of the deal

  • Name
    investorUserId
    Type
    string
    Description

    The ID of the investor

Description

Returns basic investor information and their journey (workflow events) for the given deal.

cURL

curl https://your.platform.url/api/gateway/deals/deal/35fe515a-53df-4d14-96e5-1b2e22984ae6/investor-data/fabc653f-e974-4903-b47f-5ad607c52098 \
  -H "Authorization: Bearer {token}"

Sample Response

{
  "investor": {
    "id": "fabc653f-e974-4903-b47f-5ad607c52098"
  },
  "journey": [
    {
      "id": "9f7fdaf2-50ac-42f1-bfa3-5c35477a0cd5",
      "fromStepId": null,
      "toStepId": "6f801ae3-bfb7-40e9-af1c-cacf9b7bf0a5",
      "data": {
        "currency_code": "EUR",
        "committed_amount": "100"
      },
      "createdByUserId": "fabc653f-e974-4903-b47f-5ad607c52098",
      "createdAt": "2024-09-09T09:13:40.252Z"
    }
  ]
}

Load All Investor Journeys

GET/deals/deal/:dealId/all-investor-workflows

Retrieve paginated list of investor journeys for a deal.

Optional Query Parameters

  • Name
    limit
    Type
    number
    Description

    Number of results per page

  • Name
    page
    Type
    number
    Description

    Page number to retrieve

  • Name
    query
    Type
    string
    Description

    Filter results by investor name or email address

Description

Returns a paginated list of investor journeys for a specific deal.

cURL

curl https://your.platform.url/api/gateway/deals/deal/35fe515a-53df-4d14-96e5-1b2e22984ae6/all-investor-workflows?limit=10&page=1 \
  -H "Authorization: Bearer {token}"

Sample Response

{
  "output": [
    {
      "investor": {
        "id": "fabc653f-e974-4903-b47f-5ad607c52098"
      },
      "journey": [
        {
          "id": "9f7fdaf2-50ac-42f1-bfa3-5c35477a0cd5",
          "toStepId": "6f801ae3-bfb7-40e9-af1c-cacf9b7bf0a5",
          "data": {
            "currency_code": "EUR",
            "committed_amount": "100"
          },
          "createdAt": "2024-09-09T09:13:40.252Z"
        }
      ]
    }
  ],
  "page": 1,
  "totalPages": 1
}

Get investor form implementation

GET/deals/workflow/step/:stepId/investor-form-implementation

Gets a given investors form implementation ID for a given workflow step

Optional Query Parameters

  • Name
    stepId
    Type
    string
    Description

    The unique identifier of the workflow step

  • Name
    dealId
    Type
    string
    Description

    The unique identifier of the deal

  • Name
    investorUserId
    Type
    string
    Description

    The ID of the investor

cURL

curl https://your.platform.url/api/gateway/deals/workflow/step/fab0ffe9-6797-4801-943c-d5dd811934fd/investor-form-implementation?investorUserId=fabc653f-e974-4903-b47f-5ad607c52098&dealId=056802c0-dfa6-4593-b449-f9932683d5ee \
  -H "Authorization: Bearer {token}"

Sample Response

{
  "id": "9f7fdaf2-50ac-42f1-bfa3-5c35477a0cd5"
}

Get All Active Investors

POST/deals/deal/all-transactions

Load all active investors on the platform, with counts for their in progress and completed deals.

Optional Query Parameters

  • Name
    limit
    Type
    number
    Description

    Number of results per page

  • Name
    page
    Type
    number
    Description

    Page number to retrieve

Optional Body Parameters

  • Name
    nameOrEmail
    Type
    string
    Description

    Name or email address to filter investors by

cURL

curl -X POST https://your.platform.url/api/gateway/deals/deal/all-transactions?page=1&limit=1 \
  -H "Authorization: Bearer {token}" \
  -H "Content-Type: application/json" \
  -d '{
    "nameOrEmail": "test",
  }'

Sample Response

{
   "output": [
      {
         "investor": {
            "id": "b3d77fd9-d06f-469a-af3a-ae0dd238554d",
            "remoteId": "3aad8180-3a93-11ee-86d3-c7cb4f126124",
            "dataSource": "user_data_service",
            "teamUserId": null,
            "kycCheckLevel": null,
            "contact": {
               "guid": "3aad8180-3a93-11ee-86d3-c7cb4f126124",
               "externalId": null,
               "userType": 1,
               "status": "Active",
               "contact": {
                  "forename": "Test",
                  "middleNames": null,
                  "surname": "Investor",
                  "title": "Mr",
                  "nickname": null,
                  "dateOfBirth": null,
                  "email": "test@deliowealth.com"
               },
               "username": "test-investor",
               "profilePhotoFileKey": null,
               "name": "Test Investor",
               "classifications": [
                  {
                     "investorClassId": "269",
                     "organisation": null,
                     "investorClass": "High Net Worth",
                     "name": "prototype_org_high_net_worth",
                  }
               ],
               "fullName": "Mr Test Investor",
               "tfaEnabled": false,
               "compliance": "Completed"
            }
         },
         "dealsCompletedCount": "7",
         "dealsInProgressCount": "27",
         "dealsTotal": "34"
      }
   ],
   "page": 1,
   "totalPages": 48
}