Skip to main content
More Stripe documentation

ERPClaw Stripe Connect Fees: Fields, Flows, and Events

Configure ERPClaw for Stripe Connect direct charges, destination charges, and separate charges and transfers, including fields, events, refunds, transfers, and payouts.

If you run a marketplace or platform on Stripe Connect, you have an extra layer of complexity in your accounting: application fees, transfers, reverse transfers, and connected account payouts.

This page documents the three Stripe Connect patterns and how ERPClaw handles each.

Use this reference for Stripe objects, ERPClaw configuration, events, refund flags, and ledger flow. For the accounting analysis and worked journal logic, read the Stripe Connect accounting guide.

Primary Stripe references: direct charges, destination charges, separate charges and transfers, the Connect charge types overview, and refund and dispute handling.

The three Connect patterns

Stripe Connect supports three ways to split a payment between your platform and a connected account.

Pattern 1: Direct charges

The customer’s payment is charged on the connected account’s books. Your platform takes a cut as application_fee_amount. Stripe deducts its processing fee from the connected account in this worked example, where that account is configured as the Stripe fee payer.

Customer pays $100. Your application fee is $10. Stripe fee is $3.20.

Connected account’s books:

Account Debit Credit
Stripe Clearing $86.80
Stripe Fees $3.20
Application Fee $10.00
Revenue $100.00

Your platform’s books (separate ERPClaw account):

Account Debit Credit
Stripe Clearing $10.00
Application Fee Revenue $10.00

Use --pattern direct when configuring Connect.

Pattern 2: Destination charges

The customer’s payment is charged on your platform’s books. You specify a transfer_data.destination (the connected account) and a transfer_data.amount (how much to transfer).

Customer pays $100. You transfer $90 to the connected account (retaining $10 as platform revenue). Stripe’s processing fee comes off your platform’s side.

Your platform’s books:

Account Debit Credit
Stripe Clearing $96.80
Stripe Fees $3.20
Revenue $100.00

The transfer is a separate event:

Account Debit Credit
Connect Transfer $90.00
Stripe Clearing $90.00

The transfer is a separate event that hits clearing and connect transfer.

Connected account’s books:

Account Debit Credit
Stripe Clearing $90.00
Revenue $90.00

Use --pattern destination when configuring Connect.

Pattern 3: Separate charges and transfers

You charge on your platform first, then transfer separately at any later time. Maximum control.

Customer pays $100, charged on your platform:

Account Debit Credit
Stripe Clearing $96.80
Stripe Fees $3.20
Revenue $100.00

Later, you transfer $90 to the connected account:

Account Debit Credit
Connect Transfer Pending $90.00
Stripe Clearing $90.00

When the transfer settles on the connected side, ERPClaw posts on the connected account:

Account Debit Credit
Stripe Clearing $90.00
Revenue $90.00

And on the platform side, the pending transfer becomes an actual transfer:

Account Debit Credit
Connect Transfer $90.00
Connect Transfer Pending $90.00

Use --pattern separate when configuring Connect.

Refunds in each pattern

Direct charge refund

The refund happens on the connected account. Application fee may or may not be refunded depending on refund_application_fee=true.

If application fee refunded:

Connected account:

Account Debit Credit
Stripe Clearing $10.00
Application Fee $10.00

The customer refund is a separate event:

Account Debit Credit
Revenue $100.00
Stripe Clearing $100.00

The original $3.20 processing fee remains in Stripe Fees. It is not reversed under standard pricing.

Platform:

Account Debit Credit
Application Fee Revenue $10.00
Stripe Clearing $10.00

If application fee NOT refunded (you keep your cut even on refund):

Platform: no journal entry. The $10 stays on your books.

Destination charge refund

Refund happens on platform. Optionally reverse_transfer=true to also reverse the transfer to the connected account.

If reverse_transfer=true:

Platform:

Account Debit Credit
Revenue $100.00
Stripe Clearing $100.00

Then a Connect Transfer reversal moves the $90 back from the connected account to platform clearing. The original $3.20 processing fee remains in Stripe Fees, so the platform still bears that cost.

If reverse_transfer=false: connected account keeps the $90; platform absorbs the loss.

Separate refund

Reverse the charge first, then optionally reverse the transfer. Most flexible but requires more discipline.

Application fee refund only

Stripe lets you refund only the application fee without refunding the charge itself. This is useful when you over-charged a marketplace fee.

Platform:

Account Debit Credit
Application Fee Revenue $5.00
Stripe Clearing $5.00

The $5 is moved from your platform back to the connected account.

Multi-account dashboard

If you connect multiple Stripe accounts (your platform plus several connected accounts), each gets its own ERPClaw stripe_account row with its own GL account namespace. Reports can be run per-account or consolidated.

erpclaw stripe-list-accounts
erpclaw stripe-revenue-summary --account-id <platform-id>
erpclaw stripe-revenue-summary --account-id <connected-id>

When to choose which pattern

Direct charges: when each connected account has its own customer relationship, brand, and tax ID. Marketplace style (Etsy, Airbnb).

Destination charges: when your platform handles the customer relationship, your tax ID is on the receipt, and the connected account is just a payee. SaaS marketplace style (your platform sells, splits revenue with vendor).

Separate charges and transfers: when you need full control over when transfers happen (delayed payouts, escrow, hold-and-release flows).

ERPClaw supports all three, but you choose one per Connect platform during setup. Mixing patterns within one platform is technically possible but produces messy books.

Source