This is actually similar to hedging transactions. In order to avoid unnecessary losses caused by exchange rate fluctuations, when signing a contract, we should reach an agreement on the exchange rate and buy (or sell) equivalent currencies in the foreign exchange market.
So I personally think this should be a financial asset, not a liability.