By Benjamin Fuentes

Account abstraction has opened the door to programmable money. Recent work on the coming TZIP-27/28 is paving the way for new use cases.

Manage your crypto like you manage your bank account, recover a lost or stolen device holding your savings, or pay your monthly phone bills, all are common services provided by your bank.
This costs some bucks every month, without forgetting that the bank has a debt against you and can seize it at any moment during a financial crisis (remember Cyprus in 2013)

What are we talking about?

We are in 2024, everyone is multi-device, your phone has a secure enclave and you do Biometrics payments every day. If you have a problem, just call your bank or use whatever Google recovery mechanism, you feel safe!        

But what happens if one of these services is down or becomes evil? Just pray it does not happen.        

Ready for a non-custodian solution? Ok, fine, but which services?

Account management

The ability to enroll any device that can sign transactions

  • Enrollment: add a new address to the smart contract wallet. I can be one of our addresses or from any other person. In this scenario, we call it a "shared account"
  • Revocation: remove an address from the smart contract wallet because a device can be stolen or lost
  • Asset recovery by a third party: It can happen for 2 reasons :
    • The owner has lost the devices, or someone stole it
    • The owner is dead or unable to act

Global rules

The ability to fine-grained control of your assets

  • Spending limits: modern accounts have all quota because hacks happen and an unsolicited debit call could be made. Centralized banks are not always responsible for reimbursing the client. But in some countries, they have to do it, and so, spending limits are a protection for banks to not lose too much money          
  • Direct debit mandates: direct debit mandates are an important feature of a bank account. It helps you to pay regular approved bills without any action from your side. On the other side, if these authorizations are hacked (for example if someone steals your CB and does NFC payment) then it is a real problem. This feature is important because it makes your account non-interactive, and as so, you can pay as you go on a game without explicitly needing to validate each transaction one by one          

Is it available on Tezos?

Soon ... =D

Watch the demo here and get ready to deploy yours !!!


A (preview) implementation is available here.

If you want to know more about Marigold, please follow us on social media (Twitter, Reddit, Linkedin)!

Scroll to top