Net Settlement

The Net Settlement report apply exclusively to clients who are using their own fiat onramp solutions independently. For these clients, Bakkt provides a daily net settlement report to facilitate accurate reconciliation and settlement of transactions.


Daily Net Settlement Report

Each day, Bakkt generates a critical file for the period from 9 AM CT of the previous day to 9 AM CT of the current day. The file indicates the beginning and ending times for the transactions included in the net settlement, along with the net money that needs to be settled between Bakkt and the client who is using Bakkt execution services for daily settlements.

  • Net Settlement Report: This file contains detailed transaction data for all crypto executions within the settlement window. A summary of the Net Settlement will appear at the top of the file. Below that data will confirm that all listed coin executions have been cleared, with the assets now reflecting in the customer's holdings. This document is vital for cross-verifying transaction reconciliation between your system and Bakkt

Each day, your team will net settle funds using a wire transfer. The net settlement summary file will be emailed to your finance team and the Bakkt Operations team to facilitate the daily net settlement process. We request you to provide an appropriate email distribution list to ensure the right team members are looped into these communications. Any discrepancies identified will be collaboratively resolved by our teams before finalizing the settlement.


Start-of-Day Settlement Report Data Layout

The net settlement file will be uploaded to the eod_settlement directory in your S3 bucket.

The file name convention is as follows: 

  • DD_MM_YYYY_NET_SETTLEMENT_<Correspondent code>
Settlement Detail Fields Definitions

From

Beginning time stamp of the settlement window.

To

End time stamp of the settlement window.

Net Settlement

USD value of what is owed after the 9 AM cutoff. Positive values mean the client owes Bakkr. Negative values mean Bakkt owes the client.

Account ID

Client’s  unique Account ID for the customer’s account.

Client Order ID

Order ID sent with crypto order.

Execution ID

Unique identifier sent in execution report. Execution IDs are often numbers, but can also be alpha-numeric.

Trade Date

Date part of the Execution Timestamp.

Execution Time

UTC time of execution/fill.

Side

Text string with Buy or Sell for trades and DEPOSIT and WITHDRAWAL  for manual adjustments.

Symbol

Crypto symbol for trade (i.e. BTC).

Last Quantity

Quantity filled for corresponding Execution ID.

Last Price

Price where execution was filled.

Notional

Notional Value of the fill (i.e. Last Price * Last Quantity).

Fees

Trade fee in USD, where applicable.

Total

Total cost of the execution (Notional + Fees).

Transaction Type

This is the category of the transaction type. They include the following:
CLIENT_PURCHASE, CLIENT_SALE, CLIENT_ALLOCATION_SALE, CLIENT_ALLOCATION_PURCHASE, and MANUAL_ADJUSTMENT

CLIENT_PURCHASE

Single Buy trade execution.

CLIENT_SALE

Single Sell trade execution.

CLIENT_ALLOCATION_SALE

A Sell allocation for an account.

CLIENT_ALLOCATION_PURCHASE

A Buy allocation for an account.

MANUAL_ADJUSTMENT

  • A coin adjustment transaction for the customer’s account. In this case you will see a blank for “Notional” & Payment and there will not be a TPJ transaction associated with them.
  • A cash adjustment transaction for the customer’s account. These will have TPJ transactions associated with them. In this case you will see a blank “Last Quantity” and “Last Price”. The “Symbol” will be “USD”.

Transaction ID

Internal transaction ID.

Client Transaction ID

The ID that the client used to create the allocation request. This will be blank for all single trade executions.

Batch Transaction ID

The ID that the client used to create the batch of allocations that included this allocation. This will be blank for all single trade executions.

Reconciliation of Crypto Trade executions

Like an equity trade reconciliation, you can use the settlement detail file to reconcile all the customer trade executions you have in your system vs. the executions that Bakkt knows have happened.


Net Settlement Example Report


Period Covered: December 12, 2022, 14:00 UTC to December 13, 2022, 14:00 UTC

From: 2022-12-12T14:00:00Z

To: 2022-12-13T14:00:00Z

Net Settlement Amount: $19.00

Account IDTransaction TypeTransaction IDClient Order IDExecution IDClient Transaction IDBatch Transaction IDTrade DateExecution TimeSideSymbolLast QuantityLast PriceNotionalFeesTotal
xyz123jlpCLIENT_PURCHASE5587ce8d-8105-49a8-8d323821ad5a-2bf6-406b-aba4-a1d3c79dfd46e5a318e0627845df88465f7097aeab7a8e266503-7b46-459d-9677-c2d23bfeb9ffeb09fd2d-cc22-4c77-9495-8879330c915112/12/20222022-12-12T21:33:17ZBUYDOGE43.975078880.09096061404
xyz224jlpCLIENT_PURCHASE01afa9a7-f731-4c05-9ab76107b579-d613-4b55-97ec-e2b9321a69bf2022346-APEX-1-573-110751a3426f3-5ab0-44cf-bc07-cc40da9e04b9eb09fd2d-cc22-4c77-9495-8879330c915112/12/20222022-12-12T21:32:44ZBUYBTC0.0002879717362.66666667505
xyz444klmCLIENT_PURCHASE55d61ada-5824-4691-9547fce6b985-85d3-4ab6-8cdd-d762f840185bpeak6-wmtord-LJAHACDBNCGLABMEAGAAMBAA-LAe84c604d-fd04-4dae-89b6-7b14e643b404b6a5c9e2-0261-4682-a166-eed8a365df8c12/12/20222022-12-12T21:29:50ZBUYATOM0.514822669.71208222505
xyz444klmCLIENT_PURCHASE5857d8f1-c58f-483b-9087f498b1de-c7a8-4c50-9b9a-63658ce49bff2022346-APEX-1-573-110357b3207f0-45c8-40ee-9f6d-dbf3e43daa57b6a5c9e2-0261-4682-a166-eed8a365df8c12/12/20222022-12-12T21:29:08ZBUYBTC0.0002879317365.404040450

Note: A positive net settlement figure indicates an outstanding balance owed to Bakkt by the client.