Complete checkout for an already logged-in donor
Completes a public checkout for a donor already marked logged in in the Redis session. The controller validates amount, payment method, and frequency, clears previous cart state, writes the selected entity and frequency into Redis, requires a saved card when method 3 is used, creates the sponsorship/commitment and donation order, then clears the checkout cart. The Redis session must resolve to a donor belonging to this client; otherwise the endpoint returns 401.
Path Parameters
Client id that owns the donor, program, entity, and resulting donation records.
Program id or program tree id used by Program::getPrograms() when creating sponsorships.
Entity id the donor is sponsoring or donating to.
Redis donor session id. The session must contain logged_in=true and a donor_id for checkout to complete.
Body
Donation or sponsorship amount. Validator rule: required|numeric|min:5.
x >= 535
Payment method code. Validator rule: required; method 3 requires a saved Stripe customer.
"3"
Frequency code for the entity donation/commitment. Validator rule: required; 5 is treated as one-time in the success message.
5
Optional check reference. Validator rule: nullable|string|max:100.
100"1042"
Optional flag passed to sponsorship creation to indicate per-period custom amount behavior.
false