Recent HostBill releases give your customer the ability to use payment gateway, even if it does not support currency the invoice was issued in.
How it works
If gateway supports only some currencies, by default customer using unsupported currency will not be able to see this gateway in payment methods. When background conversion is enabled in gateway configuration, customer who wants to pay in unsupported currency, will have amounts sent to and from gateway automatically converted to target currency set in settings.
With settings above, if customer have invoice issued in EUR he/she will be able to use Authorize.Net, with amount to pay automatically converted to USD.
Background Conversion is per-gateway setting. You can enable/disable it for some gateways.
If you wish to convert amounts to currencies you normally do not want to offer for your customers, make sure to Disable such currency in Settings → General → Currency & Tax Settings → Currencies Sample scenario: You wish to use Authorize.net, that only offers USD, but you do not want issue invoices in USD, only EUR. In this scenario you need to:
have EUR added as your currency (main or additional)
have USD added as additional currency, but set as not-enabled: