Investments

Each investment represents a contract between the issuer of a product and the investor.

Creating investments

You can directly create investments and store them in the crypto securities registry. This process is described below.

For directly creating investments using the investments endpoints you need the following data:

  • The ID of the investor the investment is created for

  • The ID of the campaign

  • The amount the investor is about to invest

  • The wallet address associated to the investor

Creating accepted investments

All investments need to be accepted by the issuer before they can be processed further. This can either be done via the Cashlink Studio of the issuer or programmatically via the API.

If you provide the accepted_at field in the request to create an investment, the issuer doesn't need to perform this action via the Cashlink Studio. If you omit the field the issuer is notified via email that a new investment can be accepted.

Status field codes

The status field of an investment may have one of the following values:

Signed documents

Investments involve signed documents that legally describe the investment contract with the issuer (such as a subscription form). You can access the signed documents via the API's signed documents endpoint at any time.

You can upload documents and add them to the investment via the signed documents endpoint. We require the following documents:

Registry statements

If the investment was made into a crypto security, you can retrieve all registry statements for an investment via the registry-statements endpoint (GET /investments/:id/registry-statements/). If you use our webhooks, you will get informed about new registry statements that are available.

New registry statements are created for every change to the remaining amount of the investment (e.g. because of an outgoing transfer) and also on a yearly basis.

Payments

Payments for investments by investors can be recorded via the Cashlink Studio. You can - in addition or exclusively - mark investments as paid via the API by adding a payment date to the investment via the investments endpoint after the investment has been accepted by the issuer.

The payment amount is calculated based on the investment amount, agio, disagio and accrued interest. The investment amount and disagio are controlled via the API. The agio and accrued interest is calculated based on the product configuration.

Please note that the accrued interest and therefore the total payable amount can change until the investment has been accepted by the issuer. Show the total payment amount to investors only after the investment has been accepted.

Wallet association

For an investment to settle, the investor's wallet used for this particular investment is required. Wallets can be associated with an investment directly during creation or they can be added afterwards by updating the investment.

The wallet association can be updated as long as the investment's issuance transaction has not been triggered yet.

Crediting crypto securities or digital securities

You are able to trigger the crediting of crypro securities or digital securities by providing the ID of the investment. The crediting can only be triggered if a wallet has been created for the investor and assigned to the investment. Also, the payment amount must be marked as received.

The crediting triggers a minting transaction on-ledger increasing the balance of the wallet associated with the investment by the purchased number of units.

The response contains a status field with the following codes:

  • processing: The task is created and is currently being executed

  • failed: The task could not be completed

  • succeeded: The task was completed successfully

  • unknown: The task needs manual investigation to determine if the transaction has actually succeeded

If the task failed because the minting transaction on-ledger could not be executed, the error message indicates that. If the task succeeded, the status of the investment is updated to DELIVERED.

Cancellations

Using the cancellation endpoint, you can submit the request of an investor for an investment to be aborted. The investment will receive the status ABORTED. The investment can be canceled by the investor if the investment is in one of the following states:

  • PENDING

  • KYC_PENDING

  • REVIEW_PENDING

  • WAITING_FOR_ACCEPTANCE

If the investment cannot be aborted via API, an error will be returned to the client.

Using the Cashlink Studio, there are additional ways to cancel an investment as an issuer. This includes the following cases:

  • The KYC/AML process could not be completed in time

  • The payment has not been received in full and in time

  • The issuer has rejected the investment

Last updated