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

# Create Stripe price

> <Info>This API is in beta. Endpoints, fields, and behavior may still change, so avoid depending on it in production.</Info>

Creates a one-time or recurring price. Retrying the request can create another price. Requires write access to the app. Workspace viewers cannot call this operation. Uses the Stripe account selected by the app's stored credentials. Live keys select the live catalog and test keys select the test catalog. Products and prices belong to that Stripe account, so apps configured with the same account share its catalog.



## OpenAPI

````yaml /developers/references/app-management/app-management-openapi.json post /api/apps/{app_id}/payments/stripe/prices
openapi: 3.1.0
info:
  title: Base44 App Management API
  version: 1.0.0
servers:
  - url: https://app.base44.com
security:
  - ApiKeyAuth: []
paths:
  /api/apps/{app_id}/payments/stripe/prices:
    post:
      summary: Create Stripe price
      description: >-
        <Info>This API is in beta. Endpoints, fields, and behavior may still
        change, so avoid depending on it in production.</Info>


        Creates a one-time or recurring price. Retrying the request can create
        another price. Requires write access to the app. Workspace viewers
        cannot call this operation. Uses the Stripe account selected by the
        app's stored credentials. Live keys select the live catalog and test
        keys select the test catalog. Products and prices belong to that Stripe
        account, so apps configured with the same account share its catalog.
      operationId: create_price_api_apps__app_id__payments_stripe_prices_post
      parameters:
        - name: app_id
          in: path
          required: true
          schema:
            type: string
            description: ID of the Base44 app.
            title: App Id
          description: ID of the Base44 app.
          example: 6820f3a4e7b91d003c45a1f2
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreatePriceRequest'
      responses:
        '200':
          description: The operation result.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StripeCatalogPrice'
        '400':
          description: Stripe keys are missing, or the app's test sandbox has expired.
        '401':
          description: Missing or invalid credentials.
        '403':
          description: >-
            The credential is not permitted or you don't have the required app
            access. A missing app also fails the app access check.
        '404':
          description: The app is outside the credential's granted workspace.
        '409':
          description: The workspace requires an unlocked SSO session.
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    CreatePriceRequest:
      properties:
        product_id:
          type: string
          title: Product Id
          description: Stripe product ID to price.
          example: prod_T7mK2p9Q4r6S8v
        unit_amount:
          type: integer
          title: Unit Amount
          description: >-
            Amount in the currency's smallest unit. For USD, `2500` represents
            $25.00.
          example: 2500
        currency:
          type: string
          title: Currency
          description: >-
            Three-letter ISO 4217 currency code. Converted to lowercase before
            sending to Stripe. Defaults to `usd`.
          default: usd
          example: usd
        recurring_interval:
          anyOf:
            - type: string
            - type: 'null'
          title: Recurring Interval
          description: >-
            Billing interval. Use `day`, `week`, `month`, or `year`. Omit it or
            send `null` for a one-time price. Defaults to `null`.
          example: month
        recurring_interval_count:
          type: integer
          title: Recurring Interval Count
          description: >-
            Number of billing intervals between charges. Used only when a
            recurring interval is supplied. Defaults to 1.
          default: 1
          example: 1
        metadata:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Metadata
          description: >-
            Metadata to store. Use string values accepted by Stripe. Defaults to
            `null`. Omitted or null metadata leaves an existing value unchanged
            on update.
          example:
            tier: standard
      type: object
      required:
        - product_id
        - unit_amount
      title: CreatePriceRequest
      description: Request to create a Stripe price.
    StripeCatalogPrice:
      properties:
        id:
          type: string
          title: Id
          description: Stripe price ID.
          example: price_1T7mK2Q4r6S8v9Ab
        product:
          type: string
          title: Product
          description: Stripe product ID this price belongs to.
          example: prod_T7mK2p9Q4r6S8v
        unit_amount:
          anyOf:
            - type: integer
            - type: 'null'
          title: Unit Amount
          description: >-
            Amount in the currency's smallest unit, or `null` for pricing
            without a fixed integer unit amount.
          example: 2500
        currency:
          type: string
          title: Currency
          description: Currency as a lowercase three-letter ISO 4217 code.
          example: usd
        active:
          type: boolean
          title: Active
          description: Whether the price is active.
          example: true
        metadata:
          additionalProperties: true
          type: object
          title: Metadata
          description: Metadata stored on the price.
          example:
            tier: standard
        recurring:
          anyOf:
            - $ref: '#/components/schemas/StripeCatalogRecurring'
            - type: 'null'
          description: Billing schedule, or `null` for a one-time price.
          example:
            interval: month
            interval_count: 1
            usage_type: licensed
      type: object
      required:
        - id
        - product
        - unit_amount
        - currency
        - active
        - metadata
        - recurring
      title: StripeCatalogPrice
      description: A price in the Stripe account configured for the app.
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    StripeCatalogRecurring:
      properties:
        interval:
          type: string
          title: Interval
          description: Billing interval. Either `day`, `week`, `month`, or `year`.
          example: month
        interval_count:
          type: integer
          title: Interval Count
          description: Number of intervals between bills.
          example: 1
        usage_type:
          type: string
          title: Usage Type
          description: Usage model. Either `licensed` or `metered`.
          example: licensed
      type: object
      required:
        - interval
        - interval_count
        - usage_type
      title: StripeCatalogRecurring
      description: The recurring billing schedule of a Stripe price.
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: api_key
      description: Personal API key.

````