Stripe to QuickBooks Journal Entries: The One Exception

There is no setting that turns Stripe sales into QuickBooks journal entries. The full map of which record each event becomes, and the one real exception.

Acodei Content Team · 9/19/2026 · 15 min read

You go looking for the setting. Somewhere in the mapping screen there must be a dropdown that says "post as Journal Entry instead of Sales Receipt," because that is how the last tool did it, and your accountant asked for journal entries.

There is no such dropdown. Not hidden in an admin panel, not behind a support request.

That sounds like a missing feature until you look at what the sync writes instead. Acodei produces nine different QuickBooks record types across every Stripe event it handles, and which one you get is decided by the feature involved and the transaction type, not by a preference. Exactly one of those nine is a journal entry, and it has nothing to do with your sales. Everything a customer pays you becomes a sales form.

Start a free trial of Acodei if you want this decided correctly rather than configured. The rest of this post is the actual routing map, because knowing which record each Stripe event becomes is what lets you find anything in QuickBooks afterward.

The nine records, and what produces each one

Stripe activityQuickBooks record
Successful charge, defaultSales Receipt
Successful charge, Sales as Payment enabledPayment, standalone against the customer
Charge paying an already-synced Stripe invoicePayment Receipt applied to that invoice
RefundRefund Receipt
Invoice finalizedInvoice
Invoice voidedVoid, or a Credit Memo
Credit note createdCredit Memo
Payout, non-UF holding accountTransfer, holding account to bank
Payout, Undeposited FundsDeposit, itemized out of UF into the bank
Negative payout, either modeTransfer in reverse, bank to holding
Top-upTransfer, bank to holding
Payout failed or canceledNo record at all
Daily summary, day nets positiveSales Receipt
Daily summary, day nets negativeRefund Receipt
Balance activity summaryOne "Acodei Daily Summary" Sales Receipt per day
Stripe fees under fee categorizationPurchase, as an expense
Financial Account spending, expense batching set to instantlyPurchase, one per event
Financial Account spending, expense batching set to dailyJournal Entry, one per account per day

Sales Receipt, Refund Receipt, Payment, Invoice, Credit Memo, Deposit, Transfer, Purchase, Journal Entry. Nine QuickBooks entity types, covering every path.

Note where the journal entry sits. It is on the last row, it covers money you spend out of a Stripe Financial Account, and it appears only when you set expense batching to daily. Nothing a customer pays you can become one. There is no setting anywhere in the product that turns a sale, a refund, an invoice or a payout into a journal entry, which is the question people are actually asking.

What Intuit says a journal entry is actually for

The case against journal entries for this job is not an Acodei opinion. It is in Intuit's own description of the record.

QuickBooks defines a journal entry as a manual accounting transaction "used to adjust balances or move money between accounts without using standard forms like invoices or bills." The listed uses are to "track depreciation, correct errors, or transfer funds between income and expense accounts." Intuit adds that if you are "unsure about which accounts to debit or credit, consult your accountant to avoid errors in your financial records."

Read that again with a Stripe sale in mind. A journal entry is the tool for adjusting balances without using the standard sales forms. A Stripe charge is not an adjustment. It is a sale, to a customer, of a product, on a date, possibly with tax. The standard form exists precisely for that.

Intuit's own comparison puts it plainly: a sales receipt "records goods or services paid for immediately at the time of purchase," while an invoice "informs your customers of what they owe you for work items, goods, or services." Those are the primitives QuickBooks gives you for revenue. A tool that books your sales as journal entries is declining to use them.

The practical cost lands later, when you try to report. A sales receipt carries the mapped product or service on each line, so the sale is attributed to something you sell. A journal entry moves amounts between accounts. The money is in the right account either way. The detail behind it is not. That is why choosing an integration on whether it matches your ledger's primitives, rather than on whether the balances tie out, is the more useful test.

Charges: three records, and the account decides

A single successful charge can become any of three records.

By default it is a Sales Receipt. On a connection with Sales as Payment enabled, it is instead a standalone Payment credited to the customer and not linked to any invoice. Where the charge belongs to a Stripe invoice Acodei has already synced, it becomes a Payment Receipt applied to that QuickBooks invoice.

The part that surprises people is that the choice between the sales receipt path and the payment path is made from account settings, not from anything about the charge. A charge attached to an invoice on a Sales as Payment connection still becomes a standalone payment. The full mechanism, including what happens when Stripe backfills the charge to invoice link after the fact, is worked through in sales receipt versus payment for a Stripe charge.

Refunds mirror this. A refund becomes a Refund Receipt against the customer, drawing from the holding account, with lines mirroring what was refunded.

What matters for the journal entry question is where the detail lives. Sales receipts and refund receipts carry line items resolved through product mapping, with unmapped lines falling back to your default product. A standalone payment carries no line items, which is exactly why it is the path you end up on only when you have asked for it, and why an unapplied one is worth chasing down.

Invoices: two records, deliberately

When Invoice Sync is on and a Stripe invoice is finalized, Acodei creates a QuickBooks Invoice reproducing every line item and the tax lines your mapping settings allow. When that invoice is paid, by charge, by a manual payment, or by a credit balance offset, Acodei creates a Payment Receipt or a Credit Memo and applies it to the invoice already created.

Two records, not one combined entry, because they do two different things to your books. The invoice recognizes revenue and creates the receivable. The payment settles it. Collapsing both into a single journal entry would lose the receivable entirely, which is the whole reason a business runs invoices through QuickBooks instead of just recording deposits.

A voided Stripe invoice either voids the QuickBooks invoice or produces a same-day Credit Memo, depending on your settings. A Stripe credit note becomes a Credit Memo, linked to the invoice where possible and otherwise posted to the customer.

One detail worth knowing: Stripe fees are never added to invoices, because that would make the QuickBooks invoice total disagree with the Stripe invoice. Fees are handled through sales receipts, deposits or expenses instead.

Payouts: a Deposit or a Transfer, and your holding account picks

This is where people most expect a journal entry, and where the record type is most clearly load bearing.

If your holding account is a regular asset clearing account, each payout becomes a single QuickBooks Transfer from the holding account to your mapped deposit bank account, for the payout's net amount.

If your holding account is Undeposited Funds, each payout becomes a QuickBooks Deposit that itemizes the underlying activity, the charges, refunds, fees and any mapped uncommon transaction types, out of Undeposited Funds and into the bank account.

Both are bank-side records, which is the point. Your bank feed shows the Stripe payout arriving. A Deposit or a Transfer is the shape of record QuickBooks expects on the other side of that.

Three more cases follow the same logic. A negative payout, where refunds and disputes exceeded sales and Stripe pulled money back out of your bank, records a Transfer in the reverse direction, bank into holding, for the absolute amount, in both holding-account modes. A top-up, which is you funding your Stripe balance, is the same reverse Transfer. And a payout that fails or is canceled produces no record at all, because the money never moved. The reversal case has its own wrinkles, covered in negative Stripe payouts and reversals.

The daily summary is a sales receipt

If any part of this system sounded like it should be a journal entry, it is the daily summary. Compressing a day of activity into one record is exactly the shape of a summary journal entry, and it is how several competing tools do it.

It is not what happens here. "Daily Balance Summary" covers three separate daily mechanisms, and none of them writes a journal entry.

For daily-summary accounts, a payout's balance transactions are aggregated into per-day, per-currency groups, and each group becomes one Sales Receipt when the day nets positive, or a Refund Receipt when it nets negative, deposited to the resolved holding account for that currency.

The balance-activity summary is a second mechanism, and it runs for real-time accounts too. It produces one "Acodei Daily Summary" Sales Receipt per day, carrying a private note identifying it as such, covering aggregated fees and other balance activity. It walks the day's balance transactions and skips anything that already has its own record, so only activity with no per-transaction record lands on it: standalone fees, adjustments, uncommon balance types.

The third is Financial Account daily fees, which has its own job.

So the compression is real, and it is why high-volume accounts use it. The record doing the compressing is a sales receipt with line items, not a journal entry with account totals. Each group on it uses the product mapped for that transaction type, with uncommon types resolving through Balance Transaction Mapping. The tradeoffs between the two modes are covered in daily summary versus real-time syncing.

The one record that is an expense

There is a single path that produces something other than a sales form or a bank record.

Stripe fees can be split into two categories following Stripe's own balance-transaction taxonomy: transactional fees, meaning the fee on a charge, payment or refund balance transaction, and non-transactional fees, meaning standalone fee balance transactions such as Billing, Radar and Tax product fees. A setting routes each category either onto the daily summary's line items or into a separate Purchase, which is a QuickBooks expense.

That is also what the fee-as-expense configuration does on the sales receipt path. By default the Stripe fee is a negative line on the receipt, using your mapped fee product, so the receipt nets down to what actually entered your Stripe balance. Under fee-as-expense the fee posts as a separate Purchase and the receipt stays gross.

An expense is still not a journal entry. It is the QuickBooks form for money spent, which is what a processing fee is.

The one journal entry the sync does write

There is exactly one, and it is worth knowing precisely because it proves the rule rather than breaking it.

If you hold funds in a Stripe Financial Account and spend from it, two kinds of event produce records: an outbound payment, which is money sent to a vendor, contractor or other external recipient, and a received debit, which is typically spend on a Stripe-issued card. In the default mode, where the expense batch interval is set to instantly, each of those becomes its own Purchase in QuickBooks, paid from your Financial Account holding account and categorized by the expense account you mapped.

Set that connection's expense batch interval to daily instead, and they stop producing one record per event. They collapse into a single Journal Entry per account per day.

So if you are looking at one daily journal entry where you expected a list of individual purchases, that setting is the reason, and nothing is broken. The tradeoff is the usual one: far fewer records and a much shorter register, at the cost of per-transaction detail on the QuickBooks side. Stripe Financial Accounts in QuickBooks covers the whole expense path, including what happens to the vendor name.

Notice what that case is and is not. It is an expense-batching convenience on money leaving a Financial Account, chosen per connection. It is not a way to record revenue. No charge, refund, invoice, credit note or payout is eligible for it, which is why the answer to "can I have my Stripe sales as journal entries" is still no.

It is also the one place on this page where Acodei does what the reader was originally asking for, which makes it the honest thing to lead with when someone asks whether the product can write a journal entry at all. It can. Just not for the thing they meant.

The settings that do change your records

It is worth being precise about this, because "there is no setting" invites the reply that you simply have not found it.

Settings do change which records you get. Process Sales as Receive Payment-only switches an entire connection from the sales receipt workflow to the invoice plus payment workflow. Record Fee as Purchase books fees as expenses instead of negative lines. Create Credit Memo on Void replaces an invoice void with a same-day credit memo. Enable $0 Invoice lets zero-balance invoices with non-zero lines through. Payments marked paid outside Stripe create a QuickBooks payment to Undeposited Funds.

Every one of those moves you between the sales and money-movement records above. None of them produces a journal entry. The only setting that does is the expense batch interval on a Stripe Financial Account, covered above, and it reaches none of your sales activity. The record type is a consequence of which feature is handling the transaction, which is why the settings that genuinely change your books are worth understanding before you go hunting for one that does not exist.

When you genuinely do need a journal entry

Sometimes the request behind "can I get journal entries" is not about record types at all. It is about accrual.

If you need deferred revenue in QuickBooks, recognizing a twelve-month subscription across twelve months rather than on the day the card cleared, no sync setting will produce that. A Stripe balance transaction carries the amount and the date the money moved, not the period the service covers. The honest path is a periodic journal entry sourced from Stripe's own Revenue Recognition reports, posted alongside the synced money movement rather than instead of it. That keeps the cash side complete and reconcilable while the journal entry carries the deferral. It is bookkeeping work rather than integration work, and it is covered in Stripe revenue recognition and QuickBooks.

That is the correct use of a journal entry, and it matches what Intuit describes the record as being for: an adjustment, made deliberately, on top of the standard forms that carry the transactions.

Frequently asked questions

Can I configure Acodei to post journal entries instead of sales receipts?

No. The QuickBooks record type follows from the feature handling the transaction and the Stripe transaction type. Settings such as Process Sales as Receive Payment-only and Record Fee as Purchase do change which record you get, but they move you between sales receipts, invoices, payments, credit memos, deposits, transfers and expenses. The sync writes a journal entry in exactly one case, and it is not a sales record: Stripe Financial Account spending, when that connection's expense batch interval is set to daily, collapses each day's outbound payments and card spend into one journal entry per account.

Does the daily summary post a journal entry?

No. A daily-summary day group becomes a Sales Receipt when the day nets positive and a Refund Receipt when it nets negative. The separate balance-activity summary produces one "Acodei Daily Summary" Sales Receipt per day. Both carry line items mapped by transaction type, which is what a journal entry would not give you.

Why does this matter if the balances end up the same?

Because the balances are not the only thing you report on. Sales receipts, refund receipts and invoices carry the mapped product or service on each line, so each sale is attributed to something you sell, and invoices create real receivables. A journal entry moves amounts between accounts and carries none of that detail.

My accountant asked for journal entries. What do I tell them?

Usually they are asking for two separate things. Clean, reconcilable account movement, which the sales receipts, deposits and transfers already give them, and accrual adjustments such as deferred revenue, which belong in a periodic journal entry sourced from revenue recognition reports and posted on top of the synced activity.

What record does a Stripe payout become?

A Transfer from your holding account to your deposit bank account if you use a regular asset holding account, or an itemized Deposit out of Undeposited Funds if you use UF. Negative payouts and top-ups post as a Transfer in the reverse direction, and a failed or canceled payout produces no record.

Getting the record type right

The reason the routing is fixed rather than configurable is that each QuickBooks record makes a different claim about your business. A sales receipt says revenue was earned and collected. An invoice says it was earned and is owed. A payment says a receivable was settled. A deposit says cash reached the bank. A journal entry says none of those things. It says an account balance changed.

For depreciation, a deferral, or a day's worth of card spend you asked to be batched, that is exactly right. For a customer buying something from you, it throws away every detail QuickBooks built the sales forms to carry.

Acodei routes each Stripe event to the record type that matches what actually happened, resolves sales lines through your product mapping, and deposits to the holding account resolved for that Stripe account and currency. If you would rather have that decided consistently than configured one dropdown at a time, start a free trial or see how the pricing works.

Share

Automate your Stripe to QuickBooks sync

Save hours every month. Acodei automatically syncs your Stripe transactions, invoices, and payouts to QuickBooks Online.

How Acodei handles this in your stack

Stripe QuickBooks Integration

See how Acodei syncs Stripe payments, fees, refunds, invoices, and payouts into QuickBooks Online automatically.

Or go straight to a capability

Get more operational finance guides like this one

We will only send high-value product and finance content.