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

# Create Stripe Release Checkout

> Access: authenticated organization users. Gateway availability depends on organization settings.

Starts a Stripe Checkout session to pay for a single release under the Pay-Per-Release plan.
For API usage, you must provide both `cancel_url` and `success_url`.



## OpenAPI

````yaml /api-reference/openapi.json post /api/v1/order/{release}/checkout/stripe
openapi: 3.1.0
info:
  title: SpaceMedia Public API
  version: 1.0.0
  description: >-
    Production public API reference for SpaceMedia organization admins,
    permitted team members, end users, and API clients. The spec excludes
    SpaceMedia system/backoffice routes and cross-organization selectors.
  contact:
    name: SpaceMedia Support
    email: whitelabel@spacemedia.uk
    url: https://spacemedia.uk/contact
servers:
  - url: https://enterprise.spacemedia.uk
    description: Production
security:
  - bearerAuth: []
tags:
  - name: Authentication
    description: 'Access: API client credential flow.'
    x-mint:
      icon: key
  - name: Account Settings
    description: 'Access: authenticated organization user.'
    x-mint:
      icon: settings
  - name: Reference Data
    description: 'Access: authenticated organization users and API clients.'
    x-mint:
      icon: globe
  - name: Artists
    description: >-
      Access: organization users with artist permissions; `X-User-Id` may target
      a same-organization user where allowed.
    x-mint:
      icon: mic
  - name: Releases
    description: >-
      Access: organization users with release permissions; `X-User-Id` may
      target a same-organization user where allowed.
    x-mint:
      icon: disc
  - name: Tracks
    description: >-
      Access: organization users with track permissions; `X-User-Id` may target
      a same-organization user where allowed.
    x-mint:
      icon: music
  - name: Revenue Splits
    description: >-
      Access: organization users with revenue split permissions; admins see
      organization splits and end users see allowed splits.
    x-mint:
      icon: percent
  - name: User Management
    description: >-
      Access: organization admins or users allowed by user policies.
      Cross-organization selectors are excluded from this public spec.
    x-mint:
      icon: users
  - name: Plans & Upgrades
    description: >-
      Access: organization admins for plan lists; authenticated end users for
      upgrade options.
    x-mint:
      icon: package
  - name: Billing & Checkouts
    description: >-
      Access: authenticated organization users. Gateway availability depends on
      organization settings.
    x-mint:
      icon: credit-card
  - name: Add-On Management
    description: 'Access: organization admins for add-on checkout and lifecycle actions.'
    x-mint:
      icon: blocks
  - name: Copyright Management
    description: >-
      Access: organization admins or users with copyright wallet and release
      access. System-only provider and adjustment actions are excluded.
    x-mint:
      icon: shield-check
  - name: Quality Control
    description: 'Access: organization admins with release processing permission.'
    x-mint:
      icon: clipboard-check
paths:
  /api/v1/order/{release}/checkout/stripe:
    parameters:
      - in: path
        name: release
        description: The release UUID or ID.
        example: 7fdb1b46-5f3a-4f7c-9a2a-6b6f1b2a26b0
        required: true
        schema:
          type: string
    post:
      tags:
        - Billing & Checkouts
      summary: Create Stripe Release Checkout
      description: >-
        Access: authenticated organization users. Gateway availability depends
        on organization settings.


        Starts a Stripe Checkout session to pay for a single release under the
        Pay-Per-Release plan.

        For API usage, you must provide both `cancel_url` and `success_url`.
      operationId: stripeCheckoutSessionPPR
      parameters:
        - name: Accept
          in: header
          required: false
          description: Use `application/json` for API responses.
          schema:
            type: string
          example: application/json
        - name: Authorization
          in: header
          required: false
          description: Bearer access token. Use `Bearer <YOUR_ACCESS_TOKEN>`.
          schema:
            type: string
          example: Bearer <YOUR_ACCESS_TOKEN>
        - in: query
          name: cancel_url
          description: >-
            When calling via API; user is redirected here if the payment is
            cancelled. Must be an absolute URL.
          example: >-
            https://app.spacemedia.io/releases/7fdb1b46/edit?page=pay-per-release
          required: true
          schema:
            type: string
            description: >-
              When calling via API; user is redirected here if the payment is
              cancelled. Must be an absolute URL.
            example: >-
              https://app.spacemedia.io/releases/7fdb1b46/edit?page=pay-per-release
            nullable: false
        - in: query
          name: success_url
          description: >-
            When calling via API; user is redirected here after successful
            payment. Must be an absolute URL.
          example: https://app.spacemedia.io/payments/checkout/success
          required: true
          schema:
            type: string
            description: >-
              When calling via API; user is redirected here after successful
              payment. Must be an absolute URL.
            example: https://app.spacemedia.io/payments/checkout/success
            nullable: false
        - name: release
          in: path
          required: true
          description: Organization-scoped resource identifier.
          schema:
            type: string
          example: f78c0f2e-4b30-4b33-87c5-e0bbd17b2b85
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
            example:
              cancel_url: https://demo-label.example.test/billing/cancel
              success_url: https://demo-label.example.test/billing/success
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: object
                additionalProperties: true
              example:
                success: true
                payment-intent-id: 80a6bb2d-1f32-4a4d-915f-fb0f8ec43f59
                redirection-url: >-
                  https://checkout.example.test/80a6bb2d-1f32-4a4d-915f-fb0f8ec43f59
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/ValidationError'
      security:
        - bearerAuth: []
components:
  responses:
    Unauthorized:
      description: Unauthorized
      content:
        application/json:
          example:
            success: false
            message: Missing bearer token
    Forbidden:
      description: Forbidden
      content:
        application/json:
          example:
            success: false
            message: This action is unauthorized.
    NotFound:
      description: Not found
      content:
        application/json:
          example:
            success: false
            message: Resource not found
    ValidationError:
      description: Validation error
      content:
        application/json:
          example:
            success: false
            message: Validation failed.
            errors:
              title:
                - The title field is required.
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: Sanctum token

````