Overview
Saved Payment Methods allow your customers to pay invoices quickly using previously authorized SEPA Direct Debit mandates. Instead of creating a new payment method each time, customers can select from their existing mandates, making repeat payments faster and more convenient.This feature is perfect for recurring customers, subscriptions, and businesses that send frequent invoices to the same clients. It reduces friction and increases payment success rates.
How It Works
For Customers
- First Payment: Customer pays an invoice via SEPA Direct Debit
- Mandate Created: Mollie automatically creates and stores a mandate
- Future Payments: Customer sees “Saved Payment Methods” option on invoices
- Quick Payment: Select saved mandate → Confirm → Payment processed instantly
For Business Owners
The system works automatically:- No configuration required
- Mandates are created during first SEPA payment
- Saved methods appear automatically for returning customers
- Full transaction history and audit trail maintained
Saved payment methods only apply to SEPA Direct Debit mandates. Credit card and other payment methods do not support saved credentials in the same way.
Payment Flow
Step 1: Customer Receives Invoice
When a customer views an unpaid invoice in their portal, they see two payment options:- Pay with New Method: Standard payment flow with Mollie checkout
- Pay with Saved Method: Quick payment using existing mandate
Step 2: Selecting a Saved Method
If the customer has active SEPA mandates:- Click “Pay with Saved Payment Method” button
- Modal appears showing all available mandates
- Each mandate displays:
- Mandate ID (e.g.,
mdt_abc123xyz
) - Bank account details (masked:
NL**ABNA0123456789
) - Creation date
- Status (Active/Pending/Expired)
- Mandate ID (e.g.,
Step 3: Confirming Payment
- Customer selects a mandate from the list
- Clicks “Confirm Payment”
- System creates payment using selected mandate
- Invoice status updates to “Pending” immediately
- Payment processes through Mollie
Step 4: Payment Confirmation
Successful Payment:- Invoice marked as “Paid”
- Transaction recorded in payment history
- Email notification sent (if configured)
- Customer redirected to invoice overview
- Error message displayed
- Invoice remains “Open” or “Pending”
- Customer can retry with different mandate or new payment method
Customer Experience
Customer Portal Interface
Invoice Detail Page (/shop/{handle}/portal/invoices/{id}
):
Payment Button States
Available (Blue)
- Default state
- Clickable and ready
- Shows “Pay with Saved Payment Method”
- Payment in progress
- Button disabled
- Shows “Processing…”
- Payment succeeded
- Invoice marked as paid
- Button hidden
Payment Method Modal
Modal Contents:
- List of active mandates
- Mandate details (ID, bank, date)
- “Cancel” button to close
- “Confirm Payment” button
- Loading states during fetch
- Error messages inline
- Success confirmation
Mobile-Friendly Design
The saved payment method interface is fully responsive:- Touch-friendly buttons (minimum 44px tap target)
- Modal adapts to screen size
- Clear visual feedback for all actions
- Works on iOS, Android, and desktop browsers
Mandate Management
What is a Mandate?
A SEPA mandate is an authorization from a customer allowing you to automatically debit their bank account. It’s created during the first SEPA Direct Debit payment and can be reused for future payments.Mandates are regulated by SEPA (Single Euro Payments Area) regulations and must comply with EU banking standards.
Mandate Statuses
Status | Description | Can Use for Payment? |
---|---|---|
Valid | Active and ready to use | ✅ Yes |
Pending | Awaiting bank verification | ❌ No (use after verification) |
Expired | No longer valid | ❌ No |
Canceled | Revoked by customer or business | ❌ No |
How Mandates Are Created
Automatic Creation via Mollie:- Customer selects SEPA Direct Debit at checkout
- Mollie redirects to bank for authorization
- Customer authorizes direct debit
- Mollie creates mandate and links to customer
- Mandate becomes available for future payments
- First SEPA payment for subscription
- SEPA invoice payment
- SEPA order payment in shop
- Manual SEPA setup (via Mollie dashboard)
Viewing Active Mandates
For Business Owners: Navigate to Settings → Payment Providers → Mollie → Mandates View all mandates including:- Customer name and email
- Mandate ID
- Bank account (masked)
- Status and creation date
- Linked subscriptions/invoices
Technical Details
System Architecture
Key Components:- ShopCustomerInvoiceDetail Component: Livewire component handling UI and payment processing
- MollieService: Handles API communication with Mollie
- Mandate Loading: Fetches active mandates via Mollie API
- Payment Creation: Creates payments using mandate ID
- Duplicate Prevention: Ensures no concurrent payments for same invoice
Payment Processing Flow
API Integration
PayRequest integrates with Mollie’s Customers API to manage mandates: Endpoints Used:GET /v2/customers/{customerId}/mandates
- Fetch customer mandatesPOST /v2/payments
- Create payment with mandate IDGET /v2/mandates/{mandateId}
- Verify mandate status
- OAuth 2.0 access tokens (auto-refreshed)
- API keys stored encrypted in database
- Per-business provider credentials
Security Features
Duplicate Prevention
- Prevents multiple simultaneous payments
- Checks invoice payment status before creating payment
- Validates mandate belongs to customer
- Ensures mandate is active and valid
Error Handling
- Comprehensive error catching
- User-friendly error messages
- Automatic retry suggestions
- Logs all failed attempts
Audit Trail
- All payments logged in transactions table
- Activity log tracks payment attempts
- Mandate usage tracked per invoice
- Full transaction history maintained
Data Privacy
- Bank account numbers masked in UI
- Mandate IDs encrypted in database
- GDPR-compliant data handling
- Secure communication with Mollie
Use Cases
1. Recurring Service Providers
Scenario: Monthly consulting services with variable amounts Benefit:- Customers pay new invoices with one click
- No need to re-enter bank details each month
- Faster payment processing
- Reduced payment failures
2. Subscription Businesses
Scenario: Annual subscriptions with add-on purchases Benefit:- Main subscription uses mandate automatically
- Add-on invoices can reuse same mandate
- Consistent payment method across all charges
- Higher payment success rate
3. Service Businesses with Deposits
Scenario: Project-based work with upfront deposits Benefit:- Initial deposit creates mandate
- Final invoice uses same mandate
- No payment friction at project completion
- Professional client experience
Troubleshooting
Customer Can’t See Saved Payment Methods
Possible Causes:-
No Active Mandates
- Customer has never paid via SEPA
- Previous mandates expired or canceled
- Mandates belong to different Mollie customer
-
Wrong Customer Account
- Customer logged into wrong portal
- Email mismatch between PayRequest and Mollie
- Multiple customer accounts exist
-
Mollie Connection Issue
- Mollie provider inactive
- OAuth token expired (auto-refresh failed)
- API credentials invalid
Verify Mandate Exists in Mollie
Verify Mandate Exists in Mollie
- Log into Mollie dashboard
- Navigate to Customers
- Search for customer email
- Check Mandates tab
- Verify status is “Valid”
Check PayRequest-Mollie Customer Sync
Check PayRequest-Mollie Customer Sync
- Go to Settings → Payment Providers → Mollie
- Ensure “Sync Customers” is enabled
- Click “Test Connection” to verify
- Check customer record in PayRequest dashboard
- Verify
mollie_customer_id
field is populated
Refresh Mollie Connection
Refresh Mollie Connection
- Navigate to Settings → App Store → Mollie
- Click “Test Connection”
- If failed, click “Reconnect”
- Complete OAuth flow
- Retry payment
Payment Fails with Saved Mandate
Common Error Messages: “Mandate is no longer valid”- Mandate expired or revoked by bank
- Customer needs to create new mandate
- Solution: Pay with new payment method
- Customer’s bank account balance too low
- SEPA direct debit declined by bank
- Solution: Customer should check bank account
- Duplicate payment attempted
- System prevented double-charging
- Solution: Refresh page, check invoice status
- Mollie API error or timeout
- Temporary service disruption
- Solution: Wait 5 minutes and retry
Mandate Shows as “Pending”
What it means:- Bank hasn’t confirmed authorization yet
- Usually takes 1-3 business days
- Customer can use mandate after confirmation
- Wait for bank verification
- Use alternative payment method meanwhile
- Check Mollie dashboard for status updates
Never manually mark invoices as paid while using saved payment methods. Always wait for Mollie webhook confirmation to ensure payment actually succeeded.
Best Practices
For Business Owners
Enable Customer Sync
Turn on Mollie customer sync to automatically link customers between PayRequest and Mollie. This ensures mandates appear correctly.
Test Before Going Live
Use Mollie test mode to verify saved payment methods work correctly before processing real payments.
Monitor Mandate Health
Regularly check mandate statuses in Mollie dashboard. Replace expired mandates before they cause payment failures.
Educate Customers
Inform customers about saved payment methods in onboarding emails. Explain the convenience and security benefits.
For Customers
- Keep bank details current: Update mandate if you change banks
- Monitor email notifications: Check for payment confirmations
- Contact business if issues: Don’t repeatedly retry failed payments
- Understand processing time: SEPA payments take 1-3 business days
Security & Compliance
SEPA Regulations
PayRequest complies with SEPA mandate regulations:- ✅ Pre-notification: Customers receive advance notice of charges
- ✅ Mandate Reference: Unique ID for each authorization
- ✅ Revocation Rights: Customers can cancel mandates anytime
- ✅ Dispute Process: SEPA chargeback rights preserved
Data Protection
Encrypted Storage:- Mandate IDs encrypted at rest (AES-256)
- Bank account numbers masked in all interfaces
- API credentials stored encrypted
- Only customer can use their own mandates
- Business owners see aggregated data only
- Multi-tenant isolation enforced
- All payment attempts logged
- Mandate usage tracked
- Failed payments recorded with reasons
PCI Compliance
PayRequest never stores sensitive bank account details:- Bank data stays with Mollie (PCI-DSS Level 1 certified)
- Only mandate IDs stored in PayRequest
- No direct access to customer bank accounts
- All payment processing handled by Mollie
By using Mollie mandates, PayRequest maintains PCI compliance without needing to store sensitive payment information.
Frequently Asked Questions
Can customers use saved methods for subscriptions?
Can customers use saved methods for subscriptions?
Yes! Subscriptions automatically create and use mandates for recurring payments. The same mandate can be used for both subscription charges and one-off invoice payments.
What happens if a customer cancels their mandate?
What happens if a customer cancels their mandate?
The mandate will no longer appear in saved payment methods. The customer will need to create a new mandate by making a new SEPA payment, or use a different payment method.
How long do mandates remain active?
How long do mandates remain active?
SEPA mandates remain valid indefinitely unless:
- Customer revokes the mandate
- Bank account is closed
- 36 months pass without any payments (dormancy)
- Business manually cancels the mandate
Can I manually create mandates for customers?
Can I manually create mandates for customers?
No. Mandates must be created through the standard SEPA Direct Debit payment flow via Mollie. This ensures proper authorization and compliance with SEPA regulations.
Do saved payment methods work with other payment types?
Do saved payment methods work with other payment types?
Currently, only SEPA Direct Debit mandates support saved payment methods. Credit cards, iDEAL, and other payment methods do not offer saved credentials in the same way.
Can customers have multiple saved mandates?
Can customers have multiple saved mandates?
Yes! Customers can have multiple mandates (e.g., personal and business bank accounts). They can choose which mandate to use for each payment.
What's the difference between saved mandates and subscriptions?
What's the difference between saved mandates and subscriptions?
Subscriptions are recurring payments that automatically charge on schedule. Saved mandates allow one-click manual payments on individual invoices. Both use SEPA mandates but serve different purposes.
Related Documentation
SEPA Mandates
Learn more about mandate management
Mollie Integration
Set up Mollie for your business
Customer Portal
Configure customer portal settings
Invoice Payments
Create and manage invoices
Subscriptions
Set up recurring billing
App Store
Manage payment provider integrations
Need Help? If you’re experiencing issues with saved payment methods, contact support@payrequest.io with the invoice ID and customer email for assistance.