IP Library Granted Patent US 11,887,055
Granted Patent B2
US 11,887,055 · App. 17/177,000 · Granted Jan 30, 2024

System and method for forming, storing, managing, and executing contracts

Inventor: Peter Geoffrey Lerato Hunn (Irving, TX)
Assignee: DocuSign, Inc.
G06Q10/10G06F16/219G06F16/93G06F21/645G06F40/103G06F40/166G06Q30/0283G06T11/206G06Q2220/00
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,887,055
App. No.
17/177,000
Granted
Jan 30, 2024
Kind
B2
Abstract

A system and method for computable contracts that includes a contract management system accessible by involved parties, managing a formation stage of a contract document by obtaining object components, assembling a contract object graph from the object components, and committing the contract object graph to post formation execution; and in an execution environment during a post-formation stage, executing the contract object graph where instances of execution include receiving a contract state update, and appending at least one update object component to the contract object graph in accordance with the contract state update. Variations of the system and method may apply peer-to-peer negotiation and execution, use a cryptographic directed acyclic contract object graph, and/or interface with distributed ledgers.

Claims (43)

1. A method comprising:

managing, in a contract management system operable within a computing system comprised of at least one processor and accessible by involved parties through a computer interface, a formation stage of a contract document, the managing of the formation stage comprising:

translating the contract document to a data representation comprising object components;

assembling a contract object graph from the object components, wherein the contract object graph comprises components connected via hash linking; and

responsive to executing one or more signatures from the involved parties to the contract object graph, terminating the formation stage; and

executing, in an execution environment comprised of at least one processor and during a post formation stage, the contract object graph where instances of execution comprise:

receiving a data initiated contract state update through the execution environment and

appending, via hash linking, at least one updated object component to the contract object graph in accordance with the data intiated contract state update.

2. The method of claim 1 , wherein the contract object graph is a directed acyclic graph.

3. The method of claim 2 , wherein translating the contract document to the data representation comprising object components further comprises obtaining of clause objects, and wherein assembling the contract object graph comprises assembling the contract object graph as a tree organization containing the clause objects.

4. The method of claim 3 , wherein the clause objects include natural language clause objects, executable clause objects, and hybrid clause objects.

5. The method of claim 3 , wherein at least a subset of the clause objects are programmable clauses that include configured logic and at least one variable.

6. The method of claim 2 , further comprising referencing an element of the contract object graph in a transaction of a distributed ledger.

7. The method of claim 2 , further comprising driving execution of code executable on a distributed ledger system from the contract object graph.

8. The method of claim 1 , wherein translating the contract document to the data representation comprising object components further comprises obtaining the object components from a contract repository.

9. The method of claim 1 , wherein, in a first instance of execution, the data intiated contract state update comprises detecting outbound communication of data to a first distributed ledger system; and wherein, in a second instance of execution, the data intiated contract state update comprises detecting outbound communication of data to a second distributed ledger system that is distinct from the first distributed ledger.

10. The method of claim 1 , wherein translating the contract document to the data representation comprising object components further comprises receiving object components from a contract repository; and wherein managing the formation stage further comprises exchanging cryptographically signed commits between the involved parties and thereby synchronizing the contract repository with repositories of the involved parties.

11. The method of claim 1 , wherein executing the contract object graph comprises executing signatures of the contract object graph by contracting parties.

12. The method of claim 1 , wherein a first instance of execution comprises receiving a data-initiated state update; wherein a second instance of execution comprises receiving a party-initiated state update; and wherein a third instance of execution comprises receiving a hybrid state update.

13. The method of claim 1 , wherein the data-initiated contract state update results from receiving data from an outside data source; and wherein the at least one updated object defines altered logic in execution of the contract object graph.

14. The method of claim 1 , wherein the data-initiated contract state update results from detecting an outbound communication of data to a data destination; and wherein the at least one updated object records the outbound communication of data in the contract object graph.

15. The method of claim 14 , wherein the at least one updated object records outbound communication of data through an API of an outside service.

16. The method of claim 1 , wherein executing the contract object graph further comprises cryptographically validating the data intiated contract state update prior to appending the at least one updated object.

17. The method of claim 1 , wherein executing the contract object graph comprises executing the contract object graph through a decentralized computing infrastructure.

18. The method of claim 1 , querying the contract object graph and providing a versioned history of contract state.

19. A system comprising:

one or more processors; and

memory storing instructions that, when executed by the one or more processors, cause the system to perform operations comprising:

managing, in a contract management system operable within a computing system comprised of at least one processor and accessible by involved parties through a computer interface, a formation stage of a contract document, the managing of the formation stage comprising:

translating the contract document to a data representation comprising object components;

assembling a contract object graph from the object components, wherein the contract object graph comprises components connected via hash linking; and

responsive to executing one or more signatures from the involved parties to the contract object graph, terminating the formation stage; and

executing, in an execution environment comprised of at least one processor and during a post formation stage, the contract object graph where instances of execution comprise:

receiving a data initiated contract state update through the execution environment; and

appending, via hash linking, at least one updated object component to the contract object graph in accordance with the data initiated contract state update.

20. Non-transitory computer-readable storage media comprising instructions that, when executed by a processor, cause the processor to:

manage, in a contract management system operable within a computing system comprised of at least one processor and accessible by involved parties through a computer interface, a formation stage of a contract document, the managing of the formation stage comprising:

translating the contract document to a data representation comprising object components;

assembling a contract object graph from the object components, wherein the contract object graph comprises components connected via hash linking; and

responsive to executing one or more signatures from the involved parties to the contract object graph, terminating the formation stage; and

execute, in an execution environment comprised of at least one processor and during a post formation stage, the contract object graph where instances of execution comprise:

receiving a data initiated contract state update through the execution environment; and

appending, via hash linking, at least one updated object component to the contract object graph in accordance with the data intiated contract state update.

Assignments (3)
PATENT SECURITY AGREEMENT Recorded May 23, 2025
From: DOCUSIGN, INC.
To: BANK OF AMERICA, N.A.
Reel/Frame 071337/0240 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 29, 2021
From: CLAUSE, INC.
To: DOCUSIGN, INC.
Reel/Frame 057011/0840 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 13, 2021
From: LERATO HUNN, PETER GEOFFREY
To: CLAUSE, INC.
Reel/Frame 056230/0186 →
Continuity (7)
Continuation 16560283 · Sep 4, 2019
Continuation 15640276 · Jun 30, 2017
Provisional Application 62502496 · May 5, 2017
Provisional Application 62465035 · Feb 28, 2017
Provisional Application 62427553 · Nov 29, 2016
Provisional Application 62356938 · Jun 30, 2016
Related Publication 20210374672A1 · Dec 2, 2021
Cited By (1)
US 12,327,218