Flow payments is an enterprise feature. Contact us to enable it for your environment.
Who does what
A payment involves your server, the payer, and Dynamic. Each one does a different part of the work.
Your server keeps the API token. The payer’s page needs only the flow ID to start, and it receives a short-lived session token when the payer chooses a source. Access and data explains what each credential allows.
Everything you configure when you create a flow is fixed from then on. The payer can change their payment source before paying, and in
deposit mode they can also change the amount. Payment lifecycle and states lists what can change and until when.
Modes
You choose a mode when you create the flow, and it cannot change afterwards. The mode decides who sets the amount and in which currency.
Only
deposit mode accepts an amount change. A quote that changes the amount in any other mode is rejected.
The mode also decides what happens when less than the requested amount arrives. A deposit flow accepts the smaller amount and settles it, while a payment flow does not. Amounts you will see describes both cases.
Payment sources
The payer pays from one of three sources, and your UI decides which ones to offer.
Every Flow payment includes risk screening by default, and only wallet sources are screened. Payment sources compares the three and explains what each requires.
How you know a payment worked
A flow has no single status. It reports progress on three independent axes:- Execution tracks what the payer and their source did, from
initiatedtosource_confirmed. - Settlement tracks delivery to your destination, from
nonetocompleted. - Risk records the screening result:
unknown,cleared, orblocked.
settlementState is completed. Execution reaching source_confirmed means the payer’s funds arrived, but delivery to your destination can still be in progress. Your server learns about each change from webhooks, and Payment lifecycle and states describes every state.
Choose your path
Payment lifecycle and states
Every state, what moves a flow between them, and what can change.
Payment links
Share a link instead of building a payment page.
API guide
Create and complete a flow with HTTP requests.
JavaScript SDK
Run a payment from a web or React Native app.
Flutter SDK
Run a payment from a Flutter app.