Dr. Monzer Kahf, a prominent Muslim economist and counselor, answers: In currency exchange two conditions are necessary:
1-If you change large units for small units of same currency (e.g., 100 dollar bills for one dollar bills) the total amount must be the same; and,
2.The exchange must be on the spot, i.e., delivery of the two currencies must be made at the time of the contract.
This means: a) Exchange of Euro for Dinar can be done at any price agreeable to the two parties as long as there is no cheating or big deviation from the price that prevails in the market. When government sets prices for transactions that run through central banks you have to abide by that price only when you have to go through the central bank. Does it mean other prices, such as parallel market price or a black market price, are permissible if you can avoid the central bank? Yes they are permissible.
(b) Delivery must be at the time of contract, you cannot delay any part of the payment of either currency for any time, even a few hours. But when such an exchange is done between countries and if the procedures of the transfers take some time (e.g., a few days), the transaction is still considered as happening on the spot, provided that you do not incorporate any intended delay in the procedure. Hence, you ask for immediate transfer and immediate charge to your account or you pay cash and any procedural time consumed until the other party receives the other currency in the other country does not violate the principle of immediate delivery.