I could successfully create an escrow transfer operation through the SoodalPay app.
This is the result of the escrow operation.
Transaction 88eda7fd2d84f25afa8648de96a647ab590d5cbb
$ curl -s --data '{"jsonrpc":"2.0", "method":"condenser_api.get_escrow", "params":["soodalpay", 1727571480069572], "id":1}' https://api.steemit.com
{"jsonrpc":"2.0","result":{"id":305,"escrow_id":2489632196,"from":"soodalpay","to":"soodalpay","agent":"etainclub","ratification_deadline":"2024-09-30T09:58:00","escrow_expiration":"2024-10-01T09:58:00","sbd_balance":"0.000 SBD","steem_balance":"0.010 STEEM","pending_fee":"0.000 STEEM","to_approved":false,"agent_approved":false,"disputed":false},"id":1}%
I used the sendOperation method of the steem's broadcast.
For my app, I use the dsteem library to communicate with steem blockchain.
This is how I implemented the function in dart.
final escrowTransferOperation = EscrowTransferOperation(
from: from,
to: to,
agent: agent,
escrow_id: escrowId,
sbd_amount: sbdAmount,
steem_amount: steemAmount,
fee: feeAmount,
ratification_deadline: ratificationDeadline.toIso8601String(),
escrow_expiration: escrowExpiration.toIso8601String(),
json_meta: jsonMeta,
);
final operations = [
['escrow_transfer', escrowTransferOperation]
];
final result = await _dsteemApi.sendOperations(
operations: operations,
wifKey: activeWifKey,
);
the _dsteemApi is my custom api class to handle dsteem methods.
Creating an escrow transfer works!
The response of the operation that I just created show this info:
STEEM","to_approved":false,"agent_approved":false,"disputed":false}
Which means the escrow has not been approved by the seller nor the agent.
Posted through the ECblog app (https://blog.etain.club)