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

# Get Invoices V1

> Returns a **detailed list of invoices** using the latest version of our invoice retrieval logic.
This endpoint provides comprehensive invoice information, including status, payment attempts, raw processor responses (if enabled), and additional filtering options available beyond the legacy version.

It supports flexible search by merchant customer reference, billing timestamps, and update timestamps.
Pagination is supported via **Page** and **PageSize** query parameters — with a maximum of **100 entries per page**. If not specified, the default is **page 1** with **100 results**.

Use this endpoint to power dashboards, reporting tools, or reconciliation processes requiring complete invoice details.
This is the **recommended endpoint** for retrieving invoices moving forward.



## OpenAPI

````yaml /api-reference/swagger.json get /api/Invoices/v{version}
openapi: 3.0.4
info:
  title: Revolv3 OpenApi Spec
  description: Spec for Revolv3
  version: 1.29.1
servers:
  - url: 'https://api-sandbox.revolv3.com '
security: []
paths:
  /api/Invoices/v{version}:
    get:
      tags:
        - Invoices
      summary: Get Invoices V1
      description: "Returns a **detailed list of invoices** using the latest version of our invoice retrieval logic.\r\nThis endpoint provides comprehensive invoice information, including status, payment attempts, raw processor responses (if enabled), and additional filtering options available beyond the legacy version.\r\n\r\nIt supports flexible search by merchant customer reference, billing timestamps, and update timestamps.\r\nPagination is supported via **Page** and **PageSize** query parameters — with a maximum of **100 entries per page**. If not specified, the default is **page 1** with **100 results**.\r\n\r\nUse this endpoint to power dashboards, reporting tools, or reconciliation processes requiring complete invoice details.\r\nThis is the **recommended endpoint** for retrieving invoices moving forward."
      parameters:
        - name: merchantCustomerRefId
          in: query
          schema:
            maxLength: 100
            minLength: 0
            type: string
        - name: billingStartDate
          in: query
          schema:
            maxLength: 40
            minLength: 0
            type: string
        - name: billingEndDate
          in: query
          schema:
            maxLength: 40
            minLength: 0
            type: string
        - name: lastUpdateStartDate
          in: query
          schema:
            maxLength: 40
            minLength: 0
            type: string
        - name: lastUpdateEndDate
          in: query
          schema:
            maxLength: 40
            minLength: 0
            type: string
        - name: lastAttemptOnly
          in: query
          schema:
            type: boolean
        - name: includeRawProcessorResponse
          in: query
          schema:
            type: boolean
        - name: page
          in: query
          schema:
            maximum: 1000
            minimum: 1
            type: integer
            format: int32
        - name: pageSize
          in: query
          schema:
            maximum: 100
            minimum: 1
            type: integer
            format: int32
        - name: orderBy
          in: query
          schema:
            $ref: '#/components/schemas/GetInvoicesV1OrderBy'
        - name: version
          in: path
          required: true
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/InvoiceDTO'
              example:
                - invoiceId: 1
                  customerId: null
                  merchantInvoiceRefId: 1234-5678-9101
                  binNumber: '411111'
                  last4Digit: '1111'
                  invoiceStatus: Pending
                  subtotal: 60.99
                  tax: 5.4
                  total: 66.39
                  billingDate: 22-May-26
                  merchantLegalName: null
                  merchantCustomerRefId: null
                  customerFirstName: null
                  customerLastName: null
                - invoiceId: 2
                  customerId: null
                  merchantInvoiceRefId: 1234-5678-9101
                  binNumber: '411111'
                  last4Digit: '1111'
                  invoiceStatus: Pending
                  subtotal: 40.99
                  tax: 3.6
                  total: 43.59
                  billingDate: 22-Jun-26
                  merchantLegalName: null
                  merchantCustomerRefId: null
                  customerFirstName: null
                  customerLastName: null
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/InvoiceDTO'
              example:
                - invoiceId: 1
                  customerId: null
                  merchantInvoiceRefId: 1234-5678-9101
                  binNumber: '411111'
                  last4Digit: '1111'
                  invoiceStatus: Pending
                  subtotal: 60.99
                  tax: 5.4
                  total: 66.39
                  billingDate: 22-May-26
                  merchantLegalName: null
                  merchantCustomerRefId: null
                  customerFirstName: null
                  customerLastName: null
                - invoiceId: 2
                  customerId: null
                  merchantInvoiceRefId: 1234-5678-9101
                  binNumber: '411111'
                  last4Digit: '1111'
                  invoiceStatus: Pending
                  subtotal: 40.99
                  tax: 3.6
                  total: 43.59
                  billingDate: 22-Jun-26
                  merchantLegalName: null
                  merchantCustomerRefId: null
                  customerFirstName: null
                  customerLastName: null
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/InvoiceDTO'
              example:
                - invoiceId: 1
                  customerId: null
                  merchantInvoiceRefId: 1234-5678-9101
                  binNumber: '411111'
                  last4Digit: '1111'
                  invoiceStatus: Pending
                  subtotal: 60.99
                  tax: 5.4
                  total: 66.39
                  billingDate: 22-May-26
                  merchantLegalName: null
                  merchantCustomerRefId: null
                  customerFirstName: null
                  customerLastName: null
                - invoiceId: 2
                  customerId: null
                  merchantInvoiceRefId: 1234-5678-9101
                  binNumber: '411111'
                  last4Digit: '1111'
                  invoiceStatus: Pending
                  subtotal: 40.99
                  tax: 3.6
                  total: 43.59
                  billingDate: 22-Jun-26
                  merchantLegalName: null
                  merchantCustomerRefId: null
                  customerFirstName: null
                  customerLastName: null
        '400':
          description: Bad Request
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/StatusMessageResponse'
              example:
                message: Unable to perform the request action with provided data.
            application/json:
              schema:
                $ref: '#/components/schemas/StatusMessageResponse'
              example:
                message: Unable to perform the request action with provided data.
            text/json:
              schema:
                $ref: '#/components/schemas/StatusMessageResponse'
              example:
                message: Unable to perform the request action with provided data.
        '401':
          description: Unauthorized
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/StatusMessageResponse'
              example:
                message: Attempted to perform an unauthorized operation.
            application/json:
              schema:
                $ref: '#/components/schemas/StatusMessageResponse'
              example:
                message: Attempted to perform an unauthorized operation.
            text/json:
              schema:
                $ref: '#/components/schemas/StatusMessageResponse'
              example:
                message: Attempted to perform an unauthorized operation.
      security:
        - Bearer: []
components:
  schemas:
    GetInvoicesV1OrderBy:
      enum:
        - BillingDate
        - LastUpdateDate
        - InvoiceId
      type: string
    InvoiceDTO:
      type: object
      properties:
        invoiceId:
          maximum: 1000000000
          minimum: 1
          type: integer
          description: The unique identifier of the invoice.
          format: int64
        parentInvoiceId:
          maximum: 1000000000
          minimum: 1
          type: integer
          format: int64
          nullable: true
        customerId:
          maximum: 1000000000
          minimum: 1
          type: integer
          description: The unique identifier of the customer.
          format: int64
        merchantInvoiceRefId:
          maxLength: 100
          minLength: 0
          type: string
          description: Merchant's unique identifier for the invoice.
        paymentMethod:
          $ref: '#/components/schemas/InvoicePaymentMethodDTO'
        invoiceStatus:
          maxLength: 100
          minLength: 0
          type: string
          description: "The current status of the invoice.\r\n\r\nPossible values: `Paid`, `Pending`, `Noncollectable`, `Failed`, `OneTimePaymentPending`, `RetryPending`."
        subtotal:
          maximum: 10000000
          minimum: 0
          type: number
          format: double
        tax:
          maximum: 10000000
          minimum: 0
          type: number
          format: double
        total:
          maximum: 10000000
          minimum: 0
          type: number
          format: double
        billingDate:
          maxLength: 20
          minLength: 0
          type: string
          description: The day on which the last billing was attempted for the invoice
        merchantLegalName:
          maxLength: 200
          minLength: 0
          type: string
          nullable: true
        merchantCustomerRefId:
          maxLength: 100
          minLength: 0
          type: string
          nullable: true
        customerFirstName:
          maxLength: 150
          minLength: 0
          type: string
          nullable: true
        customerLastName:
          maxLength: 150
          minLength: 0
          type: string
          nullable: true
        subscriptionId:
          maximum: 1000000000
          minimum: 1
          type: integer
          format: int64
          nullable: true
        installmentId:
          maximum: 1000000000
          minimum: 1
          type: integer
          format: int64
          nullable: true
        eligibilityFailReason:
          maxLength: 500
          minLength: 0
          type: string
          nullable: true
        merchantSubscriptionRefId:
          maxLength: 100
          minLength: 0
          type: string
          nullable: true
        networkTransactionId:
          maxLength: 100
          minLength: 0
          type: string
          description: "The identifier returned for Visa, Mastercard, and Discover transactions. Visa and Discover use this value to link subsequent payments in a recurring/installment stream back to the initial transaction.\r\nYou must include this value in the request message (**originalNetworkTransactionId** element) for subsequent recurring payments."
        currency:
          maxLength: 3
          minLength: 0
          type: string
          description: "The three-character ISO currency code.\r\n\r\nDefault value: `USD`"
        invoiceLineItems:
          type: array
          items:
            $ref: '#/components/schemas/InvoiceLineItemDTO'
          nullable: true
        invoiceAttempts:
          type: array
          items:
            $ref: '#/components/schemas/InvoiceAttemptDTO'
          nullable: true
        voidAttempts:
          type: array
          items:
            $ref: '#/components/schemas/VoidAttemptDTO'
          nullable: true
        invoiceStatusEnum:
          $ref: '#/components/schemas/InvoiceStatusEnum'
      additionalProperties: false
    StatusMessageResponse:
      type: object
      properties:
        message:
          type: string
          nullable: true
        errors:
          type: array
          items:
            type: string
          nullable: true
        fluentValidatorErrors:
          type: array
          items:
            $ref: '#/components/schemas/ValidationFailure'
          nullable: true
      additionalProperties: false
    InvoicePaymentMethodDTO:
      type: object
      properties:
        paymentMethodId:
          maximum: 1000000000
          minimum: 1
          type: integer
          description: The unique identifier for the payment method information.
          format: int64
        billingAddressId:
          maximum: 1000000000
          minimum: 1
          type: integer
          description: The unique identifier of the address.
          format: int64
        billingFirstName:
          maxLength: 100
          minLength: 0
          type: string
          description: "**Conditional**: either both BillingFirstName and BillingLastName or BillingFullName must be provided.\r\n\r\nThe customers’s first name associated with a payment method that is used for billing purposes."
        billingLastName:
          maxLength: 100
          minLength: 0
          type: string
          description: "**Conditional**: either both BillingFirstName and BillingLastName or BillingFullName must be provided.\r\n\r\nThe customers’s last name associated with a payment method that is used for billing purposes."
        merchantPaymentMethodRefId:
          maxLength: 100
          minLength: 0
          type: string
          description: Merchant's unique identifier for the payment method.
        billingAddress:
          allOf:
            - $ref: '#/components/schemas/AddressDTO'
          description: >-
            The address associated with a payment method that is used for
            billing purposes. Either an Address ID or detailed address
            information can be provided.
        paymentMethodAchDetails:
          allOf:
            - $ref: '#/components/schemas/AchViewDTO'
          description: ACH account information.
        paymentMethodCreditCardDetails:
          allOf:
            - $ref: '#/components/schemas/CreditCardViewDTO'
          description: The details of credit card payment method.
      additionalProperties: false
    InvoiceLineItemDTO:
      type: object
      properties:
        invoiceLineItemId:
          maximum: 1000000000
          minimum: 0
          type: integer
          format: int64
        name:
          maxLength: 100
          minLength: 0
          type: string
          nullable: true
        description:
          maxLength: 500
          minLength: 0
          type: string
          nullable: true
        value:
          maximum: 10000000
          minimum: 0
          type: number
          format: double
        valueType:
          maxLength: 50
          minLength: 0
          type: string
          nullable: true
        billingValueType:
          $ref: '#/components/schemas/BillingValueTypeEnum'
        invoiceId:
          maximum: 1000000000
          minimum: 1
          type: integer
          description: The unique identifier of the invoice.
          format: int64
      additionalProperties: false
    InvoiceAttemptDTO:
      type: object
      properties:
        invoiceAttemptId:
          maximum: 1000000000
          minimum: 1
          type: integer
          format: int64
        amount:
          maximum: 10000000
          minimum: 0
          type: number
          description: The amount information for the payment.
          format: double
        invoiceAttemptStatus:
          maxLength: 100
          minLength: 0
          type: string
          description: "The status of the invoice attempt.\r\n\r\nPossible values: `Success`, `Fail`, `Pending`, `RetrySuccess`, `RetryFail`, `RetryPending`."
        invoiceAttemptDate:
          type: string
          format: yyyy-MM-ddTHH:mm:ss.fff
        paymentProcessor:
          maxLength: 100
          minLength: 0
          type: string
          description: The name of the processor by which the transaction was processed.
          readOnly: true
        processorTransactionId:
          maxLength: 100
          minLength: 0
          type: string
          description: Payment Processor Transaction Id.
          readOnly: true
        responseCode:
          maxLength: 10
          minLength: 0
          type: string
          description: The processor response code.
          readOnly: true
        responseMessage:
          maxLength: 500
          minLength: 0
          type: string
          description: The processor response message.
          readOnly: true
        processorRawResponse:
          maxLength: 10000
          minLength: 0
          type: string
          description: "**Conditional. The value is returned if includeRawProcessorResponse = true.**\r\nThis field contains the raw data received from the processor after attempting to bill this payment. It does not contain any sensitive information. The field value is a string with the serialized response from the processor in JSON format."
        paymentMethod:
          $ref: '#/components/schemas/PaymentMethodDTO'
        descriptor:
          $ref: '#/components/schemas/TransactionDescriptorDto'
        eligibilityCheckOrderCode:
          maxLength: 100
          minLength: 0
          type: string
          nullable: true
          readOnly: true
        processorMerchantId:
          maxLength: 100
          minLength: 0
          type: string
          description: >-
            The merchant account ID (MID) of the processor by which the
            transaction was processed.
        processingMethod:
          maxLength: 50
          minLength: 0
          type: string
          nullable: true
        revolv3ResponseCode:
          maxLength: 10
          minLength: 0
          type: string
          nullable: true
        revolv3ResponseMessage:
          maxLength: 500
          minLength: 0
          type: string
          nullable: true
        authCode:
          maxLength: 20
          minLength: 0
          type: string
          nullable: true
        processorResponseDateTime:
          maxLength: 40
          type: string
          format: date-time
      additionalProperties: false
    VoidAttemptDTO:
      type: object
      properties:
        voidAttemptId:
          type: integer
          format: int64
        voidAttemptStatus:
          type: string
          nullable: true
        voidAttemptDate:
          type: string
          format: yyyy-MM-ddTHH:mm:ss.fff
        paymentProcessor:
          type: string
          description: The name of the processor by which the transaction was processed.
          readOnly: true
        processorTransactionId:
          type: string
          description: Payment Processor Transaction Id.
          readOnly: true
        responseCode:
          type: string
          description: The processor response code.
          readOnly: true
        responseMessage:
          type: string
          description: The processor response message.
          readOnly: true
        revolv3ResponseCode:
          type: string
          nullable: true
        revolv3ResponseMessage:
          type: string
          nullable: true
        processorResponseDateTime:
          maxLength: 40
          type: string
          format: date-time
        processorRawResponse:
          type: string
          nullable: true
      additionalProperties: false
    InvoiceStatusEnum:
      enum:
        - Paid
        - Void
        - Pending
        - Recycle
        - Noncollectable
        - Failed
        - Refund
        - MerchantPaid
        - MerchantCancelled
        - OneTimePaymentPending
        - PartialRefund
        - BatchPending
        - CapturePending
        - RefundPending
        - RefundDeclined
        - RefundFailed
        - RetryPending
        - RecurringPending
        - MultiCardsPending
        - RefundVoid
        - PartialRefundVoid
      type: string
    ValidationFailure:
      type: object
      properties:
        propertyName:
          type: string
          nullable: true
        errorMessage:
          type: string
          nullable: true
        attemptedValue:
          nullable: true
        customState:
          nullable: true
        severity:
          $ref: '#/components/schemas/Severity'
        errorCode:
          type: string
          nullable: true
        formattedMessagePlaceholderValues:
          type: object
          additionalProperties:
            nullable: true
          nullable: true
      additionalProperties: false
    AddressDTO:
      type: object
      properties:
        addressId:
          type: integer
          description: The unique identifier of the address.
          format: int64
        addressLine1:
          maxLength: 40
          minLength: 2
          type: string
          description: Address.
          nullable: true
        addressLine2:
          maxLength: 40
          minLength: 0
          type: string
          description: Supplemental information for the address.
        city:
          maxLength: 25
          minLength: 2
          type: string
          description: City.
          nullable: true
        state:
          maxLength: 2
          minLength: 2
          type: string
          description: Two-letter state abbreviation.
          nullable: true
        postalCode:
          maxLength: 20
          minLength: 2
          type: string
          description: Postal Code.
          nullable: true
        phoneNumber:
          maxLength: 20
          minLength: 0
          type: string
          description: >-
            The phone number associated with a payment method that is used for
            billing purposes.
        email:
          maxLength: 100
          minLength: 0
          type: string
          description: The email associated with a billing address.
          format: email
        country:
          maxLength: 2
          minLength: 2
          type: string
          description: Country.
          nullable: true
      additionalProperties: false
    AchViewDTO:
      type: object
      properties:
        accountNumberLast4Digits:
          maxLength: 4
          minLength: 4
          pattern: ^\d{4}$
          type: string
          description: Last 4 digits of the bank account.
        accountNumberLength:
          maximum: 17
          minimum: 4
          type: integer
          description: Bank account number length.
          format: int32
        accountType:
          maxLength: 8
          minLength: 0
          pattern: ^(Checking|Savings)$
          type: string
          description: "**Conditional**: the account type is required if the ACH payment method type is supplied in the request.\r\n\r\nBank account type. Allowed values: Checking, Savings. Case-insensitive."
      additionalProperties: false
      nullable: true
    CreditCardViewDTO:
      type: object
      properties:
        binNumber:
          maxLength: 6
          minLength: 0
          pattern: ^\d{1,6}$
          type: string
          description: First 6 digits (BIN) of the card number.
        paymentLast4Digit:
          maxLength: 4
          minLength: 4
          pattern: ^\d{4}$
          type: string
          description: Payment card last 4 digits.
        paymentExpirationDate:
          maxLength: 4
          minLength: 0
          type: string
          description: The card expiration date.
          format: MMYY
          nullable: true
        accountUpdateMessage:
          maxLength: 500
          minLength: 0
          type: string
          description: Account updater message, if available.
        accountUpdateDateTime:
          maxLength: 20
          minLength: 0
          type: string
          description: UTC date-time of the last account updater event.
          format: YYYY-MM-DDThh:mm:ss
          nullable: true
        accountUpdateCode:
          maxLength: 50
          minLength: 0
          type: string
          description: Processor response code of the last account updater event.
      additionalProperties: false
      nullable: true
    BillingValueTypeEnum:
      enum:
        - Standard
        - Discount
        - DiscountPercentage
        - FinalDiscount
        - PriceOverride
      type: string
    PaymentMethodDTO:
      type: object
      properties:
        paymentMethodId:
          maximum: 1000000000
          minimum: 1
          type: integer
          description: The unique identifier for the payment method information.
          format: int64
        billingAddressId:
          maximum: 1000000000
          minimum: 1
          type: integer
          description: The unique identifier of the address.
          format: int64
        billingAddress:
          $ref: '#/components/schemas/AddressDTO'
        billingFirstName:
          maxLength: 100
          minLength: 0
          type: string
          nullable: true
        billingLastName:
          maxLength: 100
          minLength: 0
          type: string
          nullable: true
        merchantPaymentMethodRefId:
          maxLength: 100
          minLength: 0
          type: string
          description: Merchant's unique identifier for the payment method.
        paymentMethodAchDetails:
          allOf:
            - $ref: '#/components/schemas/AchViewDTO'
          description: ACH account information.
        paymentMethodCreditCardDetails:
          allOf:
            - $ref: '#/components/schemas/CreditCardViewDTO'
          description: The details of credit card payment method.
      additionalProperties: false
    TransactionDescriptorDto:
      type: object
      properties:
        subMerchantId:
          type: string
          nullable: true
        subMerchantName:
          type: string
          nullable: true
        subMerchantPhone:
          type: string
          nullable: true
        countryCode:
          type: string
          nullable: true
        city:
          type: string
          nullable: true
      additionalProperties: false
    Severity:
      enum:
        - Error
        - Warning
        - Info
      type: string
  securitySchemes:
    Bearer:
      type: http
      scheme: bearer
      bearerFormat: JWT

````