Skip to content

Payment integrations

Payment integrations is where donations are switched on and switched off. It connects Stripe so gifts can be charged, sets the processing-fee rules donors see, and provides a freeze switch for emergencies. The page is admin-only; plain staff do not see it in the sidebar.

Stripe here handles incoming payments only. Outbound payouts are connected per organization with Wise — see the Outbound payouts card at the bottom of this page and Payout integrations.

The cards at the top show whether charging is possible at all.

  • TokenEx — the card vault. Shows Configured or Not configured, and a “Transparent gateway” line with Ready or Not set. Live card charges need both.
  • Dev stub — a stand-in processor, Enabled or Disabled. It is only ever available when the API runs in development or test mode and is never active in production.

Each existing Stripe integration has a tab-style button named for its source and account holder, and shows “ (inactive)“ when production is frozen. New integration adds another.

Source is locked to Stripe — it is the only processor today. Account holder is the organization the integration belongs to and must be chosen before anything can be saved.

Two environment columns sit below, and only one is ever editable: the one matching the deployment you are signed into. A sandbox deployment edits sandbox credentials; a live deployment edits production. The other column is a read-only note telling you where that environment is managed. If the database is read-only, both columns show Read-only and credential changes are disabled.

  • Production credentials — badge Frozen, In use, or Not connected; the keys row with its last-updated date; the webhook path to register in Stripe; and Save production.
  • Sandbox testing — the same key management, always active, with no freeze control.

The credentials dialog takes three required fields, each at least 8 characters: Publishable key, Secret key, and Webhook secret. Keys must match their environment — production keys start pk_live_ and sk_live_, sandbox keys pk_test_ and sk_test_, and the dialog warns if they do not.

Freeze processing is a kill switch. Pressing it stops that integration processing donations immediately — no confirmation, no delay — and it does not touch the stored credentials. The caption changes to “Frozen — donations route elsewhere until this resumes.” Resume processing turns it back on the same way.

Use it when credentials may be compromised or when charging must stop now and you cannot wait for a key replacement.

Fee rules set what donors are asked to cover, per payment type: Credit card, Debit card, ACH, and Bank transfer. Each takes a percentage and a fixed fee in cents, for example “Credit card 2.9% + 0.30 USD”. Press the pencil icon to edit inline and Done to return to the summary.

A rule with zero percent and zero fixed fee is not saved — leaving both fields blank removes the rule.

Below the rules, a readout compares what the rules should have booked against what Stripe actually charged, over the last several days, and shows the drift between them. Drift is a health check on the rate configuration: a small drift is normal rounding, but a growing or one-sided drift means the configured rates no longer match what the processor charges, and the fee rules need reviewing.

The Outbound payouts card summarises every organization’s Wise connection as badges — wise production, or wise sandbox — not connected. Manage connections takes you to that organization’s own payout-integrations page, because payout credentials belong to organizations, not to the platform.

Related: Transactions and payouts, Payout integrations, Staff administration.