Dacxi Chain Partner Integration Manual (1.0.0)

Download OpenAPI specification:Download

General Usage

Welcome to the Dacxi Chain Partner Integration manual. Here you will find the API documentation to fetch deals and manage orders and also how to setup and receive our events through our webhook system.

Environments

When your company is being onboarded, you have only access to the sandbox environment, and this means that your account could only create and interact with test data.

After finishing the onboarding, your account is promoted to the production environment, and now you can create and interact with data in both environments.

Requests, Responses and Errors

Requests

Request payloads must be sent in JSON and must specify the following headers:

  • Content-Type: application/json
  • Accept: application/json
  • User-Agent: <YOUR COMPANY NAME>
  • Authorization: Bearer <YOUR TOKEN> (it can be found in your dashboard)
  • Environment: <value> (value could be sandbox or production)

Responses

Responses are JSON encoded and contain one or two top-level keys. (data) for successful requests, or (message and errors for failed or rejected requests).

Example successful response

{
  "data": {
    "id": "0982ef24-a629-43e4-ad3f-8c53bd8f2f94",
    "name": "Aufderhar-Botsford",
    "country": "CK",
    "sandbox": true
  }
}

Example of response with error

{
  "message": "The given data was invalid."
  "errors": {
    "amount": [
      "The amount field is required."
    ]
  }
}

Webhooks

Webhooks will be sent using a POST to the URL configured in the partner's dashboard when some events occurs in Dacxi Chain. The request would have the follow headers and basic payload:

  • Content-Type: application/json
  • Accept: application/json
  • DCX-WEBHOOK-ID: <ID>
  • DCX-WEBHOOK-SIGNATURE: <SIGNATURE>
{
  "event": {
    "type": "deal.updated",
    "at": "2023-04-17T14:25:02+00:00"
  },
  "data": {
  }
}

The webhook ID will be same if the webhook request is retried in case of failures (timeouts or unsucessfuly status codes). We will make up to 5 tentatives to delivery the webhook before marking it as failed. The time between the tentatives will be increased exponetialy.

The webhook signature could be validaded with HMAC with the follow parameters:

  • Hashing algorithm: sha512
  • Data: json encoded request body
  • Key: secret obtained in the partner's dashboard

Deal Updated

{
    "event": {
        "type": "deal.updated",
        "at": "2025-07-18T14:30:59+00:00"
    },
    "data": {
        "id": "698a4675-44d6-4553-a8ee-63689ba1440f",
        "sandbox": false,
        "status": "shared_with_network",
        "company": {
            "id": "4920921a-5aa4-449a-9897-c6e0c1a1d611",
            "sandbox": false,
            "name": "Macejkovic, Stark and Wisozk",
            "country": "DE"
        },
        "name": "Kertzmann-Wilderman",
        "description": "Itaque iusto corporis voluptas commodi ullam. Eius asperiores fugiat natus voluptatibus. Explicabo incidunt placeat corporis cum exercitationem veritatis inventore. Vitae dignissimos id deserunt dolores.",
        "target": {
            "currency": "EUR",
            "value": 150000,
            "raised": 10000,
            "investors_count": 5
        },
        "country": "DE",
        "published_at": "2025-07-18T14:30:59+00:00",
        "created_at": "2025-07-14T14:11:17+00:00",
        "updated_at": "2025-07-18T14:30:59+00:00"
    }
}

Rate Limits

Every account has a limit of 60 requests per minute. If you exceed the limit the API will respond with a Too Many Request (429) error.

Account

Get account info

Authorizations:
bearerAuth
header Parameters
Content-Type
required
string
Value: "application/json"
Accept
required
string
Value: "application/json"
User-Agent
required
string
Example: 0982ef24-a629-43e4-ad3f-8c53bd8f2f94
Authorization
required
string
Example: Bearer uEcSxJWVPzrpx4LzZEDy7OzoKhW024esZFMJne3N
Environment
string
Enum: "production" "sandbox"
Example: production

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Deals

List deals

List all deals owned or reserve by the authenticated company

Authorizations:
bearerAuth
query Parameters
page
number
Default: 1
Example: page=1
perPage
number
Default: 25
Example: perPage=25
filter[status]
string
Enum: "draft" "awaiting_verification" "under_verification" "approved" "rejected" "closed"
Example: filter[status]=approved

Filter deals by status

filter[country]
string
Example: filter[country]=AU

Filter deals by country

filter[search]
string
Example: filter[search]=new deal

Filter deals by name or description

sort
string
Default: "-published_at"
Enum: "created_at" "-created_at" "updated_at" "-updated_at" "published_at" "-published_at"
Example: sort=-published_at

Sort result by fields (use '-' to sort descending)

header Parameters
Content-Type
required
string
Value: "application/json"
Accept
required
string
Value: "application/json"
User-Agent
required
string
Example: 0982ef24-a629-43e4-ad3f-8c53bd8f2f94
Authorization
required
string
Example: Bearer uEcSxJWVPzrpx4LzZEDy7OzoKhW024esZFMJne3N
Environment
string
Enum: "production" "sandbox"
Example: production

Responses

Response samples

Content type
application/json
{
  • "data": {
    },
  • "meta": {}
}

Import deal

Import a partner deal

Authorizations:
bearerAuth
header Parameters
Content-Type
required
string
Value: "application/json"
Accept
required
string
Value: "application/json"
User-Agent
required
string
Example: 0982ef24-a629-43e4-ad3f-8c53bd8f2f94
Authorization
required
string
Example: Bearer uEcSxJWVPzrpx4LzZEDy7OzoKhW024esZFMJne3N
Environment
string
Enum: "production" "sandbox"
Example: production
Request Body schema: application/json
name
string [ 3 .. 80 ] characters
country
string = 2 characters
object
currency
string
Enum: "AUD" "GBP" "EUR"
value
double
description
string
logo
string <url>
tile
string <url>
equity_percentage
numeric
issuer_fee_percentage
numeric
starts_preview_at
datetime <Y-m-d\TH:i:sP>
starts_at
datetime <Y-m-d\TH:i:sP>
ends_at
datetime <Y-m-d\TH:i:sP>
Array of objects
Array
name
string
title
string
size
integer
url
string <url>
type
string
Enum: "other" "investiment_presentation" "kiis_document"
redirect_url
string <url>
object
beneficiary_name
string
bank_name
string
iban
string <= 34 characters ^[A-Z]{2}[0-9]{2}[A-Z0-9]{11,30}$
bic
string^[A-Za-z]{4} ?[A-Za-z]{2} ?[A-Za-z0-9]{2} ?([...

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{
  • "data": {
    }
}

Show deal

Get details from a deal owned or reserved by the authenticated company

Authorizations:
bearerAuth
path Parameters
deal
required
string
Example: 4d47618d-f7ca-4539-afb0-fa49324900bf

Deal ID

header Parameters
Content-Type
required
string
Value: "application/json"
Accept
required
string
Value: "application/json"
User-Agent
required
string
Example: 0982ef24-a629-43e4-ad3f-8c53bd8f2f94
Authorization
required
string
Example: Bearer uEcSxJWVPzrpx4LzZEDy7OzoKhW024esZFMJne3N
Environment
string
Enum: "production" "sandbox"
Example: production

Responses

Response samples

Content type
application/json
{}

Update the deal status or end date.

Update deal.

Authorizations:
bearerAuth
path Parameters
deal
required
string
Example: 4d47618d-f7ca-4539-afb0-fa49324900bf

Deal ID

header Parameters
Content-Type
required
string
Value: "application/json"
Accept
required
string
Value: "application/json"
User-Agent
required
string
Example: 0982ef24-a629-43e4-ad3f-8c53bd8f2f94
Authorization
required
string
Example: Bearer uEcSxJWVPzrpx4LzZEDy7OzoKhW024esZFMJne3N
Environment
string
Enum: "production" "sandbox"
Example: production
Request Body schema: application/json
status
string
Value: "closed"

The field is optional

ends_at
datetime <Y-m-d\TH:i:sP>

The field is optional, but if present, the new date needs to be greater or equal today

Responses

Request samples

Content type
application/json
{
  • "status": "closed",
  • "ends_at": "2023-04-06T00:00:00+00:00"
}

Response samples

Content type
application/json
{}

Cancel deal

Cancel a deal owned by the company if it was not shared with network.

Authorizations:
bearerAuth
path Parameters
deal
required
string
Example: 4d47618d-f7ca-4539-afb0-fa49324900bf

Deal ID

header Parameters
Content-Type
required
string
Value: "application/json"
Accept
required
string
Value: "application/json"
User-Agent
required
string
Example: 0982ef24-a629-43e4-ad3f-8c53bd8f2f94
Authorization
required
string
Example: Bearer uEcSxJWVPzrpx4LzZEDy7OzoKhW024esZFMJne3N
Environment
string
Enum: "production" "sandbox"
Example: production

Responses

Response samples

Content type
application/json
{}

Orders

List orders

List all orders from this deal

Authorizations:
bearerAuth
path Parameters
deal
required
string
Example: 4d47618d-f7ca-4539-afb0-fa49324900bf

Deal ID

header Parameters
Content-Type
required
string
Value: "application/json"
Accept
required
string
Value: "application/json"
User-Agent
required
string
Example: 0982ef24-a629-43e4-ad3f-8c53bd8f2f94
Authorization
required
string
Example: Bearer uEcSxJWVPzrpx4LzZEDy7OzoKhW024esZFMJne3N
Environment
string
Enum: "production" "sandbox"
Example: production

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Create order

Authorizations:
bearerAuth
path Parameters
deal
required
string
Example: 4d47618d-f7ca-4539-afb0-fa49324900bf

Deal ID

header Parameters
Content-Type
required
string
Value: "application/json"
Accept
required
string
Value: "application/json"
User-Agent
required
string
Example: 0982ef24-a629-43e4-ad3f-8c53bd8f2f94
Authorization
required
string
Example: Bearer uEcSxJWVPzrpx4LzZEDy7OzoKhW024esZFMJne3N
Environment
string
Enum: "production" "sandbox"
Example: production
Request Body schema: application/json
id
string = 36 characters ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]...

An unique identifier (UUID) for the company creating the order. It could be duplicated with orders from other companies.

amount
number
client_ref
string <= 255 characters

Responses

Request samples

Content type
application/json
{
  • "id": "8144f259-339e-45ca-930d-c3bbb5841bdb",
  • "amount": 10000,
  • "client_ref": "0982ef24-a629-43e4-ad3f-8c53bd8f2f94"
}

Response samples

Content type
application/json
{
  • "data": {
    }
}

Show order

Show an order from a deal

Authorizations:
bearerAuth
path Parameters
deal
required
string
Example: 4d47618d-f7ca-4539-afb0-fa49324900bf

Deal ID

order
required
string
Example: 4569d6cd-e4bb-4e12-9384-0c842f6934a3

Order ID

header Parameters
Content-Type
required
string
Value: "application/json"
Accept
required
string
Value: "application/json"
User-Agent
required
string
Example: 0982ef24-a629-43e4-ad3f-8c53bd8f2f94
Authorization
required
string
Example: Bearer uEcSxJWVPzrpx4LzZEDy7OzoKhW024esZFMJne3N
Environment
string
Enum: "production" "sandbox"
Example: production

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Cancel order

Authorizations:
bearerAuth
path Parameters
deal
required
string
Example: 4d47618d-f7ca-4539-afb0-fa49324900bf

Deal ID

order
required
string
Example: 4569d6cd-e4bb-4e12-9384-0c842f6934a3

Order ID

header Parameters
Content-Type
required
string
Value: "application/json"
Accept
required
string
Value: "application/json"
User-Agent
required
string
Example: 0982ef24-a629-43e4-ad3f-8c53bd8f2f94
Authorization
required
string
Example: Bearer uEcSxJWVPzrpx4LzZEDy7OzoKhW024esZFMJne3N
Environment
string
Enum: "production" "sandbox"
Example: production

Responses

Response samples

Content type
application/json
{ }