Odoo 16
Exchange rate differences are only calculated when a Vendor Bill in a foreign currency is paid on a date that is not the date when the Vendor Bill was recorded.
Example:
- Company currency is USD
- Bill recorded of EUR 15,363.53 on June 1st
- Payment recorded of EUC 15,363.53 on June 30th
When you use the payment for the Bill, Odoo will compare the $USD to EUR exchange rate it had for the 1st and the 30th and book a gain or loss automatically for you. This is based on the Exchange Rate service that you choose in Settings:

Since Odoo doesn't know the exchange rate your bank will use, this is an estimated gain or loss.
ie: For a payment of EUR 15,363.53, Odoo may calculate a $USD equivalent of $16,524.46 on the date of the Bill and another $USD equivalent on the date of the Payment.
When you receive your bank statement, your bank will show the actual $USD needed to pay for the EUR payment, and you will reconcile this actual amount of $USD with the estimated $USD that Odoo calculated.
ie: Bank charged $USD 16,538.00 to send a payment of EUR 15,363.53, a difference of $13.54
Odoo will automatically book the gain or loss to the configured Gain and/or Loss Account configured in Settings:

Note: If you don't supplement the information provided by your bank by entering the foreign currency amount on each statement line to let Odoo know how many EUR each USD payment was worth, you will need to choose the account each time. Reconcilation models can give you single click to post the difference to the 'gain' or 'loss' account.
Summary
Odoo will record the "estimated gain/loss" based on the differences between estimated exchange rates when the Bill is paid.
Odoo will record the "actual gain/loss" based on the exchange rate your bank uses when the bank statement is reconciled.
You don't need to create any other entries as both entries are automatically created for you.