# Component: Block Commerce

**Block Commerce component: restrict access using a custom field**

Use the **Block Commerce** component to prevent users from accessing a page based on a custom attribute of the logged-in user.

{% embed url="<https://69c2cf3a42a094f3cd354b8d-ojozztnsdo.chromatic.com/?path=/story/shop-components-dialogs-block-commerce--default&full=1&shortcuts=false&singleStory=true&embed=true>" %}

## Pre-requisite:

* This component must be used on a Page set to **Authenticated**. Learn more at: [https://docs.limio.com/product/authentication/authentication-provider-per-page](https://docs.limio.com/product/authentication/authentication-provider-per-page "mention")
* This component checks the `userDetails` object, which is a representation of the authenticated user.
  * `userDetails` is populated by your authentication provider via the JWT token.
  * You must configure your authentication system to include `custom:allow_commerce` attribute as a claim in the JWT token and set it to `"false"`. The component will then block the user from accessing the page.
  * Learn more about how to set up JWT tokens and claims in Limio: [https://docs.limio.com/product/authentication/sso-your-authentication](https://docs.limio.com/product/authentication/sso-your-authentication "mention").

## Props

| **id**          | **label**    | **type** | **default**                                                                                     |
| --------------- | ------------ | -------- | ----------------------------------------------------------------------------------------------- |
| **heading**     | Heading      | string   | Something went wrong                                                                            |
| **body**        | Body         | richtext | It looks like you're not eligible for this purchase. Go to your account to update your details. |
| **label**       | Button Label | string   | My account                                                                                      |
| **url**         | Button URL   | string   | /mma                                                                                            |
| **componentId** | Component Id | string   | block-purchase-dialog-limio                                                                     |


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.limio.com/components/component-library/standard-components/component-block-commerce.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
