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

# Open Paywint Bank Account

> Creates a new Paywint bank account for an eligible user.

This endpoint now supports two Paywint bank account types:

### **Account Types**
- **paywint_savings** - Requires only **KYC approval**
- **paywint_business** - Requires **both KYC and KYB approval**

A nickname must be provided for the new account, and the system validates that:
- The bank nickname does not already exist for the user
- The user has not exceeded their allowed Paywint bank account limit

### **Eligibility Criteria**
- **For paywint_savings:**
  - User's **KYC must be approved**

- **For paywint_business:**
  - User's **KYC must be approved**
  - User's **KYB must be approved**



## OpenAPI

````yaml POST /api/platform/accounts/open-pw-bank-account/{user_id}
openapi: 3.1.0
info:
  title: paywint
  version: 0.1.0
servers:
  - url: http://localhost:8001
  - url: https://api.pw.wintpay.com
  - url: https://test.pw.wintpay.com
  - url: https://api.sandbox.paywint.com
security: []
paths:
  /api/platform/accounts/open-pw-bank-account/{user_id}:
    post:
      tags:
        - Platform Accounts
      summary: Open Paywint Bank Account
      description: >-
        Creates a new Paywint bank account for an eligible user.


        This endpoint now supports two Paywint bank account types:


        ### **Account Types**

        - **paywint_savings** - Requires only **KYC approval**

        - **paywint_business** - Requires **both KYC and KYB approval**


        A nickname must be provided for the new account, and the system
        validates that:

        - The bank nickname does not already exist for the user

        - The user has not exceeded their allowed Paywint bank account limit


        ### **Eligibility Criteria**

        - **For paywint_savings:**
          - User's **KYC must be approved**

        - **For paywint_business:**
          - User's **KYC must be approved**
          - User's **KYB must be approved**
      operationId: >-
        create_paywint_bank_account_api_platform_accounts_open_pw_bank_account__user_id__post
      parameters:
        - name: user_id
          in: path
          required: true
          schema:
            type: string
            format: uuid
            description: Unique identifier (UUID) of the user
            title: User Id
          description: Unique identifier (UUID) of the user
          example: f47ac10b-****-****-****-0e02b2c3d479
        - name: X-Platform-ID
          in: header
          required: true
          schema:
            type: string
            format: uuid
            description: >-
              Unique platform identifier (UUID). You receive this during
              onboarding. Must be sent with every API request.
            title: X-Platform-Id
          description: >-
            Unique platform identifier (UUID). You receive this during
            onboarding. Must be sent with every API request.
        - name: X-Signature
          in: header
          required: true
          schema:
            type: string
            description: >-
              HMAC-SHA256 request signature for authentication. Use your
              platform secret key to compute it as: `METHOD + PATH + QUERY +
              BODY_HASH`.
            title: X-Signature
          description: >-
            HMAC-SHA256 request signature for authentication. Use your platform
            secret key to compute it as: `METHOD + PATH + QUERY + BODY_HASH`.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ExternalPaywintBankRequest'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/CommonResponse_PlatformPaywintBankAccountRequestRead_
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    ExternalPaywintBankRequest:
      properties:
        bank_nick_name:
          type: string
          title: Bank Nick Name
          description: Unique nickname to easily identify the bank account.
          example: Personal Checking
      type: object
      required:
        - bank_nick_name
      title: ExternalPaywintBankRequest
    CommonResponse_PlatformPaywintBankAccountRequestRead_:
      properties:
        success:
          type: boolean
          title: Success
          description: Indicates whether the request was processed successfully.
          default: true
          example: true
        message:
          type: string
          title: Message
          description: >-
            A short, human-readable message describing the result of the
            request.
          default: Success
          example: Operation completed.
        data:
          anyOf:
            - $ref: '#/components/schemas/PlatformPaywintBankAccountRequestRead'
            - type: 'null'
          description: The main response payload, if applicable
        queryGeneratedTime:
          anyOf:
            - type: number
            - type: 'null'
          title: Querygeneratedtime
          description: >-
            The Unix timestamp (in seconds) indicating when the response was
            generated.
          default: 1782303609.673092
          example: 1718006400
      type: object
      title: CommonResponse[PlatformPaywintBankAccountRequestRead]
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    PlatformPaywintBankAccountRequestRead:
      properties:
        account_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Account Id
          description: Unique identifier of the Paywint bank account.
          example: f47ac10b-****-****-****-0e02b2c3d479
        bank_nick_name:
          type: string
          title: Bank Nick Name
          description: User-defined nickname to identify the bank account.
          example: Personal Checking
        account_type:
          $ref: '#/components/schemas/ExternalPWBankAccountType'
          description: >-
            Specifies the Paywint-supported external bank account type (e.g.,
            PAYWINT_SAVINGS, PAYWINT_BUSINESS).
          example: PAYWINT_SAVINGS
        checkbook_user_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Checkbook User Id
          description: Checkbook user ID used for manual Paywint bank account application.
          example: 4f32b9e1-6f4a-4d5a-a495-2f7fdf4d4dd1
        created_at:
          type: string
          format: date-time
          title: Created At
          description: Timestamp when the request was created.
          example: '2025-08-07T14:32:00Z'
      type: object
      title: PlatformPaywintBankAccountRequestRead
    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
    ExternalPWBankAccountType:
      type: string
      enum:
        - PAYWINT_SAVINGS
        - PAYWINT_BUSINESS
      title: ExternalPWBankAccountType

````