Smart contracts in Cardano for financial services

Hello guys,
I want to discuss if it´s possible to create an smart contract which works similar to a standing order. I want clients to buy my monthly subcribtions per smart contract on a blockchain.

So my questions are:
Is this possible on Cardano (which functions are possible)?
How can i connect a smart contract to the “real world”?
Is anyone interested in starting such a project with me?
Any other ideas related to that topic of financial services?

Greetings
Sven

2 Likes

I am exploring the same angle of use (subscriptions via smart contracts). So far I haven’t found anyone who could explain how this could be done.

I wish I could help but I’m just starting to play with Cardano smart contract testnets. If you have similar code in Ethereum Solidity, you can test it on Cardano KEVM. Solidity is a popular smart contract language that is more readily available and it should work on the Cardano KEVM.

Yet another reason we need contracts over time

1 Like

Marlow could be used for that purpose …

2 Likes

The question here is what do you want the smart contract to actually do? The client is the one paying and sending the money monthly, and the SC can validate whether they paid on time, but then what is it suppose to do if they don’t? It’s more your wallet/UI around it that does all the work to let you know if you’ve been paid on time.

Tokenizing monthly subscriptions of your service is the more interesting use case in this realm, as it does actually add a whole new level of possibilities rather than just a different system for tracking monthly payments.

3 Likes

You could have contracts evolving over time giving bonus for loyalties and it will help with tracking data (as two out of many examples) but yeah tokenizing also offers new things or easier use.

The smart contract actually is not that difficult to define as parameters … or as should behave

How ready is Marlowe? Examples and documentation are not easy read.

If the client doesn´t send the money in time the service is cancelled completly or paused.

Which advantages does tokenizing offer to me? Which new features are possible?

Thx Sven

Yes exactly the contracts should evolve over time and giving bonuses to the customer.
Is this possible yet?

Possible? Yes. Implemented? Not sure.

Via Oracles, who have the strong incentives to be honest & trusted when providing your contracts external (non-Blockchain) data. Financially incentivized.

But it’s always better to push down data from the “real world” to the Smart Contracts. Call out to the “real world” from a Smart Contract is very tricky and not sure what Cardano will support. It could be done again via some specialized Oracle, as due to the decentralized nature of the infrastructure you would have that call out multiple times from each node that executed your Smart Contract and they would need a deterministic response (at least today, some research is done for non-determinism, also random numbers), have multiple calls (issue in case of non-idempotency) and have the call before consensus is risky in case of disagreement between the nodes (two-phase commit needed).

Smart Contracts doesn’t activate themselves, you have to activate them.

Nevertheless you can have cross-chain (side-chain) transactions soon between various Blockchains (even public to consortium).

Note that Blockchain doesn’t have a sense of time, just block numbers. However as every block is calculated at 20 sec (?), you can calculate date time for block number.

2 Likes

Marlow is not ready yet afak but you could try with what already exists ( just for your orientation )
Visit the testnet website of IOHK and you will find marlow testnet to play with …

In my opinion you could something with what already available

Marlowe seems really promising and yes I would like more documentation as well. But from my understanding they are focused on financial contracts and financial information transfer. So say a contract with some service provided perhaps is not suited for Marlowe? (? since I do not really know the capabilities and scope of Marlowe.)

You can do it like that using Marlow …

each person who makes a commit of a certain quantity of ADAs ( known and set by you ) then the contract show an id of the transaction, this id could be used next to have access to the info/ service that you are providing

If, let’s say someone that already paid last month ( for example ) and didn’t pay the current month so the ID of the transaction as is unique for each transaction won´t work unless they do the payment getting the new ID of the transaction

or
as using the hash of the transaction cant be known prior to the payment ( and also this process would be painfully inefficient ) i suggest to do this
If the commit ( of money ) is valid, the smart contract would eventually show a code … this code is somehow a pin to access your info/services

with Marlow i think you could do that

Then on a website you can set the code of valid commit in the smart contract as a pin to access wherever your offering …

I have a couple of project for Cardano Blockchain ( so so so complex ) but i m very curious if you want you can email me, if just for brainstorm cool by me

2 Likes

I have a lot of faith in Marlow, in my opinion, is truly game-changing application as it opens smart contracts to non-programmers and the idea is just too appealing … let’s see

3 Likes

Is a currency conversion oracle feasible? So for example a smart contract could be denominated in dollars to reduce volatility. It would calculate the value to be paid out in dollars and then query a currency converter oracle to get the current exchange rate so the required amount of ADA could be paid out.