Fee policy
Apex charges a few fees on the Partner Network. All are editable by the Apex team — you see your current rates in the dashboard + can negotiate custom rates for enterprise volume. Fees are snapshotted at approval, so a rate change never re-prices commissions you've already approved.
The fees
The table below reflects your account's live rates (edited in /admin/pricing), not a static list:
| Fee | Rate | When it's charged |
|---|---|---|
| Facilitation (per payout) | 1.5% + $0.50 | Each merchant→partner payout. A second transfer moves the fee to Apex. |
| Active account (per month) | $2.00 | Per partner who received a payout that month (Stripe Connect passthrough, at cost). Inactive partners are free. |
| Instant payout (optional) | 1% + $0.50 | When a partner elects instant payout instead of standard ACH. |
| Identity verification | Included | Stripe Identity verification (Stripe's cost is ~$2.50) is currently absorbed by Apex — not charged to partners. |
Live rates from your Apex account. Enterprise volume can negotiate custom rates.
Where to see your current rate
Dashboard: /dashboard/partners/stripe-connect shows a "Your fees" card with all three rates. Any enterprise override is tagged with a Custom badge.
SDK:
const { fees } = await apex.getEffectiveFees();
// {
// facilitation_payout: { bps: 25, flatUsd: 0.5, source: "platform_default", isCustom: false },
// identity_verification: { flatUsd: 2.5, source: "platform_default", isCustom: false },
// instant_payout: { bps: 100, flatUsd: 0.5, source: "platform_default", isCustom: false },
// }
Fee resolution order
Per fee kind, the resolver picks the highest-priority match:
- Merchant override — explicit per-merchant rate (enterprise deals)
- Platform default — the global default everyone gets
- Hardcoded fallback — baked into code; used if no policy records exist
source field tells you which level hit. A merchant-override rate shows source: "merchant_override" and isCustom: true.
How fees are snapshotted
When you approve a payout, the fee resolved at that moment is snapshotted on the HoldbackEntry. Admin edits to the platform fee after approval don't change what you owe on already-approved commissions.
This gives you:
- Deterministic per-payout fees — if a partner gets approved on Monday at 25 bps and you negotiate to 15 bps on Tuesday, Monday's batch still uses 25 bps.
- Audit clarity — the fee on every batch is explainable from the entry's record.
Enterprise pricing
Volume merchants (typically $100K+/month in partner payouts) can negotiate reduced rates. Reach out to sales@apex.inc — we'll set up a merchant scope override that applies just to your workspace.
Overrides propagate within 60 seconds (in-memory cache TTL). No SDK / dashboard rework needed — the resolver handles it transparently.
Adding a new fee kind
The FeeKind type is an enum. Apex adds new ones (e.g. for additional connectors, new payout rails) over time. The admin UI auto-renders every FeeKind once it's added — no dashboard updates needed.
Related
- Facilitated payouts — where the fee fires
- Approving payouts
- Stripe Connect setup