Patent attributes
Methods and systems for an extensible, universal ledger. One of the methods includes receiving at a journal manager engine a register transaction type request for a first transaction type, the journal manager engine reading and writing to a journal that stores a history of object state and of code by which object state is changed, wherein the register transaction type request is based at least in part on a template and specifies at least one action that can be performed as part of the first transaction type; writing the transaction type request to the journal including an operation definition for the first transaction type; receiving a transaction request of the first transaction type; obtaining the operation definition from the journal; executing an operation in response to the transaction request to produce a transaction result; and recording the transaction result in the journal.