This article gives you more information on pricing in foreign currencies, for merchants with WooCommerce (Wordpress) integrations.
More info here : https://docs.woocommerce.com/document/shop-currency/
Due to South African Reserve Bank restrictions, the primary currency needs to be set in the local currency (ZAR) - since legal entity and operations are SA based.
There are currency converter plugins that you can install to display your customers' local currency, based on their location. However the woocommerce store currency needs to have ZAR as the primary currency, to feed the payment data in Rands to the bank for processing.
Also to note : the amount that will be charged would always be slightly different to the expected, since different banks / card schemes use different rates and may also levy additional charges on the customer.
We have merchants who have used currency converter plugins for woocommerce successfully to do the currency switching. We do not provide support for this plugin and since we have not tested it extensively ourselves, we are not able to give any conclusive insight on capabilities and restrictions.
That being said, we are not aware of any merchant difficulties regarding the used currency converter plugin so it should work for your purposes as well. We'd recommend that you test the plugin out fully to ensure it works as you need it to. Generally, all plugins that are compatible with Woocommerce work fine with our Peach plugin. We will keep you updated on plugin updates to accommodate this, should the SARB restrictions change on this issue.
The other option would be to set up an international PayPal account or a South African PayPal account to handle the USD payments since we are able to offer PayPal as a payment option on our systems.
Once the PayPal account is setup, you can offer PayPal as an option to your international customers. In South Africa, PayPal is administered by FNB and it tends to be relatively expensive to offer as a payment method.