Stripe field allows you to accept payments via your form, or sign people up for subscription plans.

Stripe field has support for coupons, different currencies, charge later, saving customer info for future charges, and of course dynamic amounts which can be set via math formulas.

The use cases are numerous: donation form, class signup form, subscription service, selling e-books, selling t-shirts, donut shop etc ...

Here is a good tutorial on creating a Stripe order form.