You can capture a payment amount from a user before you charge them, ensuring they have the amount needed before they use your product.
A Reserved payment is similar to a regular payment with two major differences:
A Reserved Payment has to be captured
A Reserved Payment can be cancelled
If you'd like to reserve a payment for a Product, define the attribute reserved_price for that product and the BuiltOn API will create a Reserved Payment when that product is placed in an Order. The payment created for that order will have amount_reserved attribute set based on the reserved_price for all products in the Order.
In the customer's bank, the money will be put in a 'reserved' status, but not be withdrawn until the payment is complete.
A Reserved Payment has been created with a Stripe Payment Method will be automatically cancelled by Stripe after 7 days if it is not confirmed (captured).
Capture a Payment
Arguments
Type
Description
reserved_price
float
The amount you want to capture. If it's not defined, then the payment will be charged normally.
Request --POST /payments/<payment_id>/pay HTTP/1.1Content-Type:application/jsonAuthorization:Bearer <admin-jwt> or <Service-Account-key>X-Builton-Api-Key:<builton-api-key>Host:api.builton.dev{"amount_to_capture":240.0}