The capture_payment_session endpoint should be called after create_payment_session
has been called with kind of authorization as outlined in Manual/Delayed Capture.
The failure or success status is communicated to the partner via a payment_session_complete
webhook as before.
The total_amount field will often not be the sum of the order_item[*].price fields, as you may be charging additional
fees or including taxes.
total_amount (Required) - The total amount in cents to charge the user, inclusive of taxes and fees being collected by the partner. Must be less than or equal to the total_amount passed in when creating the payment session.
HTTP Status: 200
id - The unique ID for this session capture. This same ID will be returned if the endpoint is called with the same idempotency_key. Associate this id with your internal representation of a checkout session, if applicable.HTTP Status: 400
If a field is missing or the request otherwise can’t be processed, we’ll return a 400 with the following fields:
error - can be one of:
MissingField: One of the required fields is not present in the request.TotalAmountInvalid: The total_amount field is either not greater than or equal to the sum of the order_item amount fields, is 0, is negative, or is greater than the total_amount passed in when creating the payment session.PaymentSessionDoesNotExist: The payment_session_id does not exist.ServerError: There was an internal server error. Requests can be retried as long as the idempotency_key is the same.SessionVoided: The session has already been voided via a call to /payment_session/{payment_session_id}/void.SessionExpired: The auth hold has expired and we were unable to recharge the customer for the amount requested.SessionPending: The user hasn’t completed the Truemed checkout flow (survey, CC entry form).SessionCaptured: You’re attempting to capture a payment_session that has already been captured. This error will never be returned if reissuing a capture call with the same idempotency key - the return value will be the same as the first call.ImmediateCapture: The caller is attempting to void a payment_session that wasn’t created with kind=authorization.message - Indication of which field was missing, details on how the total amount was invalid, or details on voided sessions.Sales channel API key for merchant server-to-server authentication
The UUID of the payment session returned by create_payment_session.
The total amount in cents to charge the user, inclusive of taxes and fees being collected by the partner. Must be less than or equal to the total_amount passed in when creating the payment session. If an amount more than the initial authorization should be captured, void the initial auth hold and create a new one.
The unique ID for this session capture. This same ID will be returned if the endpoint is called with the same idempotency_key. Associate this id with your internal representation of a checkout session, if applicable.