Troubleshooting Withdrawal Button Issues
Looking for Withdrawal Button? View the full Withdrawal Button page to explore features, configuration options, and pricing.
Having issues with the Withdrawal Button for Magento 2? This page covers the most common problems and how to fix them. Start with the quick diagnostics section to narrow down what's going on, then jump to the relevant issue. We've also included debugging tips and what to look for in the logs when things aren't working as expected.
Common issues and solutions for Withdrawal Button.
Quick Diagnostics
- Check the module is enabled: Stores → Configuration → Magmodules → Withdrawal Button → Enabled = Yes
- Clear all caches:
bin/magento cache:flush - Verify the module is registered:
bin/magento module:status Magmodules_WithdrawalButton - Check logs:
var/log/magmodules_withdrawal_button_debug.logandvar/log/magmodules_withdrawal_button_error.log - Run the built-in selftest from the module's admin configuration page
Common Issues
Issue: Withdrawal button not showing on order pages
Symptoms:
- No "Withdraw from this order" button on order detail page
- No "Withdraw" link in My Orders
- Customers report they can't find the withdrawal option
Solution:
- Confirm the module is enabled for the correct store view
- Check that the order is eligible:
- Order status must be
pending,processing, orcomplete - Order must be within the configured withdrawal period
- Order must not already have a pending/confirmed/processed withdrawal
- Order must not consist entirely of excluded product types, categories, or SKUs
- Order status must be
- Clear the full page cache and block HTML cache
- If using a custom theme, verify that
sales_order_view.xmlandsales_order_history.xmllayout updates are not being overridden
Prevention:
- After changing withdrawal settings, always clear cache
- Review excluded product types/categories/SKUs if buttons disappear unexpectedly
Issue: Magic link in order email not working
Symptoms:
- Customer clicks the withdrawal link in their order email and gets an error
- Link leads to a 404 page
- "Invalid or expired token" message
Solution:
- Check that Include Magic Link in Order Email is set to Yes
- Verify the token hasn't expired — tokens expire when the withdrawal period ends
- Check that the order doesn't already have an active withdrawal (only one per order)
- If the link was never in the email, check that your order confirmation email template includes the `` variable — the module injects this automatically, but custom templates may strip it
Prevention:
- Make sure your email templates are based on the default Magento templates or include the withdrawal variable
- Expired tokens are cleaned up daily at 03:00 UTC by cron
Issue: Customer confirmation email not sent
Symptoms:
- Withdrawal is submitted successfully (reference code shown)
- Customer doesn't receive confirmation email
- Withdrawal record exists in admin grid
Solution:
- Check Magento's email queue: System → Email Queue (if using async email)
- Verify the email template is configured: Stores → Configuration → Magmodules → Withdrawal Button → Email → Customer Confirmation Template
- Check that Magento can send emails at all — test with a different transactional email
- Look for errors in
var/log/magmodules_withdrawal_button_error.log - Verify the customer's email address is valid in the withdrawal record
Prevention:
- Test email sending during initial setup
- Monitor your email delivery infrastructure
Issue: Admin notification emails not arriving
Symptoms:
- Using Semi-automatic or Full Automatic mode
- No notification emails received when withdrawals are submitted
- Withdrawals appear in the admin grid but team wasn't notified
Solution:
- Verify Admin Notification Recipients has at least one valid email address
- Check that you're using Semi-automatic or Full Automatic mode — Registration Only doesn't send admin notifications
- Check spam folders
- Review error logs for email sending failures
Prevention:
- Use a shared mailbox that's actively monitored
- Test with a real withdrawal after changing email settings
Issue: Full Automatic mode not canceling/refunding orders
Symptoms:
- After-action Mode is set to Full Automatic
- Withdrawal is confirmed but order status doesn't change
action_takenshowsnonein the admin grid
Solution:
- Check if the order can be canceled — Magento only allows canceling orders in certain states (pending, processing). Already shipped or completed orders can't be canceled.
- For shipped orders, check if a credit memo can be created — the order needs invoices and items available for refund
- Look at the withdrawal record's
action_takenfield:canceled— order was successfully canceledcredit_memo— offline credit memo was creatednone— neither action was possible; falls back to manual handling
- Check error logs for specific failure reasons
Prevention:
- Understand that Full Automatic has fallback behavior by design — complex cases require manual intervention
- Monitor the admin grid for withdrawals with
action_taken = none
Issue: Guest withdrawal lookup not finding orders
Symptoms:
- Customer enters order number and email on
/withdrawalpage - Gets error message that order can't be found
- Order exists in the system
Solution:
- Verify the customer is entering the increment ID (e.g.
100000042), not the entity ID - Check that the email address matches exactly — it's case-insensitive but must match the order's customer email
- Verify the order belongs to the store view the customer is browsing
- Check that the order meets eligibility requirements
Prevention:
- Consider adding a note to the lookup form clarifying which order number to use (the one from their confirmation email)
Issue: Footer link not visible
Symptoms:
- Footer link configured but not showing on the storefront
Solution:
- Check that Enable Footer Link is set to Yes
- Clear full page cache
- If using a custom theme, verify the theme isn't overriding
default.xmlin a way that removes the withdrawal link block - Check that the module is enabled for the current store view
Prevention:
- After theme updates, verify that module layout handles are still being processed
Debug Mode
Enable debug logging for detailed troubleshooting:
- Go to Stores → Configuration → Magmodules → Withdrawal Button → Debug & Logging
- Set Debug Mode to Yes
- Save and clear cache
- Reproduce the issue
- Check
var/log/magmodules_withdrawal_button_debug.log
The debug log records:
- Eligibility check results and reasons
- Token generation and validation
- Email sending attempts
- Withdrawal processing actions
Tip: Disable debug mode in production after troubleshooting. The log file grows with every withdrawal-related action.
Errors are always logged to var/log/magmodules_withdrawal_button_error.log regardless of the debug mode setting.
Need More Help?
Documentation:
- All Help Articles - Complete documentation overview
Support:
- Contact Support - Get help from our team
For a complete overview of features and configuration options, see Withdrawal Button.