Payment Upon Signature

payment-upon-signature@0.8.0 Contract ^0.20.0 e7ea596e33628b4dd2d25aa4e271e5a32c08ffbc9812b086e2bd461b4e5de962

This is a generic payment clause applicable to any type of contract that requires some payment at the time of signature.

Download Archive Open in Template Studio

Payment Upon Signature

This is a generic payment clause applicable to any type of contract that requires some payment at the time of signature.

Template Text

Grammar

Upon the signing of this Agreement, {{buyer}} shall pay {{amount}} to {{seller}}.

Sample

Upon the signing of this Agreement, "Dave" shall pay 50 USD to "Dan".

Sample Data

{
    "$class": "org.accordproject.payment.uponsignature.PaymentUponSignatureContract",
    "contractId": "b71705a1-30ad-4549-86b3-5b541fd152ea",
    "buyer": {
        "$class": "org.accordproject.cicero.contract.AccordParty",
        "partyId": "Dave"
    },
    "seller": {
        "$class": "org.accordproject.cicero.contract.AccordParty",
        "partyId": "Dan"
    },
    "amount": {
        "$class": "org.accordproject.money.MonetaryAmount",
        "doubleValue": 50,
        "currencyCode": "USD"
    }
}

Template Model

Model Dependencies

Template Logic

Find the full logic for this template on on GitHub.

State Types

Type Sample JSON
org.accordproject.payment.uponsignature.PaymentUponSignatureState
{
    "$class": "org.accordproject.payment.uponsignature.PaymentUponSignatureState",
    "status": "COMPLETED",
    "stateId": "ffa8d265-ff3e-11e9-b361-efc0ae54bdd6"
}

Request Types

Type Sample JSON
org.accordproject.payment.PaymentReceived
{
    "$class": "org.accordproject.payment.PaymentReceived",
    "transactionId": "ffa8d261-ff3e-11e9-b361-efc0ae54bdd6",
    "timestamp": "2019-11-04T15:09:25.382-05:00"
}
org.accordproject.signature.ContractSigned
{
    "$class": "org.accordproject.signature.ContractSigned",
    "contract": "resource:org.accordproject.payment.uponsignature.PaymentUponSignatureContract#5518",
    "transactionId": "ffa8d260-ff3e-11e9-b361-efc0ae54bdd6",
    "timestamp": "2019-11-04T15:09:25.382-05:00"
}

Response Types

Type Sample JSON
org.accordproject.cicero.runtime.Response
{
    "$class": "org.accordproject.cicero.runtime.Response",
    "transactionId": "ffa8d263-ff3e-11e9-b361-efc0ae54bdd6",
    "timestamp": "2019-11-04T15:09:25.382-05:00"
}

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": 113.939,
        "currencyCode": "TZS"
    },
    "description": "Consectetur dolore officia veniam occaecat.",
    "contract": "resource:org.accordproject.payment.uponsignature.PaymentUponSignatureContract#5975",
    "promisor": "resource:org.accordproject.cicero.contract.AccordParty#3210",
    "promisee": "resource:org.accordproject.cicero.contract.AccordParty#8637",
    "deadline": "2019-11-04T15:09:25.382-05:00",
    "eventId": "ffa8d266-ff3e-11e9-b361-efc0ae54bdd6",
    "timestamp": "2019-11-04T15:09:25.382-05:00"
}

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 GitHub.