# `Stripe.Params.Issuing.CardUpdateParams.SpendingControls`
[🔗](https://github.com/jeffhuen/tiger_stripe/blob/main/lib/stripe/params/issuing/card_update_params.ex#L130)

Nested parameters.

# `t`

```elixir
@type t() :: %Stripe.Params.Issuing.CardUpdateParams.SpendingControls{
  allowed_categories: [String.t()] | nil,
  allowed_merchant_countries: [String.t()] | nil,
  blocked_categories: [String.t()] | nil,
  blocked_merchant_countries: [String.t()] | nil,
  spending_limits:
    [Stripe.Params.Issuing.CardUpdateParams.SpendingControls.SpendingLimits.t()]
    | nil
}
```

* `allowed_categories` - Array of strings containing [categories](https://docs.stripe.com/api#issuing_authorization_object-merchant_data-category) of authorizations to allow. All other categories will be blocked. Cannot be set with `blocked_categories`.
* `allowed_merchant_countries` - Array of strings containing representing countries from which authorizations will be allowed. Authorizations from merchants in all other countries will be declined. Country codes should be ISO 3166 alpha-2 country codes (e.g. `US`). Cannot be set with `blocked_merchant_countries`. Provide an empty value to unset this control.
* `blocked_categories` - Array of strings containing [categories](https://docs.stripe.com/api#issuing_authorization_object-merchant_data-category) of authorizations to decline. All other categories will be allowed. Cannot be set with `allowed_categories`.
* `blocked_merchant_countries` - Array of strings containing representing countries from which authorizations will be declined. Country codes should be ISO 3166 alpha-2 country codes (e.g. `US`). Cannot be set with `allowed_merchant_countries`. Provide an empty value to unset this control.
* `spending_limits` - Limit spending with amount-based rules that apply across any cards this card replaced (i.e., its `replacement_for` card and _that_ card's `replacement_for` card, up the chain).

---

*Consult [api-reference.md](api-reference.md) for complete listing*
