In the bitsquare white paper description, the payout transaction is not working as described.
When the seller has received the fiat currency in their bank, he signs the payout transaction which is published to the Bitcoin network (clicks ‘confirm payment received’) and is supposed to receive their deposit back.
This doesn’t happen.
What appears to be happening is that the buyer has to manually confirm that the seller has sent that confimation as well. ONLY then is the sellers deposit refunded!
That last confirmation by the buyer seems like a completely redundant step in the contract (from the seller’s perspective). This is because the deposits and Bitcoin were already signed for at the START of the contract!
Obviously, if the seller has received the fiat currency (and confirmed that he has received it), the seller’s half of the contract is fulfilled, so there is no need for the buyer to have any more involvement in it.
As I have found out in practice, if the buyer does not manually confirm the confirmation sent by the seller, then the seller’s deposit is hanging in limbo at the escrow address ad infinitum until the buyer acknowledges receipt!
I know it seems weird that the buyer would not confirm receipt of the confirmation and in doing so release the Bitcoin to his wallet, but this is what’s happening in my case.
I can only think of one reason why this last redundant step would appear to be necessary, and that’s where the buyer manually chooses where to send his Bitcoin to after hitting confirm, but that could have been included at the start of the contract i.e. at which address to receive the Bitcoin payment and the deposit refund.
All that is actually needed is for the seller to hit confirm at his end to trigger release of the deposits and the Bitcoin to the buyer.
Proof that the transaction was completed would be in the Bitcoin blockchain of course. This, again, makes the buyers manual confirmation completely unnecessary.