How does Ripple handle exchange between different currency units?
Path search messages specify both “pay” currency units and “receive” currency units. If they are different, then any node that receives the message and has accounts in both currencies can perform the exchange at whatever rate it chooses. The payer can then decide whether to accept that rate or search for more paths. Ripple also allows accounts to be temporarily converted to different units for single transactions at pre-arranged exchange rates if both parties to the account agree.