Checkout conversion is a top priority. Every friction point costs sales.
Stripe Setup
- Install WooCommerce Stripe Payment Gateway (official plugin)
- WooCommerce > Settings > Payments > Stripe > Enable
- Add Publishable Key and Secret Key from Stripe dashboard (stripe.com/dashboard)
- Enable: Credit cards, Apple Pay, Google Pay
- Test mode: use test keys + card
4242 4242 4242 4242, any future expiry, any CVC
Checkout Optimization
// Remove order notes field (reduces cognitive load)
add_filter('woocommerce_checkout_fields', function($fields) {
unset($fields['order']['order_comments']);
return $fields;
});
// Remove company name and address line 2 (simplify form)
add_filter('woocommerce_checkout_fields', function($fields) {
unset($fields['billing']['billing_company']);
unset($fields['billing']['billing_address_2']);
return $fields;
});
Enable WooCommerce block-based checkout: Appearance > Editor > Checkout template > Use block checkout. Faster and mobile-optimized.
Payment Gateway Comparison
| Gateway | Use Case | Transaction Fee | |---------|----------|----------------| | Stripe | Primary — cards, Apple Pay, Google Pay | 2.9% + $0.30 | | PayPal | Secondary — buyer protection expectations | 3.49% + $0.49 | | Square | In-person + online combo | 2.6% in-person | | WooCommerce Payments | Stripe-powered, built-in dashboard | 2.9% + $0.30 |
Payment Gateway Priority
Set Stripe as default (index 0), PayPal as secondary:
- WooCommerce > Settings > Payments > Drag Stripe above PayPal
Abandoned Cart Recovery
- Install CartFlows or FunnelKit
- Set abandoned cart timeout: 15 minutes
- Email sequence:
- 1 hour: reminder ("You left something behind")
- 24 hours: with 5% discount code
- 72 hours: final reminder ("Last chance")
- Target 5-10% recovery rate
Stripe Test Cards
| Card Number | Scenario | |-------------|----------| | 4242 4242 4242 4242 | Success | | 4000 0000 0000 0002 | Decline | | 4000 0025 0000 3155 | 3D Secure required | | 4000 0000 0000 9995 | Insufficient funds |