* working on the transaction API