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

# List Customer's Off-Ramp Transaction History

> Returns a paginated list of off-ramp transactions for a specific customer, ordered by most recently updated. Use this endpoint to display transaction history to end customers in your widget or integration. Returns 404 if the customer does not exist or does not belong to your account.



## OpenAPI

````yaml ramps-api/openapi.json GET /api/v1/customers/{customerId}/transactions/offramp/
openapi: 3.1.0
info:
  title: Ripio Ramp API
  version: v1
  description: >-
    API for Ripio ramp services, enabling partners to integrate On-Ramp,
    Off-Ramp, customer management, KYC processes, and other financial
    functionalities. This API is RESTful, uses JSON for requests and responses,
    and standard HTTP status codes. This document is based on the
    'onramp-api.pdf' provided and aims to be compliant with OpenAPI
    Specification v3.1.0. The PDF indicates that the API documentation is a
    draft and subject to change.
servers:
  - url: https://skala-sandbox.ripio.com
    description: Sandbox environment
  - url: https://skala.ripio.com
    description: Production environment
security:
  - BearerToken: []
tags:
  - name: Authentication
    description: Operations related to API authentication and authorization.
  - name: Support Tickets
    description: >-
      Operations for raising and tracking customer support tickets with Ripio's
      support team. This feature must be enabled for your account by the Ripio
      team.
  - name: Customers
    description: Operations related to customer management.
  - name: KYC
    description: Operations related to Know Your Customer processes.
  - name: Fiat Accounts
    description: Operations related to managing fiat accounts and their requirements.
  - name: Quotes
    description: Operations related to obtaining and managing conversion quotes.
  - name: On-Ramp
    description: Operations related to fiat-to-crypto (on-ramp) processes.
  - name: Off-Ramp
    description: Operations related to crypto-to-fiat (off-ramp) processes.
  - name: Transactions
    description: Operations related to listing and managing all transaction types.
  - name: Networks
    description: >-
      Operations related to retrieving available deposit and withdrawal
      networks.
  - name: Rates
    description: Operations related to retrieving market rates.
  - name: Transaction Limits
    description: >-
      Operations related to retrieving per-transaction limits by currency and
      ramp operation.
  - name: Sandbox
    description: Operations specific to the sandbox environment for testing purposes.
  - name: Webhooks
    description: Webhook event notifications from Ripio Ramp API.
  - name: Sell and Pay
    description: >-
      Endpoints for managing Sell and Pay transactions, which allow customers to
      convert cryptocurrency to fiat currency and pay merchants via QR codes
paths:
  /api/v1/customers/{customerId}/transactions/offramp/:
    get:
      tags:
        - Transactions
      summary: List Customer's Off-Ramp Transaction History
      description: >-
        Returns a paginated list of off-ramp transactions for a specific
        customer, ordered by most recently updated. Use this endpoint to display
        transaction history to end customers in your widget or integration.
        Returns 404 if the customer does not exist or does not belong to your
        account.
      operationId: listCustomerOffRampTransactions
      parameters:
        - $ref: '#/components/parameters/CustomerId'
        - $ref: '#/components/parameters/Limit'
        - $ref: '#/components/parameters/Offset'
      responses:
        '200':
          description: Paginated list of the customer's off-ramp transactions.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedCustomerOffRampTransactionList'
        '401':
          description: Unauthorized - Invalid or missing access token.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                code: 40001
                type: NotAuthenticated
                detail:
                  message: Authentication credentials were not provided.
                  code: not_authenticated
                status: 401
        '404':
          description: >-
            Not Found - Customer not found, inactive, or does not belong to your
            account.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                code: 40004
                type: NotFound
                detail:
                  message: Not found.
                  code: not_found
                status: 404
components:
  parameters:
    CustomerId:
      name: customerId
      in: path
      required: true
      description: Unique identifier for the customer.
      schema:
        type: string
        format: uuid
      example: 8142b065-79c4-4f48-9e33-11b17bc658d4
    Limit:
      name: limit
      in: query
      description: Maximum number of items to return.
      required: false
      schema:
        type: integer
        minimum: 1
        default: 100
      example: 100
    Offset:
      name: offset
      in: query
      description: Starting point to limit the total items to return (for pagination).
      required: false
      schema:
        type: integer
        minimum: 0
      example: 0
  schemas:
    PaginatedCustomerOffRampTransactionList:
      type: object
      description: Paginated list of a customer's off-ramp transactions.
      properties:
        count:
          type: integer
          description: Total number of transactions across all pages.
        next:
          type:
            - string
            - 'null'
          format: uri
          description: URL to the next page of results. Null if no next page.
        previous:
          type:
            - string
            - 'null'
          format: uri
          description: URL to the previous page of results. Null if no previous page.
        transactions:
          type: array
          items:
            $ref: '#/components/schemas/CustomerOffRampTransactionItem'
          description: Array of off-ramp transactions for the current page.
      required:
        - count
        - next
        - previous
        - transactions
    ErrorResponse:
      type: object
      properties:
        code:
          type: integer
          description: Application-specific error code.
        type:
          type: string
          description: Type of error or exception.
        detail:
          type: object
          properties:
            message:
              type: string
              description: Detailed error message.
          additionalProperties: true
        status:
          type: integer
          description: HTTP status code.
      required:
        - code
        - type
        - detail
        - status
    CustomerOffRampTransactionItem:
      type: object
      description: An off-ramp transaction in the customer's transaction history.
      properties:
        transactionId:
          type: string
          format: uuid
          description: Unique identifier for the transaction.
          example: 8a3c1e2f-7b4d-4c5e-a6f7-0d1e2f3a4b5c
        type:
          type: string
          description: Transaction type.
          enum:
            - OFFRAMP
          example: OFFRAMP
        status:
          type: string
          description: Public-facing transaction status.
          enum:
            - PENDING
            - PROCESSING
            - COMPLETED
            - CANCELLED
            - REFUNDED
          example: COMPLETED
        createdAt:
          type: string
          format: date-time
          description: Date and time the transaction was created.
        updatedAt:
          type: string
          format: date-time
          description: Date and time the transaction was last updated.
        fromAmount:
          type: string
          description: Amount of cryptocurrency sent by the customer.
          example: '1.23456789'
        toAmount:
          type: string
          description: Amount of fiat currency to be received.
          example: '1000.00'
        exchangeRate:
          type: string
          description: Effective exchange rate applied.
          example: '812.345'
        fromCurrency:
          type: string
          description: Cryptocurrency sent.
          example: USDC
        toCurrency:
          type: string
          description: Fiat currency to be received.
          example: ARS
        chain:
          type: string
          description: Blockchain network from which the crypto was sent.
          example: POLYGON
        txnHash:
          type:
            - string
            - 'null'
          description: On-chain transaction hash of the incoming crypto deposit.
          example: null
        paymentMethodType:
          type: string
          description: Payment method used for the fiat payout.
          example: bank_transfer
        metadata:
          type: object
          description: Additional metadata associated with the transaction.
          additionalProperties: true
          example: {}
        failureReason:
          oneOf:
            - $ref: '#/components/schemas/PublicFailureReason'
            - type: 'null'
          description: Reason for failure or cancellation. Null when not applicable.
        destination:
          oneOf:
            - $ref: '#/components/schemas/OffRampTransactionDestination'
            - type: 'null'
          description: Fiat account destination. Null when no fiat account is associated.
        fiatAccountId:
          type:
            - string
            - 'null'
          format: uuid
          description: >-
            ID of the customer's fiat account used as destination. Null if not
            set.
          example: a1b2c3d4-e5f6-7890-abcd-ef1234567890
        fiatAccountStatus:
          type:
            - string
            - 'null'
          description: Current status of the destination fiat account. Null if not set.
          example: ACTIVE
        providerId:
          type:
            - string
            - 'null'
          description: >-
            Transaction ID assigned by the fiat payout provider. Null until the
            provider confirms.
          example: cobre-txn-9876
        timeline:
          $ref: '#/components/schemas/OffRampTransactionTimeline'
      required:
        - transactionId
        - type
        - status
        - createdAt
        - updatedAt
        - fromAmount
        - toAmount
        - exchangeRate
        - fromCurrency
        - toCurrency
        - chain
        - txnHash
        - paymentMethodType
        - metadata
        - failureReason
        - destination
        - fiatAccountId
        - fiatAccountStatus
        - providerId
        - timeline
    PublicFailureReason:
      type: string
      description: >-
        Sanitized reason for a failed or cancelled transaction, suitable for
        display to end customers. Only populated for `CANCELLED`, `REFUNDED`, or
        `PENDING` (when a correctable error is present) states.
        `INVALID_DESTINATION` means the customer's fiat account details have a
        problem they can fix. `EXPIRED_QUOTE` means the quote expired before
        execution. `PROVIDER_REJECTED` means a provider business rule blocked
        the transaction. `PROVIDER_ERROR` means a transient provider issue.
        `REFUND_BY_PROVIDER` means the provider initiated a refund.
        `USER_BANNED` means the customer is banned. `INTERNAL_ERROR` is a
        catch-all for other failures.
      enum:
        - INVALID_DESTINATION
        - EXPIRED_QUOTE
        - PROVIDER_REJECTED
        - PROVIDER_ERROR
        - REFUND_BY_PROVIDER
        - USER_BANNED
        - INTERNAL_ERROR
    OffRampTransactionDestination:
      type: object
      description: Fiat destination account for an off-ramp transaction.
      properties:
        kind:
          type: string
          description: Type of fiat destination identifier.
          enum:
            - CVU
            - ALIAS
            - CLABE
            - BREB_KEY
        value:
          type: string
          description: The fiat account identifier (CVU number, alias, CLABE, or BREB key).
        label:
          type:
            - string
            - 'null'
          description: Optional human-readable label for the destination.
      required:
        - kind
        - value
        - label
    OffRampTransactionTimeline:
      type: object
      description: Progress milestones for an off-ramp transaction.
      properties:
        cryptoReceived:
          $ref: '#/components/schemas/Milestone'
        fundsSent:
          $ref: '#/components/schemas/Milestone'
        fundsConfirmed:
          $ref: '#/components/schemas/Milestone'
      required:
        - cryptoReceived
        - fundsSent
        - fundsConfirmed
    Milestone:
      type: object
      description: Status and timestamp of a single step in a transaction timeline.
      properties:
        status:
          type: string
          description: Current status of this milestone.
          enum:
            - not_started
            - in_progress
            - completed
            - failed
        at:
          type:
            - string
            - 'null'
          format: date-time
          description: >-
            ISO 8601 timestamp when this milestone was reached. Null if not yet
            reached.
      required:
        - status
        - at
  securitySchemes:
    BearerToken:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >-
        Access token obtained via
        [/oauth2/token/](/ramps-api/authentication/acquire-access-token). Use as
        `Authorization: Bearer <access_token>`.

````