Retrieving settlement reports

In this section, we show you how to access the specific treasury reports via the Investment API.

The process consists of two steps: first you have to fetch a signed URL, in the second step you can download the corresponding data via this URL.

Get reports

For the specific treasury reports you want to call up, proceed as described for the general data retrieval. Again, two steps are required, except that you now have to address dedicated static URLs in your request.

The purpose of each endpoint corresponds to a specific report.

1. Get signed URL

Call one of the static reports endpoints listed in the table below to request a signed URL and file metadata.

The file sharing API requires a folder name (e.g., settlement_reports ) and the requested file name (e.g., 'incoming_ca_DDMMYYYY.csv' ). The file names follow naming conventions, which are described in more detail here.

GET /files/settlement_reports/[fileName]

Example response

{
    "signed_url": "https://storage.googleapis.com/upvest-tooling-datasharing-service-ia-unstable-7263/48785b65bb0459547f9940db7678ef7601dc8826/test.txt?Expires=1680268944&GoogleAccessId=tooling-datasharing-service%40ia-unstable-7263.iam.gserviceaccount.com&Signature=AhbTgjMpKo%2BRB4T5pDEKI3Rw0kCWqyOPvkgKJHpvRKV%2FtSmWi2WvGPShBqc%2FvewnBSnFPeE%2BDrx5fdYSFbZ9WUo3n2BFUtFo%2FRIuh8zNyX5K7og58qO67PRlXKl%2B3HbHDyAx%2FgiOzmAbcIy0Au4LT%2F%2BYe2QMCVxxL7iM%2BPj5toANCyjZflTxM%2BdyZENhgiJ2j6q9uPsjBCP68PFHv%2BIwIIpsJhp9mTOIqH%2Bsbi%2FBckKHtYrrzCV1VzOpKi527y0%2FYUnmWDoV4ADXUmLuH73LlcoQ%2FOjBPvjR7PZCFT2yL4f9CBITfMzFacBDlX4jMZGZq%2BEbd04wxjMWQ%2B3N06zPeg%3D%3D",
    "updated_at": "2023-03-31T12:30:13Z"
}

File naming convention

All settlement reports currently follow this naming convention:

{direction}_{type}_{settlement_date}.csv
WARNING

To comply with the Swift symbol policy, file names differ depending on the setup: If you want the file name in the payment reference, we switch the characters from _ to -.

Example file names

* buy-trading-ddmmyyyy.csv
* sell-trading-ddmmyyyy.csv
* incoming-ca-ddmmyyyy.csv
* incoming-fee-ddmmyyyy.csv
* tax-treasury-ddmmyyyy.csv

This file name needs to be provided during step 1 of the described file sharing process.

Static reports endpoints

The following table lists the static endpoints for the different reports:

ReportStatic endpoint
Corporate action cash settlementhttps://api.upvest.co/files/settlement_reports/incoming _ca_DDMMYYYY.csv
Daily trades settlement - Buyhttps://api.upvest.co/files/settlement_reports/buy_trading_DDMMYYYY.csv
Daily trades settlement - Sellhttps://api.upvest.co/files/settlement_reports/sell_trading_DDMMYYYY.csv
Fee collection cash settlementhttps://api.upvest.co/files/settlement_reports/incoming_fee_DDMMYYYY.csv

2. Fetching the report

Use the signed URL returned in the response from step 1 to download the reporting files.

GET <PROVIDED “signed_url” PARAMETER>

WARNING

Please note that the signed URL is only valid for 15 minutes and only allows reads for the bucket.


Status code 400

If at the time of step 2 the signed url has already expired and the file has been deleted for security reasons, you will receive status code 400 and an expired token error:

Example 'Expired token'

ExpiredToken

The provided token has expired.

Request signature expired at: 2023-03-30T22:04:46+00:00

In this case, request a signed URL again (see step 1).

Settlement advice webhooks

Through the Investment API, we provide a treasury reporting webhook that allows us to notify clients when we have a settlement report for them.

By accessing this webhook, clients receive information on the amounts of money to be transferred for settlement.

Example webhook (outgoing)

{
  "id": "8962b496-8d42-4560-bfab-10490dd1a721",
  "created_at": "2023-05-08T10:42:34.758Z",
  "type": "TREASURY_REPORT.CREATED",
  "object": {
    "id": "6e736b54-ed57-46ad-8620-0ef59ddd8e6d",
    "type": "TRADING",
    "settlement_amount": "123.12",
    "report_date": "2023-05-08",
    "direction": "OUTGOING",
    "filename": "trading_buy_05082023.csv"
  },
  "webhook_id": "9df39835-be87-4243-9018-f2500b39cee6"
}

The webhook provides you the following information:

ParameterExampleDescription
created_at2023-05-08T10:42:34.758ZThe date and time when the webhook was created (e.g., when Upvest issued a report to the client.)
directionOUTGOINGThe direction of the treasury operation from the perspective of the customer (INCOMING or OUTGOING).
filenametrading_buy_05082023.csvThe file name with which the client can retrieve the file from the /files endpoint.
report_date2023-05-08The date for which the report is created.
settlement_amount123.12The amount the client needs to transfer.
typeTRADINGThe settlement type (TRADING or CORPORATE ACTIONS) .

Was this page helpful?