Magento did not allow this in older versions, as a 'hack' then created Website Pricing. You create a new website & store, and assign the prices in the website currency at the product level, that is the technical theory. The problem is when you come to use it as a business, exchange rate amounts at the website pricing level are not automatically updated, you need to manually or via a script maintain the prices, among others. If you have 5,000 products and 3 website currencies and one supplier currency then you need to perform 10,000 product updates per night to reflect the exchange rates -or- let the exchange rates slide. If you have multiple supplier currencies then it will make your head spin.
So we used a third party architecture on top of Magento which integrates all this together, plus DDP pricing, cogs and others. The primary issue is this, what you want is effectively what platforms such as Hybris, ATG, WebSphere provide. There are some extensions floating around you can try but you will find that as currencies and pricing is embedded deep in the core, any tiny change or difference in requirement will break the pricing.
Yes you can 'hack' it at the PayPal call, we did this years ago, but you will find your accounting being messed up and fx anomalies. The simple answer is, if you have to code anything in Magento you will cause either business issues or break the pricing - in the end this is 70% a business problem and 30% a technical problem.