Systems, methods, and apparatuses for implementing smart flow contracts using distributed ledger technologies in a cloud based computing environment
Abstract
Systems, methods, and apparatuses for implementing smart flow contracts using distributed ledger technologies in a cloud based computing environment are described herein. For example, according to one embodiment there is a system having at least a processor and a memory therein executing within a host organization and having therein: means for operating a blockchain interface to a blockchain on behalf of a plurality of tenants of the host organization, wherein each of the plurality of tenants are participating nodes with the blockchain; means for receiving a login request from a user device; means for authenticating the user device with the host organization; means for receiving input from the user device indicating a plurality of smart contract blocks; means for translating each of the smart contract blocks into a native programming language to form a smart contract to execute via the blockchain; and means for transacting the smart contract onto the blockchain. Other related embodiments are disclosed.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A method, performed by a system of a host organization, the system having at least a processor and a memory therein, wherein the method comprises:
operating a blockchain interface to a blockchain on behalf of a plurality of tenants of the host organization, wherein each of the plurality of tenants are participating nodes with the blockchain; receiving a login request from a user device; authenticating the user device with the host organization; receiving input from the user device indicating a plurality of smart contract blocks; translating each of the smart contract blocks into a native programming language to form a smart contract to execute via the blockchain; and transacting the smart contract onto the blockchain.
2 . The method of claim 1 , further comprising:
transmitting a flow designer GUI to the user device; and wherein receiving the input from the user device comprises receiving inputs via the flow designer GUI indicating user selections of the plurality of smart contract blocks with a plurality of flow sequence, flow conditions, flow triggers, and/or flow event operations.
3 . The method of claim 1 :
wherein receiving the input from the user device indicating the plurality of smart contract blocks comprises receiving an Apex input file programmed in Apex programming language; wherein the method further comprises parsing a plurality of Apex defined smart contract blocks from the Apex input file; and wherein translating each of the smart contract blocks comprises translating the plurality of parsed Apex defined smart contract blocks into the native programming language to form the smart contract to execute via the blockchain.
4 . The method of claim 1 , wherein translating each of the smart contract blocks into the native programming language to form a smart contract comprises translating each of the plurality of smart contract blocks into a defined sequence of process operations for the smart contract, a defined smart contract condition, a defined smart contract trigger, and/or a defined smart contract event.
5 . The method of claim 1 , wherein transacting the smart contract onto the blockchain comprises:
writing the smart contract into the blockchain as metadata via a blockchain services interface of the host organization; and wherein the smart contract executes via the blockchain for one or more transactions occurring on the blockchain.
6 . The method of claim 1 , further comprising:
extracting an event listener from the input received from the user, wherein the event listener monitors the blockchain transactions for defined events having a corresponding smart contract condition or smart contract trigger within the smart contract transacted onto the blockchain; and executing the event listener separate from the blockchain, wherein the event listener executes within the host organization and triggers a pre-programmed action within the host organization upon occurrence of the event within a transaction on the blockchain.
7 . The method of claim 6 :
wherein the event listener executes within a Customer Relationship Management (CRM) platform of the host organization on behalf of a tenant of the host organization which is a participating party to the smart contract executing on the blockchain; and wherein executing the event comprises one of: halting a payment via the CRM system pursuant to a violation of terms or conditions defined by the smart contract executing within the blockchain or authorizing payment via the CRM system pursuant to fulfillment of all terms and conditions defined by the smart contract executing within the blockchain.
8 . The method of claim 1 , wherein translating each of the smart contract blocks into a native programming language to form a smart contract to execute via the blockchain, comprises:
translating each of the smart contract blocks into an Ethereum compliant Solidity programming language; wherein the host organization operates a participating node on an Ethereum blockchain via a blockchain services interface of the host organization; and wherein transacting the smart contract onto the blockchain comprises transacting the smart contract onto the Ethereum blockchain via the participating node for execution via the Ethereum blockchain.
9 . The method of claim 1 , wherein translating each of the smart contract blocks into a native programming language to form a smart contract to execute via the blockchain, comprises:
translating each of the smart contract blocks into a Hyperledger compliant Go programming language; wherein the host organization operates a participating node on a Hyperledger blockchain via a blockchain services interface of the host organization; and wherein transacting the smart contract onto the blockchain comprises transacting the smart contract onto the Hyperledger blockchain via the participating node for execution via the Hyperledger blockchain.
10 . The method of claim 1 , wherein receiving the input from the user device indicating a plurality of smart contract blocks comprises:
transmitting a flow designer GUI from a GUI manager of the host organization to the user device for display at the user device; and receiving mouse movement events at the flow designer GUI displayed to the user device indicating drag and drop selections and sequencing of available smart contract conditions, triggers, and events available via the flow designer GUI.
11 . Non-transitory computer readable storage media having instructions stored thereon that, when executed by a system of a host organization having at least a processor and a memory therein, the instructions cause the system to perform the following operations:
operating a blockchain interface to a blockchain on behalf of a plurality of tenants of the host organization, wherein each of the plurality of tenants are participating nodes with the blockchain; receiving a login request from a user device; authenticating the user device with the host organization; receiving input from the user device indicating a plurality of smart contract blocks; translating each of the smart contract blocks into a native programming language to form a smart contract to execute via the blockchain; and transacting the smart contract onto the blockchain.
15 . The non-transitory computer readable storage media of claim 11 , wherein the instructions cause the system to perform operations further comprising:
transmitting a flow designer GUI to the user device; and wherein receiving the input from the user device comprises receiving inputs via the flow designer GUI indicating user selections of the plurality of smart contract blocks with a plurality of flow sequence, flow conditions, flow triggers, and/or flow event operations.
13 . The non-transitory computer readable storage media of claim 11 :
wherein receiving the input from the user device indicating the plurality of smart contract blocks comprises receiving an Apex input file programmed in Apex programming language; wherein the method further comprises parsing a plurality of Apex defined smart contract blocks from the Apex input file; and wherein translating each of the smart contract blocks comprises translating the plurality of parsed Apex defined smart contract blocks into the native programming language to form the smart contract to execute via the blockchain.
14 . The non-transitory computer readable storage media of claim 11 , wherein translating each of the smart contract blocks into the native programming language to form a smart contract comprises translating each of the plurality of smart contract blocks into a defined sequence of process operations for the smart contract, a defined smart contract condition, a defined smart contract trigger, and/or a defined smart contract event.
15 . The non-transitory computer readable storage media of claim 11 , wherein transacting the smart contract onto the blockchain comprises:
writing the smart contract into the blockchain as metadata via a blockchain services interface of the host organization; and wherein the smart contract executes via the blockchain for one or more transactions occurring on the blockchain.
16 . The non-transitory computer readable storage media of claim 11 , wherein the instructions cause the system to perform operations further comprising:
extracting an event listener from the input received from the user, wherein the event listener monitors the blockchain transactions for defined events having a corresponding smart contract condition or smart contract trigger within the smart contract transacted onto the blockchain; and executing the event listener separate from the blockchain, wherein the event listener executes within the host organization and triggers a pre-programmed action within the host organization upon occurrence of the event within a transaction on the blockchain.
17 . The non-transitory computer readable storage media of claim 11 :
wherein the event listener executes within a Customer Relationship Management (CRM) platform of the host organization on behalf of a tenant of the host organization which is a participating party to the smart contract executing on the blockchain; and wherein executing the event comprises one of: halting a payment via the CRM system pursuant to a violation of terms or conditions defined by the smart contract executing within the blockchain or authorizing payment via the CRM system pursuant to fulfillment of all terms and conditions defined by the smart contract executing within the blockchain.
18 . A system to execute at a host organization, wherein the system comprises:
a memory to store instructions; a processor to execute instructions; wherein the processor is to execute a blockchain interface to a blockchain on behalf of a plurality of tenants of the host organization, wherein each of the plurality of tenants are participating nodes with the blockchain; a receive interface to receive a login request from a user device; an authenticator to authenticate the user device with the host organization; the receive interface to further receive input from the user device indicating a plurality of smart contract blocks; a translator to translate each of the smart contract blocks into a native programming language to form a smart contract to execute via the blockchain; and a blockchain services interface to transact the smart contract onto the blockchain.
19 . The system of claim 18 , further comprising:
a GUI manager to transmit a flow designer GUI to the user device; and wherein the receive interface is to receive inputs via the flow designer GUI indicating user selections of the plurality of smart contract blocks with a plurality of flow sequence, flow conditions, flow triggers, and/or flow event operations.
20 . The system of claim 18 :
wherein the receive interface is to receive inputs from the user device indicating the plurality of smart contract blocks comprises receiving an Apex input file programmed in Apex programming language; wherein the system further comprises an Apex block translator to parse a plurality of Apex defined smart contract blocks from the Apex input file; and wherein the translator is to translate the plurality of parsed Apex defined smart contract blocks into the native programming language to form the smart contract to execute via the blockchain.
21 . The system of claim 18 :
wherein the translator is to translate each of the plurality of smart contract blocks into a defined sequence of process operations for the smart contract, a defined smart contract condition, a defined smart contract trigger, and/or a defined smart contract event.
22 . The system of claim 18 , wherein the blockchain services interface to is transact the smart contract by writing the smart contract into the blockchain as metadata via a blockchain services interface of the host organization; and
wherein the smart contract executes via the blockchain for one or more transactions occurring on the blockchain.
23 . The system of claim 18 , further comprising:
an apex listener to extract an event listener from the input received from the user, wherein the event listener is to monitor the blockchain transactions for defined events having a corresponding smart contract condition or smart contract trigger within the smart contract transacted onto the blockchain; and wherein the host organization is to execute the event listener separate from the blockchain and trigger a pre-programmed action within the host organization upon occurrence of the event within a transaction on the blockchain.Join the waitlist — get patent alerts
Track US2019236559A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.