How A Little Known Feature Of Steemit Created A Huge Confusion - And When And How You Should Use Me As An Escrow Agent

in steemit •  11 months ago

The Steemit blockchain is full of surprises. One of them - and I'm talking about real-life, verifiable features here - is the escrow capability. In layman terms, if you want to make an exchange on the Steemit blockchain and your counter party doesn't trust you (or you don't trust him or her) you can trust the funds involved to a third party, called an escrow agent.

If you don't know what an escrow agent is, I prepared a little quote for you from Investopedia:

An escrow agent essentially serves as a neutral middleman in the context of an escrow agreement. An escrow agreement is a contract between two parties whereby they agree that a third party should hold an asset on their behalf until their transaction is completed. The funds or assets are held by the escrow agent until it receives the appropriate instructions or until predetermined contractual obligations have been fulfilled.

The most important part of that quote is: "until it receives the appropriate instructions or until predetermined contractual obligations have been fulfilled". And out of that snipped, the most important word is "predetermined".

The Story

Yesterday I was offline almost the entire day. I traveled by car, and, because there is some sort of holiday here in Romania, the traffic was absolutely horrible. A road trip that usually takes under 2 hours took me more than 6. Add to this extreme heat and the serendipitous lack of air conditioning in my car, and you get a nice picture of my Friday afternoon (and a good part of the night).

During one of those gazillions stops in those endless car queues, I checked my Steemit feed and, out of nowhere, I got a reply to one of my post saying that I have to supervise a transaction. In my 20 something years of being on the Internet I heard tons of horror stories that started like this. So I was quite worried.

Once I got to the destination and I got a little bit of internet access, I immediately checked all my other communication channels: mail, text, etc. I had a direct message on Steemit chat, related to the same phantasmagoric transaction, a hangout invitation from a person I never heard of in my entire life and another comment on Steemit about the same transaction.

After checking my wallet history, I saw there was a transaction calling me in the role of escrow agent, but I knew absolutely nothing of it The sum wasn't big, around $100, but still relevant.

So, I answered immediately on Steemit that I know nothing about any transaction and waited.

A day after - meaning today - I got a reply to my comment saying something like: "But you are an accepted escrow agent listed on Steemit".

Well, of course, I am, I applied to that position very soon after some guys from Golos implemented this feature, but that doesn't mean I can accept any transaction, without knowing anything about it.

I didn't mention any of the names involved in this situation (although the astute Steemit blockchain user can easily find who they were, just by carefully perusing a block explorer) because one of them is quite a veteran here (he's here before me). But, given the nature of Steemit, that account may not point to the same person anymore. The account may have been sold (which, given the nature of Steemit, again, namely the fact that an account is literally worth some money, happened quite a lot in the past, and it still happens).

I didn't investigate further, and I prefer to live under the assumption that this was a huge mistake, and people were well intended - but not very well informed - about the entire nature of escrow.

Which brings me to the second part of this article:

When And How You Should Use Me As An Escrow Agent

So, if you do want to make an escrow transaction on the Steemit blockchain, I can function as an escrow agent, provided that:

  • I personally know both parties involved (or if I don't know them personally, I need proof of identity, keybase will do, for now).
  • I know the details of the transaction: who sells what, to whom and under what terms. It's the predetermined word from the definition of an escrow agent above.
  • I am announced about this intention in a public way: a comment on Steemit before the actual transaction is set to take place will also do it.
  • the escrow transaction is set to take place after more than 7 days from the moment I gave my accept. The reason for that is that any piece of content on Steemit becomes immutable (non-editable) after 7 days. So if the transaction is set to happen sooner than 7 days, there's a consistent chance that the content pertaining to that transaction may be changed (the transaction itself cannot be changed, but its terms may be).

With that being said, please pay attention to what you're trading here, and what type of transaction you choose. Make sure you know at least how escrow works and be aware of each escrow agent rules.

I'm a serial entrepreneur, blogger and ultrarunner. You can find me mainly on my blog at Dragos Roua where I write about productivity, business, relationships and running. Here on Steemit you may stay updated by following me @dragosroua.

Dragos Roua

You can also vote for me as witness here:

If you're new to Steemit, you may find these articles relevant (that's also part of my witness activity to support new members of the platform):

Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!
Sort Order:  

Being the middleman is probably the worst. Especially if you are pulled into doing it without knowing it haha
I guess there should be some sort of system where the agent can review the case before getting involved but I guess that wasn't the case for this instance
Thanks for teaching us about escrow agents. I didn't know we had them on steem. Does a fee get charged if you use someone as a middleman?


Not necessarily.

Great story, sorry for the heat and traffic.I too had no idea that there's an escrow feature on steemit. I guess we learn something new everyday. Steemit is an amazing platform :)

Hi, Dragos,

Quite an interesting surprise to receive in the middle of traffic! :O

I'm just looking at this superficially, but if escrow transaction terms are somehow tied to the arbitrary 7-day edit period, there's a problem. That period was changed (arbitrarily!) at HF17 from 30 days to 7.

Further, my understanding is that the blockchain is immutable, and that edits only and always occur as a supplementary record of changes to the original file.

And so, it doesn't make sense to me that you would put a 7-day waiting period on an escrow transaction, because the "original" terms of the agreement should always be permanently recorded and viewable on the blockchain?




You're right about that 7 days window being arbitrary, hence changeable in the future. You're also right about the records being there immutably from the moment they're validated.

But as of right now the public Steemit interface is the most popular way of consuming this blockchain and I'm choosing the easy way. Of course I can drill back in the blockchain by using a block explorer or some API, up to the moment of the initial terms and prove there was an initial structure of the trade. But what I'm more interested in is the fact that the terms are agreed upon and there is at least a certain amount of time between the moment of announcing the transaction and its closure.


Of course! If you're going to act as an escrow agent, you ought to have the courtesy of some advance notice and be allowed a reasonable time in which to evaluate the situation and decide with direction to release any assets...

It seems to me that what we really could use here on Steemit would be some kind of "automated" coded escrow mechanism similar to that used on ?

BTW, could you possibly point me in the right direction to begin learning what tools and development environment I might need to set up in order to do some Steem blockchain access programming?

Thanks, and Cheers!


I think you should first decide which APIs do you want to use, JavaScript, Python or anything else. Then you should start perusing github for finding the most updated and alive tool and start implementing that one. The Steemit ecosystem is very young and most of the documentation is in code.

This is the second time somebody asks me about that, so I might start a series of tutorials about it.


Thanks for the suggestions...

Yes, a series of tutorials would be very welcome... ;)

Pssst...Hey, buddy.... I got this great opportunity for you. Come on down this dark alley and we can talk about it.


Ok, I'm game. Just lead the way, I will be right behind you.


Ah... I see you've played knifey spoony before!

hi @dragosroua
that it a realy good post and i wilk go to all the link that you post you give there a good informasion
and i wuld love to read all your stuff so thank you so much for that and keep it up man
have a nice week

the surprises and features just keep on coming on Steemit huh?
These services may become quite useful in the future.

Once the communities kick in and bed down a bit, I can see a 'financial services' community springing up quite early on....

Thanks for telling about this incident it must be horrific at first for sure