Initialize a Flutterwave v4 campaign charge
Starts the direct-card Flutterwave v4 charge flow for a public campaign donation. The controller creates or refreshes a frontend session, validates card or saved-payment-method input, validates designation items against the client/program, enforces checkout settings such as single-designation mode, creates or reuses a Flutterwave customer/payment method, creates the charge, stores charge state in Redis, and returns the provider charge status plus any next action. Existing donors must verify their checkout session before using saved payment methods.
Path Parameters
Client id that owns the campaign program, gateway configuration, entities, and checkout session.
Campaign program id. Designation entity ids must belong to this program.
Optional Redis frontend session id used to store and later validate the Flutterwave charge state.
Body
Campaign checkout card details or saved payment method plus designation amount data.
Donor email. Validator rule: required|email.
"jane@example.org"
Payment method family. Validator rule: required|string|in:credit_card.
credit_card "credit_card"
Saved Flutterwave payment method id. When present it replaces card field requirements and must belong to a verified session donor.
"pm_123"
Card number required when payment_method is absent. Alias number is normalized to this field.
"5531886652142950"
Card CVV required when payment_method is absent.
"564"
Two-digit card expiry month required when payment_method is absent. Aliases are normalized from expiryMonth or cardExpiry.
"09"
Two-digit card expiry year required when payment_method is absent. Aliases are normalized from expiryYear or cardExpiry.
"32"
Optional cardholder name. If absent, first and last name are combined.
"Jane Donor"
Preferred campaign cart format. Validator rules require at least one item when present.
Fallback single-designation entity id required when designations is absent.
4711
Fallback amount required without designations unless donation_amount is supplied.
x >= 0.0150
Legacy fallback amount alias required without designations unless amount is supplied.
x >= 0.0150
Optional extra designation gifts admitted by the checkout program and donor form.
Peer-to-peer override that can allow multiple designations even when program settings normally disallow them.
true