Skip to content
Adapters

PayPal QuickBooks integration that reconciles to the penny

The PayPal QuickBooks integration from Adapters posts PayPal sales, refunds, and fees into QuickBooks as sales receipts and expenses, so the net deposit matches your bank feed. Setup is no-code, so try it against sample records in the live demo.

The live demo needs no card, and Starter is $49 a month.

Field mapping auto-plugged · tap a port to rewire

5 sample records ready

What running PayPal to QuickBooks by hand costs you

  • PayPal deducts its fee before payout, so the deposit never equals the invoice total.
  • The stock QuickBooks PayPal app lumps activity into a clearing account you still reconcile by hand.
  • Refunds and disputes land days later and quietly throw off the month you already closed.

The field mapping, out of the box

All 5 of these PayPal to QuickBooks fields arrive mapped. Rewire any of them, or add your own, in the same visual data mapping tool you use for every adapter.

Input / PAYPAL

transaction.id
SalesReceipt.PaymentRefNum
transaction.gross
SalesReceipt.TotalAmt
payer.email
Customer.PrimaryEmailAddr
transaction.created
SalesReceipt.TxnDate
transaction.fee
Expense.TotalAmt

Transforms included

Gross amount posts as revenue and the PayPal fee posts as a separate expense against your fee account, so the sales receipt minus the fee equals the exact net that hits your bank. Currencies and timestamps convert to your QuickBooks company settings.

PayPal to QuickBooks in depth

This route has two governed sides. PayPal caps the extract by date window rather than by a published rate limit, and QuickBooks caps the write by concurrent connections rather than by throughput. Read from PayPal and Intuit documentation on 29 August 2026.

The QuickBooks ceiling is concurrency, not throughput

Intuit allows 500 requests per minute per realmId and a maximum of 10 concurrent connections to the same company file. The concurrency cap is the one teams actually hit, at request volumes nowhere near 500 a minute. A worker pool sized for throughput returns HTTP 429 with errorCode 003001 and ThrottleExceeded, and because each retry opens another connection, scaling out makes the sync slower. Cap in-flight writes at ten.

You share the QuickBooks budget with every other connected app

The allocation is scored on the app and realmId combination, so the customer's other integrations draw from the same per-minute budget. A sync that behaves perfectly in testing can throttle in production purely because the client also runs a payroll app and an inventory app against the same company file. Design for a share of the budget rather than all of it.

Batch the writes, thirty at a time

The QuickBooks batch endpoint accepts up to 30 operations per request and will mix creates, updates and queries in one call. Batch requests are separately throttled at 40 per minute per realm, which works out to 1,200 operations a minute. Writing one sales receipt per request is thirty times more expensive for identical work, so fill each batch rather than sending twice as many half-empty ones.

PayPal caps the read at 31 days and 10,000 records

Transaction Search accepts a maximum range of 31 days and returns at most 10,000 records for it, paged at up to 500 per page. There is no page beyond the record cap, so PayPal's documented answer is to shorten the range. For a merchant posting thousands of transactions a month, the window has to be sized by volume or a month-end catch-up quietly posts an incomplete ledger.

Gross, fee and net are three different ledger entries

PayPal reports the gross amount, the fee it kept and the net that reached your balance. Booking only the net makes the processing fee vanish from the profit and loss entirely, and booking only the gross makes the bank never reconcile. The fee is a merchant fee expense, the refund is a credit memo dated when it was issued rather than when the sale happened, and a dispute is contra-revenue plus a separate dispute fee.

Amounts are decimal strings, unlike Stripe

PayPal sends money as a string with exactly two decimal places plus a separate currency_code, where Stripe sends integer minor units. Any shared helper that divides by a hundred will understate every PayPal figure by two orders of magnitude, and the resulting journal still balances, which is what makes it hard to spot. Branch on the source, always.

Payout timing is not sale timing

A PayPal payout covers a window that does not align to a calendar day and routinely straddles a month boundary. Booking everything on the payout date misstates the period cutoff every month. Book each transaction on its own date and use the payout only to clear the bank deposit, joining on the payout identifier rather than by date.

Reconcile one payout end to end before scheduling

Walk a single real payout from gross through fees, refunds and disputes to the deposit in QuickBooks and confirm it matches to the cent. One payout that reconciles proves the mapping; a green dashboard proves only that requests returned 200. Full limit set on QuickBooks API rate limits, wider category on QuickBooks integration tools.

How it goes live

Moving PayPal data into QuickBooks on flat data integration pricing from $49 a month.

STEP 01

Pick the pair

Authorize a read scope on PayPal and a write scope on QuickBooks, nothing wider.

STEP 02

Confirm the mapping

Check that transaction.id lands in SalesReceipt.PaymentRefNum and transaction.fee in Expense.TotalAmt on a sample record.

STEP 03

Schedule the sync

Turn on the PAYPAL → QUICKBOOKS schedule; failed records retry and every run is logged.

Try it in the live demo Preloads PAYPAL → QUICKBOOKS with sample records

PayPal to QuickBooks sync common questions

Does PayPal integrate with QuickBooks Online?

PayPal transactions can reach QuickBooks through an app or a bank feed, but the common setups import the net deposit and leave the fee buried. Booking gross revenue and the PayPal fee separately is what makes the sales receipt minus the fee equal the deposit.

How do I connect PayPal to QuickBooks?

Authorize both accounts, choose the income account for gross sales and the expense account for PayPal fees, decide whether transactions post as sales receipts or invoices, then pick a schedule. The one decision that matters is keeping fees on their own line rather than netting them.

How do I reconcile PayPal in QuickBooks Online?

Treat PayPal as its own bank account in QuickBooks, post gross sales in and fees out, then record the transfer when you move money to your real bank. Reconciling the PayPal balance separately is what stops the fee difference reappearing on every statement.

How do I record PayPal fees in QuickBooks?

Post the fee as an expense to a merchant fee account on the same date as the transaction, not as a reduction of income. Netting fees into revenue understates both sides of the income statement and makes any later fee analysis impossible without reopening the period.

How does the PayPal to QuickBooks sync work?

The PayPal QuickBooks integration from Adapters posts PayPal sales, refunds, and fees into QuickBooks as sales receipts and expenses, so the net deposit matches your bank feed. Setup is no-code, so try it against sample records in the live demo.

How much does the PayPal QuickBooks integration cost?

The PayPal to QuickBooks pair is included on every plan: Starter $49, Growth $149, Scale $399 a month. You pay per plan, not per row or task, so a busier month costs the same.

Do I need to write code to connect PayPal and QuickBooks?

No. Fields are auto-mapped the moment you pick the pair, and you can rewire any mapping visually before the first sync. Gross amount posts as revenue and the PayPal fee posts as a separate expense against your fee account, so the sales receipt minus the fee equals the exact net that hits your bank. Currencies and timestamps convert to your QuickBooks company settings.

PayPal and QuickBooks, finally in agreement

Map the 5 PayPal fields once, starting with transaction.id into SalesReceipt.PaymentRefNum, and the sync into QuickBooks runs on schedule. Flat price from $49 a month, no per-task fees.

The live demo needs no card, and Starter is $49 a month.

Get started