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

# Accept electronic signature consent

> Records the user's consent to conduct business electronically (E-Sign Act compliance).

**Authentication:** The presigned URL serves as the authentication mechanism for the end user.
This endpoint must be called by or on behalf of the user who will be bound by this consent.

**Legal effect:** By calling this endpoint with a valid presigned URL, the user consents to:
- Receive documents and disclosures electronically
- Use electronic signatures for legally binding agreements
- Conduct transactions electronically

This is typically the first agreement accepted during onboarding.




## OpenAPI

````yaml /openapi.yaml post /ramp/agreements/electronic-signature
openapi: 3.1.0
info:
  title: FX API
  version: 1.0.0
  description: >
    API for managing FX operations including onboarding, quotes, orders, and
    customer management.

    This API provides endpoints for managing customers, bank accounts, crypto
    wallets, orders, and webhooks.
servers:
  - url: https://api.etherfuse.com
    description: Production API
  - url: https://api.sand.etherfuse.com
    description: Sandbox API (for testing)
security: []
tags:
  - name: Lookup
    description: Public endpoints for looking up stablebond and exchange rate data
  - name: Assets
    description: Get available assets for ramping
  - name: Onboarding
    description: Customer onboarding and KYC
  - name: Bank Accounts
    description: Manage customer bank accounts
  - name: Agreements
    description: Handle customer agreements and consents
  - name: Quotes
    description: Get quotes for conversions
  - name: Orders
    description: Create and manage orders
  - name: Swaps
    description: Create and manage swaps
  - name: Customers
    description: Manage customers
  - name: Crypto Wallets
    description: Manage crypto wallets
  - name: Webhooks
    description: Manage webhook subscriptions
  - name: Organizations
    description: Manage organizations and child organizations
paths:
  /ramp/agreements/electronic-signature:
    post:
      tags:
        - Agreements
      summary: Accept electronic signature consent
      description: >
        Records the user's consent to conduct business electronically (E-Sign
        Act compliance).


        **Authentication:** The presigned URL serves as the authentication
        mechanism for the end user.

        This endpoint must be called by or on behalf of the user who will be
        bound by this consent.


        **Legal effect:** By calling this endpoint with a valid presigned URL,
        the user consents to:

        - Receive documents and disclosures electronically

        - Use electronic signatures for legally binding agreements

        - Conduct transactions electronically


        This is typically the first agreement accepted during onboarding.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PresignedUrlPayload'
      responses:
        '200':
          description: Electronic signature consent recorded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AgreementResponse'
        '400':
          description: Invalid or expired presigned URL
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  schemas:
    PresignedUrlPayload:
      type: object
      description: >
        Payload containing a presigned URL for user authentication.

        The presigned URL serves as the authentication mechanism for the end
        user and contains

        cryptographically signed claims (customer ID, wallet public key,
        organization ID).
      properties:
        presignedUrl:
          type: string
          description: >
            Presigned URL obtained from `POST /ramp/onboarding-url`. This URL
            authenticates

            the end user and authorizes actions on their behalf.
      required:
        - presignedUrl
      example:
        presignedUrl: https://devnet.etherfuse.com/onboarding?token=eyJhbGciOiJIUzI1NiIs...
    AgreementResponse:
      type: object
      description: Response confirming an agreement has been recorded
      properties:
        success:
          type: boolean
          description: Whether the agreement was successfully recorded
        acceptedAt:
          type: string
          format: date-time
          description: Timestamp when the agreement was accepted
        agreementType:
          type: string
          description: Type of agreement accepted
          enum:
            - electronic_signature
            - terms_and_conditions
            - customer_agreement
      example:
        success: true
        acceptedAt: '2024-01-15T10:00:00Z'
        agreementType: customer_agreement
    Error:
      type: object
      properties:
        error:
          type: string
          description: Error message
      example:
        error: Invalid request parameters

````