I have an issue with how it works. Let's see typical situation: alice is buying something from bob on amazon. The client interface takes care of sending escrow_transfer_operation with amazon as agent when the purchase is made, proper fee is deduced from payment's total, server automatically approves the escrow from agent side. In most cases some bot will also approve it in the name of bob, only in selected cases bob might need to manually approve it (f.e. alice wanted her initials embroidered on the skirt she is buying, which requires some back and forth messaging to iron out the details first).
So far so good. bob sends the purchased item to alice, registers package tracking info with Amazon so they can see if the package arrived. But once the item is in hands of alice, it is pretty much all from her standpoint. She might have a problem, f.e. it was supposed to be a salmon skirt, but she got coral one, in which case she might contact bob and get a discount (bob releases some funds back to alice), but in most cases, when everything is ok, she has no incentive to release funds to bob. It is unnatural even to expect her to do anything. So bob is left with one choice only: to open dispute and wait for amazon to give him the funds. And he has to fit within escrow_expiration, because if he does not, alice could snatch back the payment before he does. But that's not the intent of opening dispute. The transfer should automatically complete by sending remaining funds to bob when there was no dispute prior to expiration.
she has no incentive to release funds to bobThen in case case, bob having an issue with the transaction (alice refuses to pay) can issue aescrow_dispute_operationleaving the matter to amazon to solve (eg: pay bob).And he has to fit within escrow_expiration, because if he does not, alice could snatch back the payment before he doesNo if there's a dispute, expiration no longer counts and the agent has infinite time to figure it out. If both parties can't come to an agreement, the funds will stay locked forever.But that's the whole point -
alicedid not refuse to pay. **From her perspective she already paid. ** Escrow transfer should default to "all is ok" when it is not disputed. Currently natural behavior when client is just shopping forces shop to open dispute in each case, adds unnecessary work to agent, which increases fees, and can also desensitize agent leading to wrong handling of actual disputed cases.oh incentive in thaaat sense, sorry I ment I thought incentive like morals as in "nothing makes me want to pay".
Yeah I agree with you and @gtg it's not great :/
I agree with @miosha that the current flow is ridiculous for retail-style purchases.
After approval, the buyer has no incentive to send a release tx. The seller can’t self-release before escrow_expiration, so in practice they either wait for expiry (and then self-release) or open a dispute just to get paid, which burdens the agent even when nothing is wrong.
For ordinary purchases, the expected default should be: if nobody disputes within the inspection window, the funds settle to the seller automatically. An opt-in "auto-release to seller at escrow_expiration if undisputed" would match user expectations while preserving the current dispute protections.