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

# Create a Transfer

> Create a transfer.



## OpenAPI

````yaml /v2.yaml post /v2/transfers
openapi: 3.1.0
info:
  title: dots api
  version: '1.0'
  summary: Dots Payout API
  description: Scalable and Flexible Payouts Infrastructure
  contact:
    name: Kartikye Mittal
    url: https://dots.dev
    email: info@dots.dev
  license:
    name: MIT
    url: https://opensource.org/license/mit/
servers:
  - url: https://api.dots.dev/api
    description: Production
security:
  - api_key: []
tags:
  - name: accounts-payable
    description: Accounts Payable Routes
  - name: apps
    description: App Routes
  - name: flows
    description: Flow routes
  - name: organizations
    description: Organization Routes
  - name: payment-customers
    description: Payment Customer Routes
  - name: payments
    description: Payment Routes
  - name: payout-batches
    description: Payout Batch Routes
  - name: payout-links
    description: Payout Link Routes
  - name: payout-requests
    description: Payout Request Routes
  - name: payouts
    description: Payout Routes
  - name: transactions
    description: Transaction Routes
  - name: transfer-batches
    description: Transfer Batch routes
  - name: transfers
    description: Transfer routes
  - name: users
    description: User routes
paths:
  /v2/transfers:
    parameters: []
    post:
      tags:
        - transfers
      summary: Create a Transfer
      description: Create a transfer.
      operationId: create-transfer
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                amount:
                  type: integer
                  description: >-
                    The amount in cents to transfer. Negative amount transfers
                    money from the `app` to the `user`.
                user_id:
                  type: string
                  format: uuid
                  description: The user's id.
                tax_exempt:
                  type:
                    - boolean
                    - 'null'
                  description: >-
                    Transfers marked as `tax_exempt` will not be counted towards
                    the 1099 threshold.
                idempotency_key:
                  type:
                    - string
                    - 'null'
                  format: uuid
                  description: >-
                    UUID that will be used to idempotently handle requests.
                    Transfers with existing idempotency keys will be rejected.
                metadata:
                  type:
                    - string
                    - object
                    - 'null'
                  description: >-
                    Set of key-value pairs that you can attach to an object.
                    This can be useful for storing additional information about
                    the object in a structured format.
              required:
                - amount
                - user_id
            examples:
              Send Funds to User:
                value:
                  amount: -1000
                  user_id: a169451c-8525-4352-b8ca-070dd449a1a5
              Debit Funds from User:
                value:
                  amount: 1000
                  user_id: a169451c-8525-4352-b8ca-070dd449a1a5
        description: ''
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/transfer'
                description: The `transfer` object.
components:
  schemas:
    transfer:
      type: object
      properties:
        id:
          type: string
          format: uuid
        created:
          type: string
          format: date-time
        user_id:
          type: string
          format: uuid
        status:
          type: string
          enum:
            - created
            - pending
            - failed
            - completed
            - reversed
            - canceled
            - flagged
        type:
          type: string
          enum:
            - refill
            - payout
            - balance
            - payment
            - settlement
            - payable
          description: |
            The type of this transfer.
             * `refill` - refill of an API App or Organization's Dots Wallet
             * `payout` - payout to a User
             * `balance` - balance transfer between Dots Wallets, such as from an API App to a User's Dots Wallet
             * `payment` - payment from a User to an API App
             * `settlement` - legacy, currently unused
             * `payable` - payable for Accounts Payable 
        amount:
          type: number
        external_data:
          type: object
          properties:
            account_id:
              type: string
            external_id:
              type: string
            platform:
              type: string
              enum:
                - ach
                - rtp
                - paypal
                - venmo
                - visa
                - amazon
                - cash_app
                - intl_bank
                - airtm
                - payoneer
                - wire
                - invoice
                - crypto
        transactions:
          type: array
          items:
            $ref: '#/components/schemas/transaction'
        payout_link_id:
          type: string
          format: uuid
          description: ID of the `payout-link` that the transfer belongs to.
        metadata:
          type:
            - string
            - object
            - 'null'
          description: >-
            Set of key-value pairs that you can attach to an object. This can be
            useful for storing additional information about the object in a
            structured format.
    transaction:
      type: object
      properties:
        id:
          type: integer
        amount:
          type: number
        created:
          type: string
          format: date-time
        source_name:
          type: string
        destination_name:
          type: string
        type:
          type: string
          enum:
            - balance
            - refill
            - payout
            - payment
            - fee
            - surrogate
          description: The general category of the transaction
        metadata:
          type:
            - string
            - object
            - 'null'
          description: >-
            Set of key-value pairs that you can attach to an object. This can be
            useful for storing additional information about the object in a
            structured format.
        transfer_id:
          type: string
          format: uuid
          description: ID of the `transfer` that the transaction belongs to.
        transfer:
          $ref: '#/components/schemas/transfer'
          description: >-
            The `transfer` that the transaction belongs to. This is only present
            if `include_transfer` is true.
  securitySchemes:
    api_key:
      type: http
      scheme: basic

````