Smart Contract transactions


I know that transaction are irreverseble and many people had problems with sending funds to a wrong address.

Would it be possible to have a smart contract(?) transaction which can be reversed within a certain timeframe? Maybe for higher fees?

If possible this would be a nice addon for newbies and high amount transactions.
Maybe I got the whole idea of smart contracts wrong or they had the idea already, but voted against it.

Any infos on that?



Encrypted transactions are something that cannot be done and are irreversible once a successful transaction is made

1 Like

I know that it is irreversible, thats why I am asking if it would be possible the make a “smart contract” transaction with the possibility to do so within lets say 5 min

1 Like

is this the wrong place to make such a suggestion?

1 Like

I think it can be done, what do you need it for?

It is a suggestion for the Cardano network to implement it, because imho this is a problem for mainstream adoption. When DeFi and so wants to have a mainstream adoption, no one wants to hear “your money is gone, because its a wrong address” or so.
Mistakes happen and those have to be addressed too, if mainstream adoption is the target.

And banks can do it too, so the mainstream would expect it from DeFi too. If we want to be an alternative, we have to offer a quite similar product.

think its a nice thing if you can reverse a transaction by a smartcontract 1. 100% higher fee then normal send, timelock on the transaction say… max 3 days.
need a specialist here to explain this if it can be done or not🤔

1 Like

I believe that later will do this, now is not able to do things that

Why not now?

This has a lot of factors, the cost is too high, or can change it things have not received this opinion, and is that you do such a thing, you need to change the world’s computer so a record, all need to find a way to solve

to me it doesn’t seem that complicated, it should be possible to have a notification of a pending transaction on both sides, and the time of reversal can be removed immediately for another extra fees and then the funds are free to use for the otherside

kinda like gas fees, which can be changed while pending, so it should be possible to change a smart contract transaction

Its possible. Send the tokens to a timelocked contract, that knows the reciever.
In the “timespan” you can still reverse the contract (pay some fees). if you do nothing, the contract will send funds on to reciever. maybe driven by blockheights or sth.

1 Like

would be nice to have something like that, because everytime I send some larger amount or to a new address, I am having a heartattack.
I know, that I should send a small amount first to test it, thats what I am doing, but still. Might be usefull in the future, with mainstream adoption

1 Like

We are now better off just copying the address so your heart doesn’t beat faster lol

with a simple spending script rule you can
a. have the sender beeing able to retrieve funds of the contract until blockheight x = 2000
b. have the reciever beeing able to retrieve funds of the contract starting from blockheight y+ 1 = 2001

but i dont know, its nearly the same as you didnt send the funds to the reciever, cause the reciever has no access until a given “time” measured in blocks/epochs.

1 Like

In my country, there is also the possibility to reverse a bank transaction for 90 days, so some companys ask for a unreversible transaction conformation, So this would be a real world usecase, additionaly to the safety measurement. If the DeFi wants to be the better product, it should offer similar products.

also, more importantly is, that the receiver sees the transaction, so that the sender can have a conformation, that every thing is done right. Safety first, and then when everything is correct, either waiting for the time or pay gas fees to finalize it.

its about mass adoption, and mistakes always happen, so an additional safety measurement is imho always welcome
i know, that there are plans like ADAhandle to make the transaction process easier, but still where human beings are at work mistakes always happen.

I’m not sure I understand this correctly, but it sounds good. For peer to peer transactions, it would be great if an action were required by sender and receiver, much the same way Interac eTransfers work. If you send an eTransfer to the wrong address the money is not lost because the receiver must deposit the money for the transaction to complete. Is there an equivalent protocol available to crypto users whereby both sender and receiver have to sign off on the transaction before it is completed? In the case of a failed transaction, the funds would simply revert to the original holder.

1 Like

oh wow, that would be perfect for eCommerce in combination with an oracle:

  1. customer shops only and buys multiple products and makes a smart contract transaction. the cost and each product is send to an oracle.
  2. the oracle splits the amount of the smart contract transaction into each product. Seller gets the notification of the amount of the transaction as pending transaction and therefor sends the purchased products
  3. customer receives the delivery, so a notification is send to the orcal → 14 days sale or return starts + notification the seller trough the smart contract.
  4. customer sends 3 products back, notification to the oracle → 14 days sale or return ends for those products and waits for comfirmation of the seller
  5. 14 days past → the products bought by the customer can’t be return anymore, so the amount of those are not pending anymore and will be transfered to the receiver
    5.1 the returned products are accepted by the seller, and the amount gets returned to the buyer

benefits: only one transaction which handles the whole purchase

1 Like

I don’t really see the benefit compared to traditional fiat payment systems, maybe even some drawbacks.

If the buyer just lies about not having received the products or the seller about not having received the returns, the whole thing implodes.

You could include the delivery company telling the oracle that it really delivered a package in one or the other direction, but that still would not prove that the products were really in that package (and that they were in the required condition).

In traditional systems (say, Paypal), we can have policies on levels of proof needed to dispute a transaction and if it is worth the effort we can allow escalation to official courts of justice, which can then set the bars for proofs of what really happened higher.

I don’t really see, how we can solve all that in cryptocurrency software or smart contracts without basically rebuilding this reliance on external authorities, which begs the question: Do we really have an advantage here or could people just continue using Paypal etc. in Dollars and Euros?

The buyer can always lie about not having receive the products, I don’t see the point here.

And where I life, we have to sign to the delivery company that we have accepted the package. So anyway it would get to the point, that the delivering company has send the information. And also thats why we have a 14 days sale or return warranty, so the customer can assure that the procducts are as wanted.

I don’t see the problem in relying in other “authorities” and here the opposite is the case, when 2 enities are in conflict, an external “authority” is the best thing to rule this out. Each side would try to get the best for itself.

the advantage is clear: if I send a product back and it is accepted by the seller. I don’t have to wait till the banks refund it. Which can take the whole weekend or more. The higher the amount of the purchase the better

And even more is possible: if one of the trading parties is not satisfied, there would be the possiblity to freeze the amount. So no one could run off with the money. And with an dID from legal authorities like the court. The amount could be send to the entities according to the judgment of the judge.

benefits: no one could run off with the money