Template installment-sale@0.12.1

Contract ^0.12.0 c69ba346cd2a2d533f4a721ff902b743048c36082cb5c081ebc6a1476177ad1c

This is a clause for a simple installment sale.

Download Archive Open in Template Studio Open in VSCode Web

Installment Sale

A simple clause for a sale paid in installments.

Sample

            "Dan" agrees to pay to "Ned" the total sum e10000, in the manner following:

E500 is to be paid at closing, and the remaining balance of E9500 shall be paid as follows:

E500 or more per month on the first day of each and every month, and continuing until the entire balance, including both principal and interest, shall be paid in full -- provided, however, that the entire balance due plus accrued interest and any other amounts due here-under shall be paid in full on or before 24 months.

Monthly payments, which shall start on month 3, include both principal and interest with interest at the rate of 1.5%, computed monthly on the remaining balance from time to time unpaid.

          

Model Dependencies

Technical Integration

Please refer to the Cicero documentation for details and examples of how to integrate a call to a Cicero template into your application.

View the Latest code for this template on on GitHub.

Sample Instance

{
    "$class": "org.accordproject.installmentsale.InstallmentSaleContract",
    "contractId": "7787c405-6c8f-4c0f-b74e-d9fbd6105353",
    "BUYER": {
        "$class": "org.accordproject.cicero.contract.AccordParty",
        "partyId": "Dan"
    },
    "SELLER": {
        "$class": "org.accordproject.cicero.contract.AccordParty",
        "partyId": "Ned"
    },
    "INITIAL_DUE": 10000,
    "INTEREST_RATE": 1.5,
    "TOTAL_DUE_BEFORE_CLOSING": 9500,
    "MIN_PAYMENT": 500,
    "DUE_AT_CLOSING": 500,
    "FIRST_MONTH": 3
}

State Types

Type Sample JSON
org.accordproject.installmentsale.InstallmentSaleState
{
    "$class": "org.accordproject.installmentsale.InstallmentSaleState",
    "status": "WaitingForFirstDayOfNextMonth",
    "balance_remaining": 201.808,
    "next_payment_month": 33615,
    "total_paid": 178.628,
    "stateId": "207312d2-8942-11e9-b9ba-87d1cf618bec"
}

Request Types

Type Sample JSON
org.accordproject.installmentsale.ClosingPayment
{
    "$class": "org.accordproject.installmentsale.ClosingPayment",
    "amount": 128.089,
    "transactionId": "2072ebc1-8942-11e9-b9ba-87d1cf618bec",
    "timestamp": "2019-06-07T12:34:31.676-04:00"
}
org.accordproject.installmentsale.Installment
{
    "$class": "org.accordproject.installmentsale.Installment",
    "amount": 238.787,
    "transactionId": "2072ebc0-8942-11e9-b9ba-87d1cf618bec",
    "timestamp": "2019-06-07T12:34:31.676-04:00"
}

Response Types

Type Sample JSON
org.accordproject.installmentsale.Balance
{
    "$class": "org.accordproject.installmentsale.Balance",
    "balance": 152.888,
    "total_paid": 64.905,
    "transactionId": "207312d0-8942-11e9-b9ba-87d1cf618bec",
    "timestamp": "2019-06-07T12:34:31.677-04:00"
}

Events Types

Type Sample JSON
org.accordproject.cicero.runtime.PaymentObligation
{
    "$class": "org.accordproject.cicero.runtime.PaymentObligation",
    "amount": {
        "$class": "org.accordproject.money.MonetaryAmount",
        "doubleValue": 61.177,
        "currencyCode": "ILS"
    },
    "description": "Nisi reprehenderit magna pariatur id.",
    "contract": "resource:org.accordproject.installmentsale.InstallmentSaleContract#8828",
    "promisor": "resource:org.accordproject.cicero.contract.AccordParty#7517",
    "promisee": "resource:org.accordproject.cicero.contract.AccordParty#0480",
    "deadline": "2019-06-07T12:34:31.678-04:00",
    "eventId": "207339e0-8942-11e9-b9ba-87d1cf618bec",
    "timestamp": "2019-06-07T12:34:31.678-04:00"
}