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