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

# Claim a Facilitator Service seller account

> Binds a keyless seller account to your Circle account. After a
successful claim, settlements for the same `payTo` may authenticate
with your Circle API key. The trial allowance no longer applies, and
payment history remains intact.

Requires a Circle API key and a seller proof with `purpose: "claim"`
signed by the key that controls the seller account's `payTo`.
Repeating a claim for the same Circle account is idempotent.




## OpenAPI

````yaml openapi/facilitator-service.yaml post /v1/facilitator/x402/seller-accounts/claim
openapi: 3.0.3
info:
  title: Facilitator Service
  version: 1.0.0
  description: >
    Facilitator Service is Circle's hosted x402 facilitator. Sellers

    call Facilitator Service to verify and settle x402 payments in USDC on Arc,
    Base, and

    Polygon PoS without operating their own relayer, gas wallet, or sanctions

    screening.


    Facilitator Service implements the x402 v2 `exact` scheme and settles USDC
    through

    EIP-3009 authorizations.
servers:
  - url: https://api.circle.com
    description: Production
  - url: https://api-sandbox.circle.com
    description: Sandbox
security:
  - CircleApiKey: []
  - FacilitatorSellerProof: []
tags:
  - name: Payments
    description: |
      x402 payment verification, settlement, and status.
  - name: Seller accounts
    description: |
      Seller account binding to a Circle account for API key authentication.
  - name: Supported payment kinds
    description: |
      x402 payment kinds and extensions Facilitator Service accepts.
paths:
  /v1/facilitator/x402/seller-accounts/claim:
    post:
      tags:
        - Seller accounts
      summary: Claim a Facilitator Service seller account
      description: |
        Binds a keyless seller account to your Circle account. After a
        successful claim, settlements for the same `payTo` may authenticate
        with your Circle API key. The trial allowance no longer applies, and
        payment history remains intact.

        Requires a Circle API key and a seller proof with `purpose: "claim"`
        signed by the key that controls the seller account's `payTo`.
        Repeating a claim for the same Circle account is idempotent.
      operationId: ClaimSellerAccount
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - entityId
              properties:
                entityId:
                  type: string
                  format: uuid
                  description: The Circle entity ID to which the seller account is bound.
                  example: 3fa85f64-5717-4562-b3fc-2c963f66afa6
      responses:
        '200':
          description: Claim result
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClaimResponse'
        '400':
          description: Malformed request body or mixed authentication modes.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: |
            Missing or invalid Circle API key or seller proof.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: |
            Claim refused. Returned when the seller account does not exist, is
            not controlled by the caller, or is already bound to a different
            Circle account. All three cases share one non-enumerating response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '415':
          description: Unsupported content encoding.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '429':
          description: Rate limit exceeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      security:
        - CircleApiKey: []
          FacilitatorSellerProof: []
components:
  schemas:
    ClaimResponse:
      type: object
      required:
        - status
        - payTo
        - entityId
      properties:
        status:
          type: string
          enum:
            - claimed
          description: Ownership state of the seller account.
          example: claimed
        payTo:
          type: string
          description: The seller account's `payTo` address.
          example: '0x7c3eA945Fc4253255D8260fC18C2deE3D8c5DD3a'
        entityId:
          type: string
          format: uuid
          description: Circle entity ID the account is bound to.
          example: 3fa85f64-5717-4562-b3fc-2c963f66afa6
    ErrorResponse:
      type: object
      required:
        - code
        - message
      properties:
        code:
          type: integer
          description: HTTP status code echoed in the body for programmatic handling.
          example: 403
        message:
          type: string
          description: >-
            Human-readable summary of the error, suitable for display to end
            users.
          example: Registration required to continue settling on this address
        errors:
          type: array
          description: Per-issue reason codes.
          items:
            type: object
            required:
              - reason
            properties:
              reason:
                type: string
                description: |
                  Machine-readable reason code.
                enum:
                  - registration_required
                  - authorization_expired
                  - payment_identifier_conflict
                  - credential_bound_elsewhere
                  - credential_payer_conflict
                example: registration_required
  securitySchemes:
    CircleApiKey:
      type: http
      scheme: bearer
      description: >
        Bearer token authentication with a Circle API key. Use this for

        production settlement after claiming your Facilitator Service seller
        account.
    FacilitatorSellerProof:
      type: apiKey
      in: header
      name: Facilitator-Seller-Proof
      description: |
        Base64url-encoded envelope carrying an EIP-712 signature that proves
        the caller controls the `payTo` address. Use this for the keyless
        trial before claiming your Facilitator Service seller account.

````