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

# Create Managed Account

> Create new retailer credentials

Create new retailer credentials for order processing. Credentials are encrypted and stored securely.

## Request Fields

* **email** (required) - The email address for the retailer account
* **password** - The password for the retailer account (encrypted at rest)
* **retailer** - Retailer name (e.g., `amazon`). If omitted, applies as default credentials
* **totp\_secret** - TOTP secret key for two-factor authentication (encrypted at rest)

<Info>
  If your retailer account has 2FA enabled, you must provide the `totp_secret` to avoid verification issues during order processing. See the [Managed Accounts guide](/v2/api-reference/configuration/managed-accounts#two-factor-authentication-totp) for details on finding your TOTP key.
</Info>

## Response

Returns the created credential object with:

* **id** - Unique identifier (UUID)
* **short\_id** - Short identifier used in URLs (e.g., `zn_acct_a1b2c3d4`)
* **email** - Retailer account email
* **retailer** - Retailer name, or null if default credentials
* **has\_totp** - Whether TOTP 2FA is configured
* **has\_forwarding** - Whether email forwarding has been verified
* **created\_at** - Creation timestamp
* **updated\_at** - Last update timestamp

<Warning>
  Passwords and TOTP secrets are never returned in API responses. The `has_totp` field indicates whether 2FA is configured.
</Warning>


## OpenAPI

````yaml /versions/latest.json POST /managed-accounts
openapi: 3.1.0
info:
  title: Zinc
  summary: >-
    Zinc lets you search, buy, and return items from top online retailers with a
    single API.
  description: >-
    Search, buy, and return items from top online retailers with a single API.
    Supports AI agent ordering via MPP (HTTP 402) — no account required.
  version: '2026-04-27'
  x-logo:
    url: https://mintlify.s3.us-west-1.amazonaws.com/zinc/logo/light.png
  x-guidance: >-
    Zinc lets AI agents buy products from online retailers via a single API. Use
    POST /agent/orders to place an order — no Zinc account needed, payment is
    handled via MPP (HTTP 402 flow). Provide a product URL (e.g. Amazon),
    shipping address, and max_price in cents. The API charges max_price + $1 API
    fee upfront and refunds the difference on completion. Authenticated
    endpoints (orders, products, managed-accounts) require a Bearer token (API
    key prefixed zn_). Docs: https://zinc.com/docs
servers:
  - url: https://api.zinc.com
    description: Production
security:
  - BearerAuth: []
paths:
  /managed-accounts:
    post:
      tags:
        - managed-accounts
      summary: Create Retailer Credentials
      description: >-
        Create new retailer credentials for the current user.

        If is_global=True (admin only), creates global credentials owned by the
        system user.
      operationId: create_retailer_credentials_managed_accounts_post
      parameters:
        - name: authorization
          in: header
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            title: Authorization
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RetailerCredentialsCreate'
      responses:
        '201':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RetailerCredentialsResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    RetailerCredentialsCreate:
      properties:
        email:
          type: string
          title: Email
        password:
          anyOf:
            - type: string
            - type: 'null'
          title: Password
        retailer:
          anyOf:
            - type: string
            - type: 'null'
          title: Retailer
          description: >-
            Retailer name (e.g., 'amazon'). If null, applies as default
            credentials.
        totp_secret:
          anyOf:
            - type: string
            - type: 'null'
          title: Totp Secret
          description: TOTP secret key for 2FA (will be encrypted at rest).
        retailer_config:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Retailer Config
      type: object
      required:
        - email
      title: RetailerCredentialsCreate
      description: Request model for creating retailer credentials.
    RetailerCredentialsResponse:
      properties:
        id:
          type: string
          format: uuid
          title: Id
        short_id:
          type: string
          title: Short Id
        email:
          type: string
          title: Email
        retailer:
          anyOf:
            - type: string
            - type: 'null'
          title: Retailer
        has_totp:
          type: boolean
          title: Has Totp
          description: Whether TOTP 2FA is configured for this account.
          default: false
        has_forwarding:
          type: boolean
          title: Has Forwarding
          description: Whether email forwarding has been verified for this account.
          default: false
        is_paused:
          type: boolean
          title: Is Paused
          description: Whether this credential is paused (jobs will not be picked up).
          default: false
        locked_by_job_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Locked By Job Id
          description: The job ID currently using this credential, if any.
        cooldown_minutes:
          anyOf:
            - type: integer
            - type: 'null'
          title: Cooldown Minutes
          description: Minimum minutes between uses. None = no cooldown.
        last_used_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Last Used At
          description: When this credential was last released after a job completed.
        retailer_config:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Retailer Config
        forwarding_email:
          type: string
          title: Forwarding Email
          description: >-
            Email address to forward retailer emails to for verification and 2FA
            code extraction.
        created_at:
          type: string
          format: date-time
          title: Created At
        updated_at:
          type: string
          format: date-time
          title: Updated At
      type: object
      required:
        - id
        - short_id
        - email
        - retailer
        - forwarding_email
        - created_at
        - updated_at
      title: RetailerCredentialsResponse
      description: Response model for retailer credentials.
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    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:
    BearerAuth:
      type: apiKey
      in: header
      name: Authorization
      description: Zinc API key (Bearer zn_...)

````