Please report issues and contribute improvements on GitHub!

Template installment-sale@0.9.0

Contract Ergo ^0.10.0 b9bf38272f2a66b669e378f61eae6a9b5359cb0a906ebf5f4944e92ba8dfe326

This is a clause for a simple installment sale.

Download Archive Open in Template Studio

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 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": "b21bdbad-fa68-4ba0-988c-4498fc8deb1d",
    "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": 199.066,
    "next_payment_month": 54388,
    "total_paid": 84.279,
    "stateId": "e5076e70-152a-11e9-8d02-47431788edc9"
}

Request Types

Type Sample JSON
org.accordproject.cicero.runtime.Request
{
    "$class": "org.accordproject.cicero.runtime.Request",
    "transactionId": "e5072050-152a-11e9-8d02-47431788edc9",
    "timestamp": "2019-01-10T22:55:58.677Z"
}
org.accordproject.installmentsale.ClosingPayment
{
    "$class": "org.accordproject.installmentsale.ClosingPayment",
    "amount": 61.106,
    "transactionId": "e5072052-152a-11e9-8d02-47431788edc9",
    "timestamp": "2019-01-10T22:55:58.677Z"
}
org.accordproject.installmentsale.Installment
{
    "$class": "org.accordproject.installmentsale.Installment",
    "amount": 102.716,
    "transactionId": "e5072051-152a-11e9-8d02-47431788edc9",
    "timestamp": "2019-01-10T22:55:58.677Z"
}

Response Types

Type Sample JSON
org.accordproject.cicero.runtime.Response
{
    "$class": "org.accordproject.cicero.runtime.Response",
    "transactionId": "e5072053-152a-11e9-8d02-47431788edc9",
    "timestamp": "2019-01-10T22:55:58.678Z"
}
org.accordproject.installmentsale.Balance
{
    "$class": "org.accordproject.installmentsale.Balance",
    "balance": 6.251,
    "total_paid": 166.721,
    "transactionId": "e5074761-152a-11e9-8d02-47431788edc9",
    "timestamp": "2019-01-10T22:55:58.678Z"
}

Events Types

Type Sample JSON
org.accordproject.base.Event
{
    "abstract": "this is an abstract type"
}
org.accordproject.cicero.runtime.PaymentObligation
{
    "$class": "org.accordproject.cicero.runtime.PaymentObligation",
    "amount": {
        "$class": "org.accordproject.money.MonetaryAmount",
        "doubleValue": 125.652,
        "currencyCode": "NPR"
    },
    "description": "Officia ex commodo.",
    "contract": "resource:org.accordproject.installmentsale.InstallmentSaleContract#8304",
    "promisor": "resource:org.accordproject.cicero.contract.AccordParty#1548",
    "promisee": "resource:org.accordproject.cicero.contract.AccordParty#9552",
    "deadline": "2019-01-10T22:55:58.680Z",
    "eventId": "e5079580-152a-11e9-8d02-47431788edc9",
    "timestamp": "2019-01-10T22:55:58.680Z"
}