Laravel PHP Licenser & Updates Manager - REST API, webhooks, customer portal
Airwallex Payment Gateway for UK and US
Pluginπ Airwallex Payment Gateway for Botble CMS
By Maryam International LLC β the team behind the most battle-tested Botble payment plugins on CodeCanyon.
Accept cards, Apple Pay, Google Pay & 160+ local payment methods in 130+ currencies from 180+ countries β all through a beautiful, secure, hosted checkout. Zero PCI hassle. Zero compromise.
β¨ Why Airwallex?
| Feature | Details |
|---|---|
| π Global reach | 180+ countries, 130+ currencies |
| π³ All major cards | Visa, Mastercard, Amex, JCB, Discover, Diners, UnionPay |
| π± Digital wallets | Apple Pay, Google Pay, Cash App Pay |
| π 3D Secure | Full 3DS support β built into hosted page |
| π Full & partial refunds | One API call β no dashboard needed |
| πͺ Real-time webhooks | Instant order confirmation even if browser closes |
| π§ͺ Sandbox + Live | One setting to switch β no code changes ever |
| β‘ Token caching | Auth tokens cached 30min β no rate limit issues |
| π‘οΈ HMAC signature | Every webhook cryptographically verified |
| π¨ 3 themes | Works perfectly on Martfury, Nest, Shofy |
π¦ Installation
- Upload the
AirwallexByCodeuppfolder toplatform/plugins/on your server. - Go to Admin β Plugins and activate Airwallex Payment Gateway.
- The migration runs automatically β no
artisan migrateneeded. - Go to Admin β Payments β Payment Methods and configure Airwallex.
βοΈ Configuration
Step 1 β Get Your Credentials
Sandbox:
- Log in at demo.airwallex.com
- Navigate to Developer β API Keys
- Copy your Client ID and API Key
Production:
- Log in at airwallex.com
- Navigate to Developer β API Keys
- Copy your Live Client ID and Live API Key
Step 2 β Configure in Admin Panel
Go to Admin β Payments β Payment Methods β Airwallex:
| Setting | Description |
|---|---|
| Environment | Sandbox for testing, Live for production |
| Sandbox Client ID | From demo.airwallex.com β Developer β API Keys |
| Sandbox API Key | From demo.airwallex.com β Developer β API Keys |
| Live Client ID | From airwallex.com β Developer β API Keys |
| Live API Key | From airwallex.com β Developer β API Keys |
| Webhook Secret | From Airwallex Dashboard β Developer β Webhooks |
| Statement Descriptor | Text on customer's card statement (max 22 chars) |
| Logo URL | Optional store logo shown on checkout page |
Step 3 β Register Your Webhook
- In Airwallex Dashboard β Developer β Webhooks β Add endpoint
- URL:
https://yourstore.com/payment/airwallex/webhook - Subscribe to:
payment_intent.succeeded,payment_intent.cancelled,refund.settled,refund.failed,payment_dispute.requires_response - Copy the webhook secret β paste in admin settings
- Repeat this step separately for sandbox and production dashboards.
π§ͺ Test Cards (Sandbox Only)
Use any future expiry date and any 3-digit CVC.
β Always Successful
| Card Number | Brand |
|---|---|
4035 5010 0000 0008 |
Visa Debit β Start here |
2223 0000 4841 0010 |
Mastercard Credit |
3706 3680 3809 394 |
American Express |
6580 0700 0000 0008 |
Discover |
3569 5999 9909 7585 |
JCB |
6252 4701 4444 4939 |
UnionPay |
π 3D Secure
| Card Number | Scenario |
|---|---|
4012 0003 0000 0005 |
Frictionless 3DS success |
4012 0003 0000 0062 |
Challenge 3DS β OTP: 1234 |
β Decline Cards
| Card Number | Error |
|---|---|
4646 4646 4646 4644 |
Risk declined |
2223 0000 1018 1375 |
Various errors (use amount 80.05 / 80.51 / 80.14) |
β οΈ Use amounts that don't start with
80.for successful tests (e.g.9.99,50.00,99.99)
π Payment Flow
Customer clicks Pay β
Server authenticates with Airwallex (token cached 30min) β
Server creates PaymentIntent (major units, e.g. 99.99 USD) β
Redirect to Airwallex HPP (Hosted Payment Page) β
Customer pays (card / Apple Pay / Google Pay / 3DS) β
Airwallex redirects to /payment/airwallex/success β
Server verifies status via GET /pa/payment_intents/{id} β
PAYMENT_ACTION_PAYMENT_PROCESSED fired β
Botble marks order paid + sends confirmation email β
Customer sees "Order Confirmed" β
Webhooks also fire asynchronously as a secondary confirmation layer.
π° Refunds
Refunds are processed directly from Admin β Orders β [Order] β Refund.
- Full refund: omit amount β Airwallex refunds the full captured amount
- Partial refund: enter an amount β Airwallex processes it in the original currency
- Refund status updates automatically via the
refund.settledwebhook
π Supported Themes
| Theme | Status |
|---|---|
| Martfury | β Fully compatible |
| Nest | β Fully compatible |
| Shofy | β Fully compatible |
The checkout UI adapts to whatever theme is active β no theme-specific code required.
π Security
- All credentials stored in Botble's encrypted settings table β never in source code
- Access tokens cached server-side β never exposed to the browser
client_secretonly used in server-side HPP URL construction- Every webhook verified with HMAC-SHA256 before processing
- Payment status always re-verified server-side before marking order paid
- Webhook route CSRF-exempt via framework middleware filter
- Full audit trail via Laravel logs
π Payment Status Reference
| Status | Meaning |
|---|---|
REQUIRES_PAYMENT_METHOD |
Awaiting card entry β customer on HPP |
REQUIRES_CUSTOMER_ACTION |
3DS challenge in progress |
PENDING |
Async processing |
SUCCEEDED |
β Payment complete β order marked paid |
FAILED |
β Payment declined |
CANCELLED |
Intent cancelled |
π Go-Live Checklist
- [ ] Production credentials obtained from airwallex.com
- [ ] Admin settings β switch Environment to Live
- [ ] Production webhook URL registered in production Airwallex dashboard
- [ ] Production webhook secret saved in admin settings
- [ ] Live test with real card for minimum amount
- [ ] Test refund to confirm refund flow works
- [ ] Verify order confirmation email fires correctly
π Support
Built by Maryam International LLC
- Website: codeupp.xyz
- Plugin issues: Open a support ticket via CodeCanyon
- [email protected]
- +971553682656
Airwallex Payment Gateway Plugin β engineered for reliability, built for growth.
Support the Author
If you find this product helpful, consider supporting the developer.
Bank Information
Bank Name- Wio BankΒ IBAN: AE040860000009582249758 ACCOUNT NUMBER: 9582249758 ACCOUNT NAME: MARYAM INTERNATIONAL LLC, Country United Arab Emirates
PayPal
@MohammadAqib951Scan QR Code
Leave a comment
Your email address will not be published. Required fields are marked *