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

# Process a HyperCore deposit

> Process an account's HyperCore deposit: bridge its full HyperCore spot balance (e.g. UXPL) to its registered destination (e.g. native XPL on Plasma) via Unit. Reads the balance, records a deposit, and submits the source transfer; the bridge then completes asynchronously. Authenticate with an `x-api-key` (write scope) or a Bearer platform token.



## OpenAPI

````yaml https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json post /hypercore/process
openapi: 3.1.0
info:
  title: Deposit Service API
  version: 1.0.0
  description: >-
    Cross-chain deposit processing service with automatic token bridging and gas
    sponsorship
servers:
  - url: https://v1.orchestrator.rhinestone.dev/deposit-processor
security: []
paths:
  /hypercore/process:
    post:
      tags:
        - Processing
      summary: Process a HyperCore deposit
      description: >-
        Process an account's HyperCore deposit: bridge its full HyperCore spot
        balance (e.g. UXPL) to its registered destination (e.g. native XPL on
        Plasma) via Unit. Reads the balance, records a deposit, and submits the
        source transfer; the bridge then completes asynchronously. Authenticate
        with an `x-api-key` (write scope) or a Bearer platform token.
      parameters:
        - schema:
            type: string
            description: API key for authentication (omit when sending Authorization)
            example: your-api-key
          required: false
          description: API key for authentication (omit when sending Authorization)
          name: x-api-key
          in: header
        - schema:
            type: string
            description: >-
              Bearer platform token (e.g. forwarded by user-service). Takes
              precedence over `x-api-key` when both are present.
            example: Bearer eyJhbGciOi...
          required: false
          description: >-
            Bearer platform token (e.g. forwarded by user-service). Takes
            precedence over `x-api-key` when both are present.
          name: authorization
          in: header
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ProcessHypercoreDepositRequestBody'
      responses:
        '200':
          description: Deposit accepted (processing) or failed at submission
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProcessHypercoreDepositResponse'
        '400':
          description: Invalid request or unsupported token
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Authentication required or invalid
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: API key lacks write scope
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: Account or client not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '409':
          description: A withdrawal of this amount is already in flight
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
components:
  schemas:
    ProcessHypercoreDepositRequestBody:
      type: object
      properties:
        account:
          type: string
          minLength: 1
          description: >-
            Registered account whose full HyperCore spot balance is bridged to
            its destination.
          example: '0xde0fdf9c06b404cc5e20543cb84cac9067102f19'
        symbol:
          type: string
          minLength: 1
          description: HyperCore spot token symbol to process. Defaults to UXPL.
          example: UXPL
      required:
        - account
    ProcessHypercoreDepositResponse:
      type: object
      properties:
        depositId:
          type: string
        status:
          type: string
          enum:
            - processing
            - failed
        amount:
          type: string
        protocolAddress:
          type: string
        intentId:
          type: string
        sourceTxHash:
          type: string
        errorCode:
          type: string
        errorMessage:
          type: string
      required:
        - depositId
        - status
    ErrorResponse:
      type: object
      properties:
        error:
          type: string
        details:
          type: array
          items:
            type: object
            properties:
              message:
                type: string
              path:
                type: array
                items:
                  anyOf:
                    - type: string
                    - type: number
              code:
                type: string
            required:
              - message
      required:
        - error

````