1) refactored the link between the other account in a transaction
and its metadata
2) added validation check before saving records