The currency displayed on the payment form for WeChat Pay payments must be one of the presentment currencies available for WeChat Pay (as of Feb 25, 2021, currently: AUD, CAD, EUR, GBP, HKD, JPY, SGD, or USD).
For example, if your Stripe account is registered in the US, then the payment form must show USD. If in Hong Kong, then HKD, and so on.
If you're using Stripe Connect, the currency is pulled in automatically and your payment form will display it accordingly.
If you're using the API, the currency of your Stripe account is not detected, and you will have to manually enter the currency in the shortcode. If no currency is entered, the default is USD, but it won't work if your Stripe account currency is registered in any other country besides the US.
Obviously, if the payment form displays a currency other than CNY/RMB, this will lead to a bad checkout process for Chinese customers who will wonder: "Why is it in USD and not in RMB?" To solve this problem, we created an integration with a free currency conversion API, which you can setup in the plugin settings. This API integration will allow you to convert the live amount on your payment form (in whatever currency your Stripe account uses) to display the approximate CNY/RMB equivalent on the front-end for your customers.
Regardless of the currency conversion API, WeChat will convert the payment amount to RMB or CNY when the customer goes to the next step of the payment process after clicking "Submit Payment" and scanning the QR code with WeChat.
This process is a bit complex due to Stripe restrictions. If you have any further questions on this , please contact firstname.lastname@example.org.