FloPay Backend Changelog

Client-facing updates for FloPay backend and API releases.

v1.7.29 - Purchases from unlinked provider customers now book under their client #

Purchases whose provider customer was never attached to a Flo user were recorded without a client, hiding them from client views and leaving the Flo fee unresolved; they now adopt the owning gateway's client.

28 Aug 2026

Fix
Transactions
Billing
Reliability

When a provider webhook books a purchase for a customer that Flo has never linked to a user, the transaction previously arrived without a client. Those rows were invisible in client-scoped transaction lists and exports, and the Flo transaction fee could not be resolved for them — every replay of the same webhook repeated the failure.

What changed

  • The transaction ledger now books such purchases under the client that owns the gateway the movement was signed by. A client supplied by the caller, or already present on the row, is never overridden.
  • Flo fee resolution reports a purchase with no client link as missing_client_id (with the gateway) instead of as missing billing terms, so the two conditions are distinguishable.

Developer notes

  • Applies to every ledger path (Stripe and PayPal webhooks, API checkout, scheduler renewals).
  • Rows recorded before this release keep their empty client until repaired; a repair runbook follows separately.
  • No schema change and no change to any SDK-facing contract.