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

# Create ACH deposit with crypto to BOB conversion

> Generates a crypto address and amount to fund the authenticated business merchant account. amount is the BOB amount to receive. Once the full crypto amount is confirmed, an ACH transfer is requested from the Mesa de Pagos account. The operation is recorded as prefunding with fundingSource conversion and its status changes are notified through transaction_updated. externalReference must be unique. Response amounts are expressed as decimal strings.



## OpenAPI

````yaml /openapi-v3.en.yaml post /v3/transactions/deposit/ach
openapi: 3.0.0
info:
  title: YP API Partner
  description: Integration documentation for YP API partners.
  version: v3
  contact: {}
servers:
  - url: https://sandbox-rampa.mesadepagos.com/api
    description: Sandbox
security: []
tags:
  - name: Auth
    description: ''
  - name: Quotes
    description: ''
  - name: Payin
    description: ''
  - name: Payout
    description: ''
  - name: Wallet
    description: ''
  - name: Queries
    description: ''
  - name: Webhooks
    description: ''
  - name: Fees
    description: ''
  - name: Clients
    description: ''
  - name: Client verifications
    description: Las verificaciones que habilitan a un cliente a cobrar a su nombre.
  - name: Virtual accounts
    description: 'Las cuentas de cobro: las del partner y las de sus clientes.'
paths:
  /v3/transactions/deposit/ach:
    post:
      tags:
        - Payin
      summary: Create ACH deposit with crypto to BOB conversion
      description: >-
        Generates a crypto address and amount to fund the authenticated business
        merchant account. amount is the BOB amount to receive. Once the full
        crypto amount is confirmed, an ACH transfer is requested from the Mesa
        de Pagos account. The operation is recorded as prefunding with
        fundingSource conversion and its status changes are notified through
        transaction_updated. externalReference must be unique. Response amounts
        are expressed as decimal strings.
      operationId: createDepositAchV3
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateDepositAchRequestV3Doc'
      responses:
        '201':
          description: Deposit awaiting receipt of crypto.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateDepositAchResponseV3Doc'
        '400':
          description: >-
            Invalid request, non-positive crypto amount, or merchant account
            unavailable.
        '401':
          description: Missing, invalid, or expired token.
        '409':
          description: The external reference already exists.
        '500':
          description: >-
            Incomplete configuration or failure to quote, create the address, or
            save the deposit.
      security:
        - bearer: []
components:
  schemas:
    CreateDepositAchRequestV3Doc:
      type: object
      properties:
        assetDeposit:
          type: string
          enum:
            - USDC
            - USDT
          example: USDC
        blockchain:
          type: string
          enum:
            - Ethereum
            - Polygon
          example: Polygon
        amount:
          type: number
          example: 696
          minimum: 0
          exclusiveMinimum: true
          maximum: 999999999999.99
          multipleOf: 0.01
          description: BOB amount to credit to the authenticated business merchant account.
        externalReference:
          type: string
          example: DEPOSIT-1001
          minLength: 1
          maxLength: 100
      required:
        - assetDeposit
        - blockchain
        - amount
        - externalReference
    CreateDepositAchResponseV3Doc:
      type: object
      properties:
        transactionId:
          type: string
          format: uuid
        transactionStatus:
          type: string
          enum:
            - pending_transaction
            - pending_approval
            - processing_transaction
            - completed_transaction
            - reject_transaction
            - expired_transaction
            - cancelled_transaction
            - failed_transaction
            - received_transaction
            - returned_transaction
            - insufficient_funds
          example: pending_transaction
        externalReference:
          type: string
          example: DEPOSIT-1001
        cryptoAmount:
          type: string
          example: '100.00000000'
          description: >-
            Crypto amount that must be received to execute the credit, including
            the configured discount.
        fiatAmount:
          type: string
          example: '696.00'
        fiatCurrency:
          type: string
          enum:
            - BOB
          example: BOB
        depositAddress:
          type: string
          example: '0x0000000000000000000000000000000000000000'
          description: Unique address to receive the asset on the requested blockchain.
        exchangeRate:
          type: string
          example: '6.96000000'
          description: Applied exchange rate, expressed in BOB per crypto unit.
        asset:
          type: string
          enum:
            - USDC
            - USDT
          example: USDC
        blockchain:
          type: string
          enum:
            - Ethereum
            - Polygon
          example: Polygon
      required:
        - transactionId
        - transactionStatus
        - externalReference
        - cryptoAmount
        - fiatAmount
        - fiatCurrency
        - depositAddress
        - exchangeRate
        - asset
        - blockchain
  securitySchemes:
    bearer:
      scheme: bearer
      bearerFormat: JWT
      type: http
      description: JWT obtained from /v2/auth/login or /v3/auth/login

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.