Batch - It is possible to settle before settlement time


I’ve found out that the optional field settlementTime in the Batch implementation is not considered when it contains a time value. So if I set a settlementTime t and try to settle the Batch before t, the settlement succeeds.

I was wondering if this is intentional.

Jose Velasco


Hi @jvelasco.intellecteu,

The current implementation does indeed not perform checks regarding the settlement time, the field rather serves as an optional indicator for the desired time to settle. The rationale to maintaining a less restrictive implementation is to offer flexibility in the settlement process. This approach allows for:

  1. The actual execution time to be decided by the settler.

  2. The buyer or seller may choose to only allocate/approve their instructions just before the settlement time (thereby avoiding the Batch to settle early).

  3. To address situations where parties fail to settle before the desired time, an additional contract could be set up that allows to, e.g., roll a Batch (and its instructions) into a subsequent settlement cycle if the initial settlement time has elapsed. Moreover, this contract could incorporate clauses that impose penalties on the party that fails to allocate or approve the transaction in time.

  4. The settler can settle the Batch even after the settlement time, potentially after having resolved disputes offledger.

In case you need a more restrictive implementation, feel free to modify the current implementation to fit your requirements.

Hope that helps,