

How to Record Stripe Refunds in QuickBooks with Zapier
Automatically create credit memos in QuickBooks whenever Stripe processes a refund to keep your accounting accurate.
Steps and UI details are based on platform versions at time of writing β check each platform for the latest interface.
Best for
Small businesses processing under 200 refunds monthly who want automatic QuickBooks credit memo creation without coding
Not ideal for
High-volume merchants needing real-time sync or complex refund approval workflows before accounting entry
Sync type
pollingUse case type
syncReal-World Example
A 12-person e-commerce startup uses this to automatically record their 30-40 monthly Stripe refunds as QuickBooks credit memos. Before automation, their bookkeeper manually created credit memos twice weekly, often missing refunds that happened over weekends. This caused month-end reconciliation headaches when Stripe deposits didn't match QuickBooks revenue reports.
What Will This Cost?
Drag the slider to your expected monthly volume.
Each platform counts differently β Zapier: 1 task per trigger. Make: 1 operation per module per record. n8n: 1 execution per run.





Prices shown for annual billing. Based on published pricing as of April 2026.
Estimated ROI
1000
min saved/mo
$583
labor value/mo
Free
no platform cost
Based on ~2 min manual effort per operation at $35/hr fully loaded labor cost.
Implementation
Before You Start
Make sure you have everything ready.
Field Mapping
Map these fields between your apps.
| Field | API Name | |
|---|---|---|
| Required | ||
| Customer Email | customer.email | |
| Refund Amount | amount_refunded | |
| Charge Description | description | |
| Stripe Charge ID | id | |
| Refund Date | created | |
1 optional fieldβΈ show
| Customer Name | customer.name |
Step-by-Step Setup
Dashboard > Create Zap > Choose App & Event
Create new Zap with Stripe trigger
Start a new Zap and select Stripe as your trigger app. Choose the 'Charge Dispute' or 'Invoice Payment Failed' event since Stripe doesn't have a dedicated refund trigger - you'll filter for refunds in the next step.
- 1Click 'Create Zap' from your Zapier dashboard
- 2Search for 'Stripe' in the trigger app selector
- 3Select 'Charge Dispute' from the trigger event dropdown
- 4Click 'Continue' to proceed to connection setup
Trigger > Stripe > Account Connection
Connect your Stripe account
Authenticate with Stripe using your API keys. Zapier needs read access to pull refund data from your Stripe account.
- 1Click 'Sign in to Stripe' button
- 2Enter your Stripe account credentials
- 3Authorize Zapier to access your Stripe data
- 4Select your Stripe account from the dropdown if you have multiple
Zap Steps > + > Filter by Zapier
Add filter for refund events
Since Stripe's webhook sends all dispute events, add a filter to only proceed when the event type is actually a refund. This prevents credit memos for chargebacks or other disputes.
- 1Click the '+' button between trigger and action steps
- 2Select 'Filter by Zapier' from the app list
- 3Set condition to 'Reason' 'Exactly matches' 'refund_requested'
- 4Click 'Continue' to save the filter
Zap Steps > + > QuickBooks Online > Create Credit Memo
Add QuickBooks action step
Set up QuickBooks as your action app to create the credit memo. Choose 'Create Credit Memo' since this matches the accounting treatment for refunds.
- 1Click '+' to add an action step after your filter
- 2Search for 'QuickBooks Online' in the app selector
- 3Select 'Create Credit Memo' from the action event list
- 4Click 'Continue' to proceed to account connection
Action > QuickBooks Online > Account Connection
Connect QuickBooks Online
Authenticate with your QuickBooks company file. Zapier needs write permissions to create credit memos in your accounting system.
- 1Click 'Sign in to QuickBooks Online'
- 2Choose your company from the QuickBooks login screen
- 3Grant Zapier permission to access your QuickBooks data
- 4Verify the correct company appears in the connection dropdown
Action > QuickBooks Online > Credit Memo Fields > Customer
Map customer information
Link the Stripe customer to the corresponding QuickBooks customer. This ensures the credit memo applies to the right customer account.
- 1Click in the 'Customer' field in the credit memo form
- 2Select 'Customer Email' from the Stripe trigger data
- 3Set 'Customer Display Name' to map to Stripe's customer name field
- 4Choose 'Find existing customer' for the customer lookup method
Action > QuickBooks Online > Credit Memo Fields > Line Items
Configure line item details
Set up the credit memo line items to reflect the refunded amount and description. Map the refund amount and original charge description from Stripe.
- 1Click in the 'Line 1 Description' field
- 2Map to 'Charge Description' from your Stripe trigger data
- 3Set 'Line 1 Amount' to the 'Amount Refunded' field from Stripe
- 4Leave 'Line 1 Item' blank unless you track specific products
Action > QuickBooks Online > Credit Memo Fields > Accounting
Set accounting categories
Assign the credit memo to the correct income account to properly categorize the refund. This should match the account used for the original sale.
- 1Click the 'Line 1 Account' dropdown
- 2Select your main income/revenue account
- 3Set 'Tax Code' to match your original sales tax treatment
- 4Leave 'Class' and 'Location' blank unless required
Action > QuickBooks Online > Credit Memo Fields > Additional Details
Add reference information
Include the Stripe charge ID in the memo field so you can trace the credit memo back to the original payment. This helps with reconciliation and customer inquiries.
- 1Click in the 'Memo' field at the bottom of the form
- 2Type 'Stripe Refund: ' followed by the Charge ID from trigger data
- 3Set 'Credit Memo Date' to 'Created' timestamp from Stripe
- 4Leave 'Credit Memo Number' blank to auto-generate
Action > QuickBooks Online > Test & Continue
Test the integration
Run a test to verify the credit memo creates correctly in QuickBooks with all the mapped Stripe data. This catches field mapping issues before you go live.
- 1Click 'Test & Continue' at the bottom of the action step
- 2Review the test credit memo data in the results panel
- 3Open QuickBooks and verify the test credit memo appeared
- 4Check that customer, amount, and memo details are correct
Zap Settings > Error Handling
Configure error handling
Set up error notifications so you know if refunds fail to sync. QuickBooks API errors are common when customer data doesn't match exactly.
- 1Click 'Settings' in the Zap header menu
- 2Scroll to 'Error Handling' section
- 3Select 'Send email notification' for failed Zaps
- 4Add your email address to receive error alerts
Zap Header > On/Off Toggle
Turn on the Zap
Activate your automation to start syncing Stripe refunds to QuickBooks. The Zap will check for new refunds every 15 minutes on paid plans.
- 1Click the toggle switch in the top right to 'On' position
- 2Confirm activation in the popup dialog
- 3Review the 'Zap History' tab to monitor for successful runs
- 4Set a calendar reminder to check the integration weekly
Drop this into a Zapier Code step.
Copy this template{{amount_refunded__value}}/100βΈ Show code
{{amount_refunded__value}}/100... expand to see full code
{{amount_refunded__value}}/100Scaling Beyond 200+ refunds/month+ Records
If your volume exceeds 200+ refunds/month records, apply these adjustments.
Add rate limit delays
Insert 'Delay by Zapier' steps between QuickBooks actions to avoid hitting the 500 requests/hour API limit. Set 10-15 second delays for volumes over 200 monthly refunds.
Batch process during business hours
Use 'Schedule by Zapier' to queue refunds and process them during 9-5 when QuickBooks API limits reset. This prevents weekend refund backlogs from failing Monday morning.
Consider QuickBooks Advanced
Upgrade to QB Advanced for higher API rate limits (1000/hour vs 500/hour) if you regularly hit timeout errors during high refund periods like Black Friday.
Going live
Production Checklist
Before you turn this on for real, confirm each item.
Troubleshooting
Common errors and how to fix them.
Frequently Asked Questions
Common questions about this workflow.
Analysis
Use Zapier for this if you process under 200 refunds per month and your team doesn't want to code custom webhooks. The setup takes 15 minutes and runs automatically after that. Your credit memos appear in QuickBooks within 15 minutes of the Stripe refund. Skip Zapier if you need real-time sync β go direct with Stripe webhooks to a custom endpoint instead.
This workflow uses 2 tasks per refund: one for the Stripe trigger and one for the QuickBooks credit memo creation. At 50 refunds per month, that's 100 tasks monthly. The Zapier Professional plan at $19.99 covers 750 tasks, so you're well within limits. Make would cost $9/month for the same volume with their Core plan. N8n self-hosted is free but requires server maintenance. Make saves you $11 monthly if cost matters more than convenience.
Make handles QuickBooks rate limiting better with built-in delays between API calls β Zapier can hit the 500/hour limit if you process refunds in batches. N8n gives you more control over error handling and retry logic when QuickBooks API calls fail. But Zapier's guided setup means you'll have this running today instead of spending a weekend reading API docs. Most small businesses value the time savings over the extra features.
You'll hit QuickBooks' customer matching quirks fast. If Stripe customer emails have extra spaces or different capitalization than QuickBooks, lookups fail silently. Stripe sends amounts in cents but QuickBooks expects dollars β easy to miss until you see $500 refunds as $5.00 credit memos. The Zapier trigger checks every 15 minutes, so refunds that happen Friday night don't show up in QB until Monday morning. Plan your month-end close accordingly.
Ideas for what to build next
- βAdd Slack notifications for large refunds β Create a second Zap that sends Slack alerts when refunds exceed a dollar threshold so your team knows about significant credits immediately.
- βSync credit memo applications back to Stripe β Build a reverse integration that updates Stripe customer notes when credit memos get applied to invoices in QuickBooks for complete audit trails.
- βCreate monthly refund summary reports β Set up a scheduled Zap that pulls monthly credit memo data from QuickBooks and emails a refund summary to your finance team.
Related guides
How to Share Notion Meeting Notes to Slack with Pipedream
~15 min setup
How to Share Notion Meeting Notes to Slack with Power Automate
~15 min setup
How to Share Notion Meeting Notes to Slack with n8n
~20 min setup
How to Send Notion Meeting Notes to Slack with Zapier
~8 min setup
How to Share Notion Meeting Notes to Slack with Make
~12 min setup
How to Create Notion Tasks from Slack with Pipedream
~15 min setup