AM/FA - Digitize Offering's Existing Securities

Details

/external/v1/offline-transactions/asset

Synopsis

Digitize Offering's existing securities

post

This route is used by the issuer that owns the security to digitize offline securities.

The asset that is created should be used for allocation purposes, i.e. to eventually transfer the digitized asset to the corresponding investor(s) account(s) once they are on the platform.

It triggers an asynchronous process that will persist this information on the blockchain, which can be monitored using the "Transactions API" endpoints.

This endpoint can be invoked by organizations that have at least one of the following roles on this security: ["issuer","service_provider"].

This endpoint can be invoked if the security is in one of the following statuses: ["active","completed","closed"].

This endpoint can't be invoked if the security is restricted.

This endpoint can be called by applications with access to scope "createOfflineAsset".

Authorizations
Body
signerall ofRequired

This property contains basic information regarding the person that is executing this action. It is used for audit trail of who made which request.

This information will be hashed on the block and will not be shared with other organizations that are part of the blockchain network, unless with the the ones that are concerned with this transaction.

Example: {"email":"[email protected]","name":"John Doe"}
processIdstringOptional

This is an externally provided id that can be used to identify the asynchronous process that will be triggered by this action. It is optional. If not provided the system will generate a unique id for this.

If provided, it must have a v4 UUID format.

Example: 2159457f-0167-4e93-a969-9cf0db05e0bf
securityIdstringOptional

This is the security unique identifier on the ledger. It uniquely identifies a particular security on the blockchain. It is optional.

Either "securityId" or "securityCorrelationData" must be provided, but not both.

Example: USS3JKS01I00
securityCorrelationDataall ofOptional

This property contains the correlation data that is used to identify a particular security within an organization. It is optional.

Either "securityId" or "securityCorrelationData" must be provided, but not both. Security Correlation IDs can be managed using the "Security Admin API".

extraDataobject · max: 1024Optional

JSON object to collect extra data regarding the entity. This object cannot have more than 1024 length serialized

Example: {"externalId":"123456789","some":"Custom Property"}
bookedAssetIdstring · max: 12Optional

This is the booked unique identifier of the asset. It is optional.

Example: USS3JKS01I00
amountnumber · min: 0.01 · max: 999999999999999Required

The amount being invested. Must be less or equal to the available amount being raised on the offering defined by the "securityId" parameter.

This parameter should be provided for all security types.

Up to 2 fractional digits may be provided.

sharesNumbernumber · min: 0.000001 · max: 999999999999999Optional

The number of shares being bought. Must be less or equal to the number of shares available on the offering defined by the "securityId" parameter.

This parameter should be provided for unitized financial instruments with static price.

Should not be provided for non-unitized instruments (e.g. lpInterest) or for offerings with rolling price type.

Up to 2 fractional digits may be provided.

currencystring · max: 3Optional

The currency of the amount. It must be provided if the offering supports multiple currencies. If the offering only supports one currency this property is optional. If provided then it must match the allowed currencies defined on the offering specified by the securityId. Only the alphabetic code is supported.

Example: USD
acquiredDateone ofOptional

This is the date on which the investor confirmed the intention of investing in this security (e.g. date in which he signed a subscription agreement document). Optional. If not provided the system will assume the current timestamp as the acquired date. If provided, this date needs to be after the start of the offering campaign.

Example: 2024-09-12T00:00:00.000Z
string · date-timeOptional

Date-time string

Example: 2024-09-12T00:00:00.000Z
or
string · dateOptional

Date string

Example: 1980-01-01
or
number · numberOptional

Epoch timestamp (milliseconds)

Example: 1185106460000
completedByAdvisorall ofOptional

The details of the advisor who completed the subscription agreement on behalf of the investor. It is optional.

Example: {"advisorId":"ADV00018","data":{"name":"Jane Doe","type":"FA","crdCode":"5555666"}}
frontendFeenumberOptional

Asset front end fee (in percentage %). Reflects the commission charged to the investor for this investment opportunity.

Should not exceed the maximum commission value defined by the issuer of the securities. If not provided it is assumed to be 0%.

Up to 6 decimal cases is supported.

commissionnumber · max: 999999999999999Optional

The absolute value of the commission paid to the advisors. Is an optional field.

If not provided then it is assumed to be 0.

Up to 2 decimal cases is supported.

Example: 1000
currentValuenumberOptional

The current value for the non unitized asset (specified on the same currency as the asset).

E.g. for a non-unitized fund of type lpInterest with capital calls structure:

  • GP/Fund Admin calls 10k from one of their LPs

  • GP/Fund Admin invests the 10k and makes a profit

  • GP/Fund Admin sets the current value of that LP as 11k

Example: 10000
capitalCallDetailsall ofOptional

Should be provided if the underlying security is of type "lpInterest".

Example: {"amountCalled":3000,"expenses":1000,"permanentDistributionAmount":0}
Responses
201
Successfully triggered the process to digitize offline securities
application/json
post
POST /external/v1/offline-transactions/asset HTTP/1.1
Host: 
Authorization: Bearer YOUR_OAUTH2_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 815

{
  "signer": {
    "email": "[email protected]",
    "name": "John Doe"
  },
  "processId": "2159457f-0167-4e93-a969-9cf0db05e0bf",
  "securityId": "USS3JKS01I00",
  "securityCorrelationData": {
    "correlationId": "USS3JKS01I00",
    "orgId": "US9QIMA"
  },
  "extraData": {
    "externalId": "123456789",
    "some": "Custom Property"
  },
  "bookedAssetId": "USS3JKS01I00",
  "amount": 1,
  "sharesNumber": 1,
  "currency": "USD",
  "acquiredDate": "2024-09-12T00:00:00.000Z",
  "completedByAdvisor": {
    "advisorId": "ADV00018",
    "data": {
      "name": "Jane Doe",
      "type": "FA",
      "crdCode": "5555666"
    }
  },
  "correlationData": [
    {
      "broadcastToCounterparty": true,
      "correlationId": "123245573717",
      "origin": "Identifies asset on backoffice",
      "extraData": {
        "some": "Custom Property"
      }
    }
  ],
  "frontendFee": 1,
  "commission": 1000,
  "currentValue": 10000,
  "capitalCallDetails": {
    "amountCalled": 3000,
    "expenses": 1000,
    "permanentDistributionAmount": 0
  }
}
{
  "processId": "2159457f-0167-4e93-a969-9cf0db05e0bf",
  "orchestrationId": "2159457f-0167-4e93-a969-9cf0db05e0bf",
  "assetId": "US9QIMAOAS1Q"
}

Important Notes

Last updated

Was this helpful?