Package transactions for signing

hello @fabrice please how do I convert a transaction object to a transferable format so I can sign it on another machine
e.g
convert this in python to a dict or hash:
PaymentTxn(sender_addr, self.params, receiver_addr, amount, note=note)

then build the transaction from the hash or JSON in javascript

edit:

I remember seeing PaymentTxn.dictify(), i wonder if this works

The best way is to do what ARC-1 is doing for encoding: base64 of msgpack of the transaction.
See reference implementation at the bottom of ARC-1: Algorand Wallet Transaction Signing API
(it’s in JS but can be adapted to Python)

thanks @fabrice

I’ve seen what I was looking for, I went to the base Transaction object and found the dictify method