IP Library Granted Patent US 12,198,212
Granted Patent B2
US 12,198,212 · App. 18/343,810 · Granted Jan 14, 2025

System and method for blockchain-based network transitioned by a legal contract

Inventors: Peter Geoffrey Lerato Hunn (Dallas, TX); Daniel Charles Selman (Winchester, GB); Jerome Simeon (New York, NY)
Assignee: Docusign, Inc.
G06Q50/18G06F16/2379H04L9/32
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 12,198,212
App. No.
18/343,810
Granted
Jan 14, 2025
Kind
B2
Abstract

A system and method for transitioning a distributed ledger network according to a legal contract that includes: establishing a contract, which comprises generating a set of programmable clauses for the contract by implementing a templating system comprised of a template model that contains the logic of each programmable clause of the set of programmable clauses; operating a distributed ledger network between participants, wherein the distributed ledger network is configured with an application model that maps to the template model; updating the contract state; updating the distributed ledger network according to the application model; in response to at least one update to the contract state, recording an update to the distributed ledger network; and in response to at least one contract-associated update in the distributed ledger network, initiating execution of at least one programmable clause of the contract and recording a subsequent update to the distributed ledger network.

Claims (42)

1. A method comprising:

updating a state of an electronic document, the electronic document comprising a programmable clause implemented using a template model defining input data to execute the programmable clause and defining data output by the programmable clause, wherein the template model is mapped to an application model recorded in a blockchain network;

in response to updating the state of the electronic document, recording a first update to the blockchain network using the application model;

in response to recording the first update to the blockchain network:

determining, based on the input data defined by the template model, a value for the input data; and

invoking execution logic of the template model, wherein the execution logic of the template model is configured to, in response to the invoking, generate a second update based on the determined value of the input data; and

recording the second update in the blockchain network.

2. The method of claim 1 , wherein updating the state of the electronic document comprises determining a change for a value for a variable of the electronic document.

3. The method of claim 2 , wherein determining the change for the value comprises polling data.

4. The method of claim 2 , wherein determining the change for the value comprises accessing data in response to an event.

5. The method of claim 2 , wherein determining the change for the value comprises receiving a data update from a network-connected device.

6. The method of claim 1 , wherein the execution logic of the template model is configured to generate the second update based on the determined value of the input data and further based on one or more of an external action or an internal integration.

7. The method of claim 6 , wherein the programmable clause is a first programmable clause, wherein the electronic document comprises a second programmable clause, and wherein the internal integration comprises a call from the first programmable clause to the second programmable clause.

8. The method of claim 6 , wherein the external action comprises calling an application programming interface, pushing an object to the blockchain network, or calling an on-chain script.

9. The method of claim 1 , further comprising:

creating an application programming interface endpoint of the programmable clause; and

receiving, at the application programming interface endpoint of the programmable clause, a callback request from at least one application model object in the blockchain network.

10. A system comprising one or more processors having access to memory, the one or more processors configured to:

update a state of an electronic document, the electronic document comprising a programmable clause implemented using a template model defining input data to execute the programmable clause and defining data output by the programmable clause, wherein the template model is mapped to an application model recorded in a blockchain network;

in response to updating the state of the electronic document, record a first update to the blockchain network using the application model;

in response to recording the first update to the blockchain network:

determine, based on the input data defined by the template model, a value for the input data; and

invoke execution logic of the template model, wherein the execution logic of the template model is configured to, in response to the invoking, generate a second update based on the determined value of the input data; and

record the second update in the blockchain network.

11. The system of claim 10 , wherein to update the state of the electronic document, the one or more processors are configured to determine a change for a value for a variable of the electronic document.

12. The system of claim 11 , wherein to determine the change for the value, the one or more processors are configured to poll data.

13. The system of claim 11 , wherein to determine the change for the value, the one or more processors are configured to access data in response to an event.

14. The system of claim 11 , wherein to determine the change for the value, the one or more processors are configured to receive a data update from a network-connected device.

15. The system of claim 10 , wherein the execution logic of the template model is configured to generate the second update based on the determined value of the input data and further based on one or more of an external action or an internal integration.

16. The system of claim 15 , wherein the programmable clause is a first programmable clause, wherein the electronic document comprises a second programmable clause, and wherein the internal integration comprises a call from the first programmable clause to the second programmable clause.

17. The system of claim 15 , wherein the external action comprises calling an application programming interface, pushing an object to the blockchain network, or calling an on-chain script.

18. The system of claim 10 , wherein the one or more processors are further configured to:

create an application programming interface endpoint of the programmable clause; and

receive, at the application programming interface endpoint of the programmable clause, a callback request from at least one application model object in the blockchain network.

19. Non-transitory computer-readable storage media storing executable instructions that, when executed by one or more processors, cause the one or more processors to:

update a state of an electronic document, the electronic document comprising a programmable clause implemented using a template model defining input data to execute the programmable clause and defining data output by the programmable clause, wherein the template model is mapped to an application model recorded in a blockchain network;

in response to updating the state of the electronic document, record a first update to the blockchain network using the application model;

in response to recording the first update to the blockchain network:

determine, based on the input data defined by the template model, a value for the input data; and

invoke execution logic of the template model, wherein the execution logic of the template model is configured to, in response to the invoking, generate a second update based on the determined value of the input data; and

record the second update in the blockchain network.

20. The non-transitory computer-readable storage media of claim 19 , wherein to update the state of the electronic document, the instructions cause the one or more processors to determine a change for a value for a variable of the electronic document.

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 Jun 29, 2023
From: HUNN, PETER GEOFFREY LERATO; SELMAN, DANIEL CHARLES; SIMEON, JEROME
To: CLAUSE, INC.
Reel/Frame 064108/0174 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 29, 2023
From: CLAUSE, INC.
To: DOCUSIGN, INC.
Reel/Frame 064108/0527 →
Continuity (8)
Continuation 16761184
Provisional Application 62651165 · Apr 1, 2018
Provisional Application 62643647 · Mar 15, 2018
Provisional Application 62639412 · Mar 6, 2018
Provisional Application 62618483 · Jan 17, 2018
Provisional Application 62609341 · Dec 22, 2017
Provisional Application 62580407 · Nov 1, 2017
Related Publication 20230351535A1 · Nov 2, 2023
References Cited (48)
US 5892900A · Ginter et al. · 1999 [cited by applicant]
US 6640304B2 · Ginter et al. · 2003 [cited by applicant]
US 7433838B2 · Welsh et al. · 2008 [cited by applicant]
US 7756772B1 · Konopnicki et al. · 2010 [cited by applicant]
US 7831573B2 · Lillibridge et al. · 2010 [cited by applicant]
US 8086866B2 · Jakobsson · 2011 [cited by applicant]
US 8285681B2 · Prahlad et al. · 2012 [cited by applicant]
US 9356965B2 · Kjeldaas · 2016 [cited by applicant]
US 9432192B1 · Pogde et al. · 2016 [cited by applicant]
US 9483455B1 · Bastide et al. · 2016 [cited by applicant]
US 10445698B2 · Hunn · 2019 [cited by applicant]
US 20020091539A1 · Yin et al. · 2002 [cited by applicant]
US 20020184504A1 · Hughes · 2002 [cited by applicant]
US 20070250337A1 · Karamchedu et al. · 2007 [cited by applicant]
US 20090234662A1 · Stieber et al. · 2009 [cited by applicant]
US 20100268528A1 · Raskina et al. · 2010 [cited by applicant]
US 20110307278A1 · Clarke et al. · 2011 [cited by applicant]
US 20120303969A1 · Jakobsson · 2012 [cited by applicant]
US 20140164255A1 · Daly et al. · 2014 [cited by applicant]
US 20150379510A1 · Smith · 2015 [cited by applicant]
US 20160028552A1 · Spanos et al. · 2016 [cited by applicant]
US 20160034519A1 · Besch et al. · 2016 [cited by applicant]
US 20160110261A1 · Parab et al. · 2016 [cited by applicant]
US 20160117471A1 · Belt et al. · 2016 [cited by applicant]
US 20160283941A1 · Andrade · 2016 [cited by applicant]
US 20170103167A1 · Shah · 2017 [cited by applicant]
US 20170103468A1 · Orsini et al. · 2017 [cited by applicant]
US 20170232300A1 · Tran · 2017 [cited by examiner]
US 20170236120A1 · Herlihy et al. · 2017 [cited by applicant]
US 20170287090A1 · Hunn et al. · 2017 [cited by applicant]
US 20170331896A1 · Holloway et al. · 2017 [cited by applicant]
US 20180005186A1 · Hunn · 2018 [cited by applicant]
US 20180174255A1 · Hunn et al. · 2018 [cited by applicant]
US 20180315141A1 · Hunn et al. · 2018 [cited by applicant]
US 20180365201A1 · Hunn et al. · 2018 [cited by applicant]
US 20190013932A1 · Maino · 2019 [cited by examiner]
US 20190080392A1 · Youb et al. · 2019 [cited by applicant]
US 20190108140A1 · Deshpande · 2019 [cited by examiner]
US 20190122317A1 · Hunn et al. · 2019 [cited by applicant]
US 20190358515A1 · Tran et al. · 2019 [cited by applicant]
US 20200057994A1 · Hunn · 2020 [cited by applicant]
US 20200104296A1 · Hunn et al. · 2020 [cited by applicant]
Australian Office Action, IP Australia Patent Application No. 2018360802, Mar. 11, 2021, 4 pages. [cited by applicant]
Grigg, 1., “The Ricardian Contract”, Proceedings. First IEEE International Workshop on Electronic Contracting, 2004. [cited by applicant]
International Preliminary Report on Patentability from International Application No. PCT/US2018/058813 dated May 5, 2020, 6 pp. [cited by applicant]
International Search Report and Written Opinion, Patent Cooperation Treaty No. PCT/US2018/058813, Jan. 16, 2019, 11 pages. [cited by applicant]
Ron White, How Computers Work, 15 Oct. 15, 2003, Que Publishing, 7th Ed, p. 4 (Year: 2003). [cited by applicant]
Prosecution History from U.S. Appl. No. 16/761,184, dated May 24, 2022 through Jun. 2, 2023, 83 pp. [cited by applicant]