Late Delivery and Penalty (with Optional)

Author: Accord Project

latedeliveryandpenalty-optional@0.3.0 Clause ^0.26.0 f67aeca1e307aeff55c1735b792899a37ddae7dbce07433b572f3a2c97c1eddc

A sample Late Delivery And Penalty clause.

Download Archive Download Compiled Archive Open in Template Playground Open in VSCode Web

Late Delivery And Penalty

A sample Late Delivery And Penalty clause.

Template Text

Late Delivery and Penalty.

In case of delayed delivery except for Force Majeure cases in a 100 miles radius, "Dan" (the Seller) shall pay to "Steve" (the Buyer) for every 2 days of delay penalty amounting to 10.5% of the total value of the Equipment whose delivery has been delayed. Any fractional part of a days is to be considered a full days. The total amount of penalty shall not however, exceed 55% of the total value of the Equipment involved in late delivery. If the delay is more than 15 days, the Buyer is entitled to terminate this Contract.

## Late Delivery and Penalty.

In case of delayed delivery except for Force Majeure cases in a 100 miles radius,
"Dan" (the Seller) shall pay to "Steve" (the Buyer) for every 2 days
of delay penalty amounting to 10.5% of the total value of the Equipment
whose delivery has been delayed. Any fractional part of a days is to be
considered a full days. The total amount of penalty shall not however,
exceed 55% of the total value of the Equipment involved in late delivery.
If the delay is more than 15 days, the Buyer is entitled to terminate this Contract.
## Late Delivery and Penalty.

In case of delayed delivery{{#optional forceMajeure}} except for Force Majeure cases in a {{miles}} miles radius,{{/optional}}
{{seller}} (the Seller) shall pay to {{buyer}} (the Buyer) for every {{penaltyDuration}}
of delay penalty amounting to {{penaltyPercentage}}% of the total value of the Equipment
whose delivery has been delayed. Any fractional part of a {{fractionalPart}} is to be
considered a full {{fractionalPart}}. The total amount of penalty shall not however,
exceed {{capPercentage}}% of the total value of the Equipment involved in late delivery.
If the delay is more than {{termination}}, the Buyer is entitled to terminate this Contract.
{
  "$class": "org.accordproject.latedeliveryandpenaltyoptional@0.2.0.TemplateModel",
  "buyer": "resource:org.accordproject.party.Party#Steve",
  "seller": "resource:org.accordproject.party.Party#Dan",
  "forceMajeure": {
    "$class": "org.accordproject.latedeliveryandpenalty.Distance",
    "miles": 100
  },
  "penaltyDuration": {
    "$class": "org.accordproject.time@0.3.0.Duration",
    "amount": 2,
    "unit": "days"
  },
  "penaltyPercentage": 10.5,
  "capPercentage": 55,
  "termination": {
    "$class": "org.accordproject.time@0.3.0.Duration",
    "amount": 15,
    "unit": "days"
  },
  "fractionalPart": "days",
  "$identifier": "daf1242b-6817-442f-b9a6-5e3df39a53b0",
  "clauseId": "daf1242b-6817-442f-b9a6-5e3df39a53b0"
}

Template Model

namespace org.accordproject.latedeliveryandpenaltyoptional@0.2.0

import org.accordproject.contract@0.2.0.Clause from https://models.accordproject.org/accordproject/contract@0.2.0.cto
import org.accordproject.runtime@0.2.0.{Request,Response} from https://models.accordproject.org/accordproject/runtime@0.2.0.cto
import org.accordproject.time@0.3.0.{Duration,TemporalUnit} from https://models.accordproject.org/time@0.3.0.cto
import org.accordproject.money@0.3.0.MonetaryAmount from https://models.accordproject.org/money@0.3.0.cto

concept Distance {
  o Double miles
}

transaction LateDeliveryAndPenaltyRequest extends Request {
  o Distance forceMajeure optional
  o DateTime agreedDelivery
  o DateTime deliveredAt optional
  o MonetaryAmount goodsValue
}

transaction LateDeliveryAndPenaltyResponse extends Response {
  o MonetaryAmount penalty
  o Boolean buyerMayTerminate
}

event PaymentObligationEvent {
  o MonetaryAmount amount
  o String description
}

@template
asset TemplateModel extends Clause {
  o String buyer
  o String seller
  o Distance forceMajeure optional
  o Duration penaltyDuration
  o Double penaltyPercentage
  o Double capPercentage
  o Duration termination
  o TemporalUnit fractionalPart
}

Model Dependencies

Template Logic

Find the full logic for this template on on GitHub.

State Types

Type Sample JSON
org.accordproject.runtime@0.2.0.State
{
    "$class": "org.accordproject.runtime@0.2.0.State",
    "$identifier": "b94f1fc0-5150-11f1-abe1-4375007ed584"
}

Request Types

Type Sample JSON
org.accordproject.latedeliveryandpenaltyoptional@0.2.0.LateDeliveryAndPenaltyRequest
{
    "$class": "org.accordproject.latedeliveryandpenaltyoptional@0.2.0.LateDeliveryAndPenaltyRequest",
    "forceMajeure": {
        "$class": "org.accordproject.latedeliveryandpenaltyoptional@0.2.0.Distance",
        "miles": 117.14
    },
    "agreedDelivery": "2026-05-16T18:57:37.337+01:00",
    "deliveredAt": "2026-05-16T18:57:37.337+01:00",
    "goodsValue": {
        "$class": "org.accordproject.money@0.3.0.MonetaryAmount",
        "doubleValue": 120.837,
        "currencyCode": "ANG"
    },
    "$timestamp": "2026-05-16T18:57:37.337+01:00"
}
org.accordproject.runtime@0.2.0.Request
{
    "$class": "org.accordproject.runtime@0.2.0.Request",
    "$timestamp": "2026-05-16T18:57:37.336+01:00"
}

Response Types

Type Sample JSON
org.accordproject.latedeliveryandpenaltyoptional@0.2.0.LateDeliveryAndPenaltyResponse
{
    "$class": "org.accordproject.latedeliveryandpenaltyoptional@0.2.0.LateDeliveryAndPenaltyResponse",
    "penalty": {
        "$class": "org.accordproject.money@0.3.0.MonetaryAmount",
        "doubleValue": 85.567,
        "currencyCode": "GYD"
    },
    "buyerMayTerminate": true,
    "$timestamp": "2026-05-16T18:57:37.340+01:00"
}
org.accordproject.runtime@0.2.0.Response
{
    "$class": "org.accordproject.runtime@0.2.0.Response",
    "$timestamp": "2026-05-16T18:57:37.339+01:00"
}

Events Types

Type Sample JSON

Technical Integration

Please refer to the Accord Project documentation for how to use a template or integrate it within your application.

View the Latest code for this template on GitHub.