## Handle a card action

`stripe.handleCardAction(clientSecret: string)`

Use `stripe.handleCardAction` in the Payment Intents API [manual confirmation](https://docs.stripe.com/payments/payment-intents/web-manual.md) flow to handle a [PaymentIntent](https://docs.stripe.com/api/payment_intents.md) with the `requires_action` status. It will throw an error if the `PaymentIntent` has a different status.

> Note that `stripe.handleCardAction` may take several seconds to complete.
> During that time, you should disable your form from being resubmitted and show a waiting indicator like a spinner.
> If you receive an error result, you should be sure to show that error to the customer, re-enable the form, and hide the waiting indicator.
>
> Additionally, `stripe.handleCardAction` may trigger a [3D Secure](https://docs.stripe.com/payments/3d-secure.md) authentication challenge.
> The authentication challenge requires a context switch that can be hard to follow on a screen-reader.
> Ensure that your form is accessible by ensuring that success or error messages are clearly read out.

- `clientSecret`
The [client secret](https://docs.stripe.com/api/payment_intents/object.md#payment_intent_object-client_secret) of the `PaymentIntent` to handle.

### Example

```title Handle a card action ```