Capture Payments

In this guide, you will find step-by-step instructions on manually capturing a previously created payment on Yuno.

📘

Automatic Delayed Capture

If you prefer to have Yuno automatically capture payments after a specified delay, you can configure delayed_capture_settings when creating the payment. Learn more in the Cancel and Capture Flow guide.

🚧

Which payments can you capture

Only payments with PENDING status can be captured. Check the Payment status page for further details regarding the possible payment status.

Requirements

To capture a payment, you need to:

  • Access your API credentials on the Yuno Dashboard, which consist of:
    • public-api-key
    • private-secrete-key
  • Have the payment identification data received after creating the payment using the Create Payment endpoint:
    • id: The unique identifier of the payment, obtained from the parameter id after creating the payment.
    • transaction_id: The unique identifier of the transaction obtained from the parameter transaction.id after creating the payment.
📘

Explore Yuno Postman Collections

Yuno provides Postman Collections that you can use to replicate the use cases locally.

💡

Capture Options

This guide covers manual capture using the API endpoint. For other capture options including:

  • Real-time capture (immediate purchase)
  • Delayed capture (automatic capture after a delay)

See the Cancel and Capture Flow guide.

Capture a Payment

You can capture a payment only if it has the PENDING status. Use the Capture Payment endpoint to capture the payment. To identify the payment to be captured, you need to provide its id and the transaction_id. In addition, you need to inform the amount to be captured using the object amount on the body request:

  • Complete refund: Leave the amount empty.
  • Partial refund: Provide the refund value using the parameter amount.

To confirm you have successfully captured the payment, check if the parameters from the Capture Payment endpoint response contain the following values:

  • type = CAPTURE
  • status = SUCCEEDED
  • payment.status = SUCCEEDED
  • payment.sub_status = CAPTURED/PARTIALLY_CAPTURED

If the response contains the above values, the capture was successful.

Check the payment status

If, for some reason, you need to confirm the payment cancelation: