Stripe and WeChat Pay for ESL Teachers – Interview with Arthur Marek

As an independent online language coach, one of your most important decisions will be figuring out how to accept payment from your clients. There are various options available. In this article we will look at Stripe and why it could be a great choice for tutors who have students in mainland China.

Table of Contents

About Stripe

What is Stripe?

Stripe is a US-based payment processing company that enables businesses of all sizes to accept worldwide payments. With Stripe, you can accept all major credit cards and debit cards. Stripe provides support for vendors 46 countries

Stripe pricing and features

The fees that merchants pay for each transaction vary based on the type of payment card and the location of the merchant. Stripe transaction fees start at 2.9% plus $0.30 per transaction for USA based businesses. You should check your local transaction rate.

Processing fees for Stripe are usually lower than PayPal or other card processors. In addition, the user experience is arguably better for the customer since they complete the entire transaction on YOUR website, rather than being redirected to PayPal’s home page to authorize the payment.

Stripe supports invoice pricing in 135 currencies and will handle currency conversion into your local bank account currency.

Stripe supports Strong Customer Authentication for European transactions, as required by law.

Creating a Stripe account

This section will provide you with steps on how to create a Stripe account.

1. Go to

2. Create an account by filling in your email address, password, display name or phone number, and preferred currency under the billing page during the sign up process.

3. Complete the verification requirements.

4. Wait for Stripe confirmation email.

Stripe payment gateway setup

The Stripe API keys are used to communicate with the Stripe servers in order to make payments and retrieve information. Stripe API keys are a unique pair of alphanumeric strings that will allow websites to interact with Stripe’s platform. There are different pairs of API keys for “Test Mode” and “Live Mode” transactions.

Stripe and China UnionPay partnership

China UnionPay is China’s only interbank network. It was jointly established by the People’s Bank of China, the Bank of China and the six largest commercial banks in that country. It is designed to unify all plastic cards in circulation in China into one card system.

UnionPay and Stripe announced their partnership on November 1, 2018 for USA based vendors. The two companies work together to give Chinese consumers the ability to pay with UnionPay and access Stripe’s platform and services.

In August 2021, Stripe announced that they had extended the ability to accept UnionPay to vendors in over 30 countries.

The list of UnionPay supported countries now includes the USA, United Kingdom, Australia, Canada, New Zealand, Austria, Belgium, Bulgaria, Cyprus, Czech Republic, Germany, Denmark, Estonia, Finland, France, Greece, Hungary, Ireland, Italy, Lithuania, Luxembourg, Latvia, Malta, Netherlands, Norway, Poland, Portugal, Romania, Spain, Sweden, Slovenia, Slovakia, Hong Kong, Malaysia, and Singapore.

If you wish to inform your customers that you accept UnionPay, it may be a good idea to display the UnionPay brand logo on your website, which you can download from the UnionPay International website.

How can I use WeChat Pay with Stripe?

WeChat Pay is a digital wallet for WeChat users. It was launched in 2014 to complement the existing app-based payment system. It is now one of the most popular mobile payment methods in China, with over 500 million users.

Users can make payments by scanning the QR code or entering the merchant’s phone number or online shop name into WeChat Pay. The funds will be deducted from their account balance, which they can top up at any time by adding money to their account through various payment channels such as Alipay or traditional bank transfer.

Stripe has an integration with WeChat Pay that allows Stripe account holders to send an invoice directly to a customer from their Stripe Dashboard, and have the recipient pay the invoice via WeChat.

To enable WeChat Pay on your Stripe account:

  1. Click on the Settings Icon on the Stripe dashboard (the “cog wheel” in the top right hand corner of your desktop screen).

2. Click on “Payment methods”

3. Click on the “Eligible” tab

4. Scroll to the “Requires Action” section and click on “Request access” next to the WeChat Pay option.

You may need to wait a few hours before being granted access.

Anecdotally, it seems like you should pay some care and attention to the name you choose for your business, when registering with Stripe, if you want to enable WeChat. Due to the “double reduction policy” in China which discourages foreign online teaching companies, you might need to be a bit creative with your business name. Something which doesn’t mention “education”, “tutoring” or “English” might be prudent, if the following Facebook post is anything to go by.

To learn more about how the Stripe and WeChat Pay integration operates, I interviewed Arthur Marek who has been using the Stripe + WeChat Pay combination extensively. You can connect with Arthur at his ESL website

Teacherpreneur Marketing



What’s your professional background? And what are you doing currently?

I studied computer science back in the day but changed to music and became a violin teacher for Devon County (U.K.) toured and recorded. Then I started teaching ESL as music was getting boring. I have taught English in Mexico, China, and Austria, but since the pandemic it has been online only, mostly in China. I am married to an EU citizen, and we live in Switzerland.

Can you explain what WeChat Pay is, and why you decided to use it?

We need to make a distinction between WeChat and WeChat Pay. WeChat is the main social network in China, and WeChat Pay is included in the many services within WeChat itself. I joined WeChat before teaching in Shanghai for two months and kept it running back in Europe to maintain contacts. WeChat Pay alone is only possible if linked to a Chinese bank account, and that is difficult unless you are long term resident there.

The game changer was when Stripe set up a connection with WeChat Pay, allowing non-Chinese residents to accept payments. I already had Stripe set up for local teaching in Europe.

When WeChat Pay is enabled with Stripe, can you send customers an invoice direct from your Stripe Dashboard, completely independent of any website you operate i.e., you don’t need to install any code on your website?

Yes, absolutely. That’s what I do for my current students.

How did you enable WeChat Pay with your Stripe account? Did you need to submit a request to Stripe via there Help Page?

No, I did not need to contact Stripe at any time. Your Stripe account has to be the business version, then it is just a case of following instructions to link WeChat. The system does all the rest. I should mention that I did contact Stripe once, unrelated to this discussion, and found them super helpful and competent.

What kind of details did you need to provide to Stripe?

If you have a Stripe business account and a WeChat message account, you link those in the Stripe dashboard once, then whenever you need to be paid from China you create an invoice and send it by email to your student. They then scan the code in the email with their WeChat Pay on their phone, and you have the money.

Did you need to have a Chinese bank account to use WeChat Pay with Stripe?


Did you need to have anyone in China “verify” you to use WeChat Pay with Stripe?

No, but you WILL need an account on the WeChat messaging app. I already had my WeChat account set up in China. I’m not sure how difficult it is for non-Chinese to create a WeChat account now. However, the WeChat messaging app is listed in all the App Stores so it should be possible. Your WeChat account is linked to a mobile phone number and although you can (and I do) use the WeChat message platform on my desktop and iPad too, my iPhone is essential to be able to log in.

What currency are your invoices denominated in? Are your invoices shown to the customer in that currency, or does WeChat Pay automatically convert the amount to RMB? Does Stripe convert RMB back into your “base” currency to pay you?

You have to do everything in your own currency, the payment systems convert everything automatically for the student and yourself.

Does the invoice appear for the customer in Chinese or English? Or do you need to manually create Chinese text on the invoice?

I have never seen the invoice that the students receive, but I assume it is in Chinese, with a QR code for scanning. The invoice I send is in English, with my currency in Swiss francs. You do not need to create Chinese text at any time.

How do Chinese customers pay the invoice? Do they need to open an invoice QR code on their desktop and then scan a QR code with their phone? How does it work?

It is quick and easy. They receive your invoice via email from the Stripe Dashboard. They open your invoice on some device, either a desktop, tablet, or second phone. It has a QR code. Then they open their WeChat app on a smartphone, click scan and “Pay”. Confirmed. Done.

How long does it take for the money to appear in your Stripe account and how long before Stripe puts it into your bank?

It appears almost immediately, then takes a few days before you can transfer it to the bank account linked to your Stripe business account. You can choose different pay out methods, manual or automatic.

Feb 2022 UPDATE: Watch the video by Tim Gascoigne, a.k.a. “The Online Teacher Dude” as he gives a complete walk-through of how to use Stripe & WeChat Pay.


Stripe is a popular, user friendly and convenient payment gateway option for independent online ESL teachers. Their recent addition of WeChat payment integration has made Stripe an extremely easy to use option for language coaches who have students in mainland China.

When you create a website account with BabelTEQ, you have the option to accept payment via Stripe (including UnionPay, depending on your vendor location).

You can also enable a “Send Me an Invoice” option which will allow you to accept the student booking, then follow up with a WeChat Pay invoice from your Stripe dashboard.

Tips and Tools Newsletter

Don't miss out on our latest actionable advice posts for solo online ESL teachers. We never spam.

Share with me

Scroll to Top