Skip to main content
AccountEX
All guides
10 min read·Last updated: 2026-04-15·E-commerce · SaaS · Digital freelancers

Stripe, PayPal & Twint: how to account for payment processors

Fees, net payouts, chargebacks, currency conversions and VAT treatment: the complete guide to correctly recording every payment processor transaction in your Swiss accounts.

Why payment processor accounting is complex

If you sell online through e-commerce, offer a SaaS product or work as a digital freelancer, you probably collect payments through Stripe, PayPal or Twint. These processors don't simply transfer money from the customer to your account: they withhold fees, pool funds, apply exchange rates and can reverse payments weeks after collection. Each step creates a distinct accounting entry that must be recorded correctly.

The main difficulty lies in the difference between the gross amount paid by the customer and the net amount that reaches your bank account. Fees are not a simple discount on the price: they are a financial service cost that must be booked separately. Additionally, payout timings vary from 2 to 7 business days, creating mismatches between recorded revenue and bank movements.

In Switzerland, the VAT treatment of payment processor fees follows specific rules (Art. 21 para. 2 no. 19 VAT Act), and foreign currency transactions require recording exchange rate differences. This guide explains step by step how to handle every aspect in your accounting.

How payment processors work

Before recording any transaction, it's essential to understand the money flow that occurs when a customer pays through a processor. Here are the 5 key steps:

1

Customer pays

The customer completes payment by credit card, Twint or PayPal. The gross amount (e.g. CHF 100.00) is charged to the customer. At this point the revenue is earned, but the funds are not yet in your account.

2

Processor collects and holds

Stripe, PayPal or Twint receive the funds and hold them in an internal transit account (escrow). The amount is visible in the processor dashboard but not yet available for withdrawal.

3

Fee deduction

The processor deducts its fees from the gross amount. For example, Stripe withholds 2.9% + CHF 0.30 per European card transaction. On CHF 100.00 the fee is CHF 3.20, leaving a net of CHF 96.80.

4

Payout to bank account

After the settlement period (rolling basis: 2–7 days for Stripe, instant or 1–3 days for PayPal, T+1 for Twint), the processor transfers the aggregated net amount to your Swiss bank account.

5

Bank reconciliation

The bank movement corresponds to the net total of multiple transactions. It must be reconciled against the individual invoices/orders and their respective fees to properly close the accounting cycle.

Recording fees and payouts

Each processor has a different fee structure and requires a specific accounting approach. Best practice is to always record gross revenue and book the fee as a separate expense:

ProcessorFee structureBooking methodSuggested accounts
Stripe2.9% + CHF 0.30/txn (EU card); 3.25% + CHF 0.30 (non-EU card); extra for currency conversionGross → Stripe transit account; fee to expense account; net at payout to bank account1101 Stripe Receivables / 6841 Card Fees / 1020 Bank
PayPal2.99% + CHF 0.55/txn (standard); 1.99% + CHF 0.55 (advanced plan); 1.5% currency conversionGross → PayPal transit account; fee to expense account; net at payout or PayPal balance1102 PayPal Receivables / 6841 Card Fees / 1020 Bank
Twint1.3% per transaction (merchant); no additional fixed costsGross → Twint transit account; fee to expense account; net T+1 to bank account1103 Twint Receivables / 6842 Twint Fees / 1020 Bank
PostFinance E-Paymentfrom 1.3% (Twint via PF) to 2.5% (Visa/MC); monthly fee CHF 25–50Gross → PF transit account; fee + monthly charge to expenses; net to PostFinance account1104 PostFinance Receivables / 6843 PF Fees / 1010 PostFinance

Chargebacks, reserves and disputes

Chargebacks (reversals) are among the trickiest aspects of payment processor accounting. Here's how to handle them correctly:

Recording the chargeback

When a customer disputes a payment, the processor reverses the amount from your balance. In accounting terms, the previously recorded revenue must be reversed: debit sales revenue, credit processor transit account. If the chargeback occurs in a subsequent financial year, it should be treated as an extraordinary expense.

Dispute fees

Stripe charges CHF 15.00 per chargeback, PayPal up to CHF 20.00. This fee should be recorded as an additional expense (6844 Dispute Costs) even if you win the dispute — it is often non-refundable.

Processor reserves (rolling reserve)

Some processors withhold a percentage of collections (5–10%) as a reserve for future chargebacks, especially for new or high-risk merchants. The reserve should be booked as a long-term receivable (1105 Processor Reserves) and released when unblocked.

Timing and accrual

A chargeback can arrive up to 120 days after the original payment. To respect the accrual principle, consider creating a provision for expected chargebacks based on historical data (e.g. 0.5–1% of card transaction volume).

Warning: chargebacks impact both the income statement (revenue reversal + fee) and liquidity (funds are immediately withheld by the processor). Monitor your chargeback rate — if it exceeds 1% of transaction volume, the processor may impose additional penalties or terminate the contract.

Multi-currency payments and conversions

If you sell to international customers, you'll receive payments in EUR, USD or other currencies. Here's how to handle conversions in Swiss accounting:

Transaction currency vs. payout currency

The customer pays in EUR, but Stripe credits in CHF. The exchange rate applied by the processor almost never matches the official FTA rate. The difference must be recorded as an exchange rate difference (account 6960 Exchange Rate Differences).

Exchange rate at recording date

Under the CO, revenue must be recorded at the exchange rate on the transaction date (or the monthly average rate accepted by the FTA). If the payout occurs days later at a different rate, the difference generates a foreign exchange gain or loss.

Multi-currency Stripe/PayPal account

Stripe and PayPal allow you to hold balances in multiple currencies and choose when to convert. If you maintain a EUR balance, the transit account must be managed in EUR and revalued at month/year-end at the closing rate.

Currency conversion fees

Stripe adds a 1–2% surcharge above the interbank exchange rate for automatic conversions. PayPal adds 3–4% above the ECB rate. These additional fees should be booked as a separate financial expense (6961 Currency Conversion Costs).

Year-end revaluation

Foreign currency balances held at processors (Stripe EUR receivables, PayPal USD balance) must be revalued at the closing rate on 31 December. The resulting exchange rate differences should be recognised in the income statement as foreign exchange gains or losses.

VAT treatment of processor fees

The VAT treatment of payment processor fees in Switzerland requires particular attention:

Art. 21 VAT Act exemption

Payment service fees are considered exempt financial services under Art. 21 para. 2 no. 19 of the VAT Act (MWSTG). Stripe, PayPal and Twint fees do not include Swiss VAT and do not entitle you to input tax deduction.

Acquisition tax (reverse charge)

If the processor is based abroad (Stripe in Ireland, PayPal in Luxembourg), fees are subject to acquisition tax (Art. 45 para. 1 let. a VAT Act) if total foreign services exceed CHF 10,000 annually. However, since these are exempt financial services, acquisition tax is not due.

Swiss processors (Twint, PostFinance)

Twint SA and PostFinance SA are domiciled in Switzerland. Their fees are VAT-exempt financial services under Art. 21 VAT Act. No VAT is charged and no input tax deduction is available.

VAT on the underlying sale

The processor fee does not affect the VAT to be charged to the customer. If you sell a product for CHF 100.00 + 8.1% VAT, the gross VAT-inclusive revenue is CHF 108.10 regardless of the fee withheld. VAT must be calculated and declared on the gross sale amount.

Note: since processor fees are VAT-exempt, businesses that exclusively perform taxable supplies do not suffer any reduction in input tax deduction (Art. 30 VAT Act). The situation changes for those with a mix of taxable and exempt supplies.

Step-by-step reconciliation with AccountEX

Reconciling the processor statement against the bank movement is the most critical step. Here's the 6-step workflow we recommend in AccountEX:

1

Import processor transactions

Connect Stripe, PayPal or Twint via API to AccountEX. Individual transactions (sales, refunds, fees) are imported automatically with full details: gross amount, fee, net, currency, date.

2

Record gross revenue + fee

For each transaction, AccountEX automatically records the gross revenue to the sales account, the fee to the commission expense account and the net receivable to the processor transit account (e.g. 1101 Stripe Receivables).

3

Import bank movements

Import the bank statement via CAMT.053 or direct connection. The processor's aggregated payouts appear as single movements on the bank account.

4

Match payout ↔ transactions

AccountEX automatically matches the bank payout to the sum of net transactions for the corresponding period. If there's a discrepancy (e.g. chargeback, reserves), the system highlights the difference.

5

Handle exceptions

Chargebacks, partial refunds, manual adjustments and exchange rate differences are flagged for review. One click to confirm or correct the suggested entry.

6

Close the period

Once all transactions are reconciled, the processor transit account balance should be zero (or equal to transactions not yet paid out). AccountEX shows a reconciliation report with the status of every transaction.

7 practical tips for digital payment accounting

  • Create a separate transit account for each processor (Stripe, PayPal, Twint, PostFinance). Mixing balances makes reconciliation impossible and hides discrepancies
  • Always record revenue at gross and the fee as a separate expense — never book the net amount received at the bank as revenue, as this understates turnover and hides real costs
  • Reconcile payouts weekly, not at month-end. Processors aggregate transactions and delayed reconciliation accumulates exceptions that are difficult to resolve
  • Download and archive monthly detailed reports from each processor (Stripe Balance Report, PayPal Activity Report). These are accounting records that must be retained for 10 years under the Olc
  • If you operate in multiple currencies, consider maintaining a EUR bank account to receive Stripe payouts in EUR without conversion — saving the processor's FX fee (1–2%)
  • Monitor your chargeback rate: Visa and Mastercard penalise merchants above 1%. Set up a provision based on historical data (typically 0.3–0.8% of card transaction volume)
  • Use AccountEX to automatically connect Stripe and PayPal via API, import transactions with separate fees and reconcile payouts with one click — eliminating hours of manual work each month

Simplify your Swiss accounting

AccountEX handles VAT, QR-invoices and bookings with AI. Start for free.

Start Free