> ## Documentation Index
> Fetch the complete documentation index at: https://docs.priceos.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Quickstart

> Get a basic PriceOS integration working.

<Steps>
  <Step title="Create an account and integrate Stripe">
    Create a PriceOS account by going to [https://app.priceos.com](https://app.priceos.com).

    Then, integrate your Stripe account which will automatically import all of your products, prices, subscriptions, and customers.

    <Note>If you haven't created any products in your Stripe account yet, please do so or create a [custom product](/custom-products) in PriceOS.</Note>
  </Step>

  <Step title="Create a feature">
    1. Go to the [features page](https://app.priceos.com/features) and click the <b>New Feature</b> button.

    2. Give the feature a name and select a type (Boolean or Limit).

    3. Click the <b>Create feature</b> button.

    <Note>See [Creating Features](/creating-features) to learn more. </Note>
  </Step>

  <Step title="Define feature access">
    After creating a feature, you'll be taken to the feature details page where you can define feature access for each of your products.

    Once you have made your changes, click the <b>Save Changes</b> button.

    <img src="https://mintcdn.com/priceos/2xZRBvWQVNpXClk5/images/defineFeatureAccess.png?fit=max&auto=format&n=2xZRBvWQVNpXClk5&q=85&s=b2dc6e575eee00ec1d17d2543a61c6a7" alt="PriceOS product version page to define feature access rules and save changes" width="786" height="420" data-path="images/defineFeatureAccess.png" />

    <Note>See [Defining Feature Access](/defining-feature-access) to learn more.</Note>
  </Step>

  <Step title="Evaluate feature access">
    Now, you can evaluate feature access in your application.

    <CodeGroup>
      ```tsx React theme={null}
      import { useFeatureAccess } from "priceos/react";
      import type { MyFeatures } from "./priceos.types";

      export function PremiumSupportButton() {
        const { hasAccess, isLoading } =
          useFeatureAccess<MyFeatures>("premium_support");

        if (isLoading) return <button disabled>Loading...</button>;
        if (!hasAccess) return null;

        return <button>Contact priority support</button>;
      }
      ```

      ```ts Node.js SDK theme={null}
      import { PriceOS } from "priceos";

      const priceos = new PriceOS(process.env.PRICEOS_API_KEY!);

      const { hasAccess } = await priceos.features.getAccess(
        "customer_123",
        "premium_support"
      );

      if (!hasAccess) {
        throw new Error("Feature not available");
      }
      ```

      ```bash cURL theme={null}
      curl -X GET "https://api.priceos.com/v1/feature-access?customerId=customer_123" \
        -H "x-api-key: PRICEOS_API_KEY"
      ```
    </CodeGroup>

    <Tip>See our [integration guide](/backend-integration) to learn more about how to integrate PriceOS into your application.</Tip>
  </Step>
</Steps>
