Skip to content
Rechnungskit
PayPal + Rechnungskit

PayPal payments as e‑invoices and DATEV bookings

A PayPal payment is not an invoice yet. Rechnungskit turns it into the e-invoice for the order, archives it under GoBD (the German bookkeeping rules) and hands payment, fee and withdrawal to your tax advisor as separate bookings.

  • ZUGFeRD invoice for the order, a cancellation invoice for every refund
  • PayPal fee booked per payment, withdrawals booked as a transfer
  • Works for PayPal in Shopify and WooCommerce, nothing changes in your shop
Set up in under an hour · free test mode before you go live
The gap

PayPal takes the payment. The invoice is your job.

Every PayPal payment carries its own fee, the money reaches your bank account later as one lump sum, and refunds or buyer protection cases make matching messy. PayPal stays your payment provider. Rechnungskit takes over the invoice, the archive and the bookings.

PayPal alone
  • PayPal processes the payment, but no invoice under EN 16931 comes out of it
  • A fee on every payment, withdrawals as lump sums to your bank
  • Refunds and buyer protection cases without a cancellation invoice or booking
  • No GoBD invoice archive and no booking entries for your tax advisor
With Rechnungskit
  • ZUGFeRD 2.5 under EN 16931, XRechnung for customers with a Leitweg-ID
  • A cancellation invoice for every PayPal refund, buyer protection cases as tasks
  • GoBD archive, tamper-proof and with a SHA-256 checksum
  • DATEV payment batch with its own PayPal transit account and the fee per payment

From the PayPal payment to the booking at your tax advisor

PayPal stays your payment provider. Rechnungskit reads your business account, issues the invoice and hands over the bookings.

Schritt 1:PayPal
Your business account
  • Payments from your shop
  • Payments in Rechnungskit Checkout
  • Fees, refunds, withdrawals
Fetched every few hours
Schritt 2:Rechnungskit
German e-invoice
  • Matched to the order
  • ZUGFeRD 2.5, validated against EN 16931
  • A refund becomes a cancellation invoice
DATEV export
DATEV export
Schritt 3:DATEV
Booking batch per month
  • Revenue by VAT rate
  • PayPal fee per payment
  • Withdrawals through the transit account
Stored alongside
  • GoBD archive with checksum
  • XRechnung for a Leitweg-ID
How it works with PayPal

Four steps from payment to booking.

  1. 01
    Connect
    Connect your PayPal account in a few minutes. No code needed.
  2. 02
    Import
    Rechnungskit imports every PayPal payment and matches it to its order. Without a reference it lands with you for review.
  3. 03
    Erzeugen
    Every payment becomes a validated e-invoice under EN 16931.
  4. 04
    Archive
    The invoice is archived to GoBD standards and is ready for the DATEV export.
Step-by-step guide Connect PayPal Setup step by step, common snags and detailed questions.
Formats & standards

Every format PayPal doesn't deliver.

ZUGFeRD 2.5 Germany live
XRechnung 3.0 Germany (public sector buyers) live
EN 16931 XML EU (OSS) live

What you get with PayPal and Rechnungskit

Rechnungskit reads along in your PayPal business account: payments, fees, refunds, buyer protection cases and withdrawals to your bank. Each payment is matched to the order from your shop. From that comes a validated e-invoice in ZUGFeRD format with your own sequential numbering, stored in the GoBD archive. For customers with a Leitweg-ID (the routing ID German public bodies use for e-invoices), such as government agencies or universities, the same invoice goes out as XRechnung 3.0. If you want, Rechnungskit emails the invoice to your customer in your name.

One detail matters for shops: PayPal only sends notifications for payments that run through the same app. Shopify and WooCommerce collect PayPal through their own integration. So Rechnungskit fetches those payments and refunds from PayPal every few hours instead of waiting for notifications.

Three ways PayPal collects for you
Where Rechnungskit gets your PayPal payments from
PayPal in your shop
Shopify, WooCommerce and others, through their own PayPal integration
How it arrivesfetched every few hours
PayPal in Rechnungskit Checkout
Rechnungskit's payment page, through your own PayPal app
How it arrivesinstantly by signed webhook
PayPal through Mollie or Stripe
PayPal as a payment method inside another payment provider
How it arrivesthrough that connection
In the third case you usually don't need the direct PayPal connection. If it is active anyway, Rechnungskit detects duplicate payments from Mollie and Stripe automatically.

Fees and withdrawals, kept apart

PayPal takes its fee straight off every payment and later sends a lump sum to your bank. Rechnungskit pulls that apart again for your books. Revenue stays at the full invoice amount, the fee is booked per payment as its own expense, and the withdrawal runs as a transfer from the PayPal transit account to the bank. In the end the transit account sits at zero, and your tax advisor can reconcile it directly against the PayPal statement.

Example · made-up amounts
One PayPal payment, clean bookings
EventIn the DATEV export
Invoice€119.00 revenue and VAT in the revenue batch
Payment€119.00 to the PayPal transit account
Fee€3.95 its own booking, per payment
Withdrawal€115.05 transfer to your bank account
AfterPayPal transit €0.00
The booking entries with account numbers for SKR03 and SKR04 are in the booking example in the guide. All accounts are defaults, and your tax advisor can change them.

How the month runs with your tax advisor is shown under DATEV export.

Setup in three steps

You connect through an app of your own in your PayPal business account. No programming needed:

  1. In the PayPal Developer Dashboard, under Live, create an app, for example named "Rechnungskit".
  2. In the app, tick Transaction search. It is off by default.
  3. Enter the Client ID and Secret in Rechnungskit under Connections → Connect. Rechnungskit sets up the webhook itself.

Rechnungskit, Connections → Connect: the connected PayPal card showing "Live mode" and "Webhook active", with the PayPal Client ID and Secret Key fields below

After you switch it on, PayPal releases the transaction data with a delay of up to 9 hours, so you often see the first payments the next morning. Every click with screenshots, the common snags and what the error messages mean are in the guide Connect PayPal.

Limits, stated plainly

  • Payments from your shop arrive through the fetch every few hours, not in real time. Only payments through Rechnungskit Checkout arrive instantly by webhook.
  • Rechnungskit moves no money in your account: it triggers neither payments nor refunds. Only if you offer PayPal in Rechnungskit Checkout does it process your buyer's payment there.
  • Without the Transaction search box ticked, payments, fees and withdrawals from your shop stay incomplete.
FAQ

PayPal and e-invoicing: FAQ

Yes. Rechnungskit reads the fee of every payment and books it in the DATEV payment batch on the payment date, as a bank charge against the PayPal transit account (default SKR03 4970, SKR04 6855). Revenue stays at the full amount your customer paid. The fee is never netted against it.
More integrations
The same validated pipeline for your whole stack.

Rechnungskit is not a tax advisory or law firm. This article explains general principles and does not replace advice from a tax advisor (Steuerberater, § 5 StBerG) or a lawyer (§ 3 RDG). Rechnungskit is built for businesses based in Germany and prepares documents, tax rates and bookings automatically. How your specific case is treated remains your decision, ideally together with your tax advisor or a lawyer.

Connect PayPal, e-invoicing done.

Create an account, connect your payment provider, check everything in free test mode. Billing starts when you go live.

Try it now
de en