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

# Confirm credit purchase

> Verifies that a Stripe payment succeeded and adds the purchased credits to the user's balance. This endpoint should be called after the payment is confirmed on the frontend.



## OpenAPI

````yaml api-reference/billing.yaml post /checkout/credits/confirm
openapi: 3.0.3
info:
  title: billing
  description: >-
    The Billing Service manages billing-related operations across the platform.
    It handles all financial transactions, balance management, and SKU-based
    pricing across the platform.
  version: 1.0.0
servers:
  - url: https://billing.platform.arb.inc
security: []
tags:
  - name: /
  - name: _internal
  - name: balance
  - name: charge
  - name: checkout
  - name: pricing
  - name: skus
  - name: transactions
paths:
  /checkout/credits/confirm:
    post:
      tags:
        - checkout
      summary: Confirm credit purchase
      description: >-
        Verifies that a Stripe payment succeeded and adds the purchased credits
        to the user's balance. This endpoint should be called after the payment
        is confirmed on the frontend.
      operationId: confirmCreditsCheckout
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - paymentIntentId
              properties:
                paymentIntentId:
                  type: string
                  description: Stripe PaymentIntent ID (pi_xxx format, 1-255 characters)
                  example: pi_3MtwBwLkdIwHu7ix28a3tqPa
      responses:
        '200':
          description: Credits successfully added to balance
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: true
                  creditsAdded:
                    type: integer
                    example: 50
                  newBalance:
                    type: number
                    example: 200.5
                  transactionId:
                    type: string
                    example: 9d1e2f3a-4b5c-6d7e-8f9a-0b1c2d3e4f5a
        '403':
          description: Payment belongs to a different user
        '404':
          description: Payment not found in Stripe
      security:
        - bearerAuth: []
components:
  securitySchemes:
    bearerAuth:
      type: http
      description: access token
      scheme: bearer
      bearerFormat: JWT

````