Which permissions to tick, and why each one is needed. A read-only key will not work — GoCushy has to create charges on your account, so the key needs write access to payments.
Go to Account settings → Developer → API keys, then Create API key.
Airwallex shows you a Client ID and an API key. You'll paste both into GoCushy.
The API key is shown once. Copy it before you close the dialog — if you lose it you'll need to create a new key, and re-connect in GoCushy.
2. Tick these permissions
Airwallex groups permissions by area, each with Read and Write. Here is exactly what GoCushy calls, and what it's for:
Permission area
Read
Write
What GoCushy does with it
Payment Intents /pa/payment_intents
Read
Write
Creates the charge for every purchase, and reads it back to confirm the money actually moved before marking an order paid.
Customers /pa/customers
Read
Write
Needed for subscriptions and one-click upsells — the buyer's saved payment method belongs to a customer record.
Payment Consents /pa/payment_consents
Read
Write
The buyer's mandate to charge again later: subscriptions (merchant-initiated) and one-click upsells (customer-initiated).
Refunds /pa/refunds
Read
Write
Refunds you issue from your GoCushy dashboard, full or partial. Easy to miss — see the warning below.
FX / Quotes /fx/quotes
Read
Write
Only if you sell in more than one currency. Locks a rate so the buyer sees a real price in their own currency.
Webhooks
optional
optional
GoCushy never creates your webhook for you — you add it by hand (see below), so this permission isn't required. Harmless to leave on.
Simplest option: if your Airwallex account is your own and you're not splitting access across a team, Read All + Write All is fine and saves hunting through the list. Airwallex doesn't offer narrowly-scoped keys the way some processors do, so most people do this.
Don't skip Refunds. A key with charges but no refund permission connects perfectly and works for months — then fails the first time you try to refund a real customer, when you least want a surprise. Tick it now.
3. Live or Demo — pick the one that matches your key
Airwallex has two completely separate environments with separate keys. GoCushy asks which one you're connecting:
Live — real payments, real money. This is what you want in production.
Demo — Airwallex's test environment. Useful for trying things out, but orders will be marked paid on money that doesn't exist, so don't leave a demo connection in place on a checkout you're actually selling from.
Live keys won't work against Demo and vice versa — GoCushy validates the key the moment you connect, so a mismatch fails immediately rather than silently.
Live and Demo are two separate Airwallex accounts with separate logins, separate keys and separate API hosts — api.airwallex.com and api-demo.airwallex.com — and a Client ID and API key created in one never works against the other. GoCushy verifies the credentials against the host your Environment select names, before it saves anything, so a demo key submitted as Live is rejected on the spot with "Airwallex rejected these credentials — check the client ID, API key, and environment (live vs demo)" and no connection is stored. That crossing is the safe one, because it tells you. A demo key correctly submitted as Demo connects perfectly and is never questioned again, and left in place on a checkout you sell from it marks orders paid, delivers the product, issues an invoice and books revenue on money that does not exist. The dashboard names the environment in the Manage dialog and in the Currencies you collect note, and nowhere on the checkout, the order or the receipt.
4. Add the webhook
Separate from the API key, and worth doing: it's what makes payments confirm instantly instead of on a 5-minute sweep, and it's the only way refunds and chargebacks made in Airwallex get back to GoCushy.
"Could not validate those credentials" — usually the Client ID and API key are from different environments, or the key lacks payments write. Re-check step 2.
Payments work but refunds fail — the Refunds permission is missing. Create a new key with it ticked and reconnect.
The currency picker doesn't appear — FX/Quotes permission, or you haven't set additional currencies on the offer.