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

# Get receivable's history

> Returns the history of the specified accounts receivable document. The history contains all revisions of the document, status updates, and other events that occurred during the document's lifecycle. For more information, see [Document history](https://docs.monite.com/accounts-receivable/document-history).

You can filter the history by the date range and event type. Events are sorted from oldest to newest by default.



## OpenAPI

````yaml /.tooling/schemas/rest/tags/product-finops.json get /finops/v1/receivables/{receivable_id}/history
openapi: 3.1.0
info:
  title: Tesouro Partner API
  version: '2026-09-24'
  description: The Tesouro REST API, for Tesouro partners to integrate with our solution.
  termsOfService: https://tesouro.com/terms
  contact:
    name: Tesouro team
    url: https://tesouro.com/about/
    email: developers@tesouro.com
servers:
  - url: https://api.sandbox.tesouro.com
    description: Sandbox
security: []
tags:
  - name: Accounting connections
  - name: Accounting data pull
  - name: Accounting synchronized records
  - name: Accounting tax rates
  - name: Analytics
  - name: Approval policies
  - name: Approval requests
  - name: Bank details
  - name: Comments
  - name: Cost centers
  - name: Counterpart addresses
  - name: Counterpart bank accounts
  - name: Counterpart contacts
  - name: Counterpart VAT IDs
  - name: Counterparts
  - name: Credit notes
  - name: Custom tax rates
  - name: Delivery notes
  - name: Departments
  - name: Disclosures
  - name: Documents
  - name: Events
  - name: Files
  - name: Ledger accounts
  - name: Locations
  - name: Mail templates
  - name: Mailbox domains
  - name: Mailboxes
  - name: Measure units
  - name: OCR
  - name: OIDC applications
  - name: Organizations
  - name: Overdue reminders
  - name: Payable duplicates
  - name: Payable line items
  - name: Payables
  - name: Payment intents
  - name: Payment links
  - name: Payment methods
  - name: Payment records
  - name: Payment reminders
  - name: Payment terms
  - name: PDF templates
  - name: Products
  - name: Projects
  - name: Purchase orders
  - name: Receipts
  - name: Receivables
  - name: Recurrences
  - name: Roles
  - name: Tags
  - name: Text templates
  - name: Transactions
  - name: Users
  - name: Webhook deliveries
  - name: Webhook subscriptions
paths:
  /finops/v1/receivables/{receivable_id}/history:
    get:
      tags:
        - Receivables
      summary: Get receivable's history
      description: >-
        Returns the history of the specified accounts receivable document. The
        history contains all revisions of the document, status updates, and
        other events that occurred during the document's lifecycle. For more
        information, see [Document
        history](https://docs.monite.com/accounts-receivable/document-history).


        You can filter the history by the date range and event type. Events are
        sorted from oldest to newest by default.
      operationId: get_receivables_id_history
      parameters:
        - required: true
          schema:
            type: string
            format: date
          example: '2026-09-24'
          name: x-finops-version
          in: header
        - name: receivable_id
          in: path
          required: true
          schema:
            type: string
            format: uuid
          description: >-
            ID of the accounts receivable document whose history you want to
            get.
        - name: order
          in: query
          required: false
          schema:
            $ref: '#/components/schemas/OrderEnum'
            default: asc
          description: >-
            Sort order (ascending by default). Typically used together with the
            `sort` parameter.
        - name: limit
          in: query
          required: false
          schema:
            type: integer
            maximum: 100
            minimum: 1
            default: 100
          description: >-
            The number of items (0 .. 100) to return in a single page of the
            response. The response may contain fewer items if it is the last or
            only page.
        - name: pagination_token
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
          description: >-
            A pagination token obtained from a previous call to this endpoint.
            Use it to get the next or previous page of results for your initial
            query. If `pagination_token` is specified, all other query
            parameters are ignored and inferred from the initial query.


            If not specified, the first page of results will be returned.
        - name: sort
          in: query
          required: false
          schema:
            anyOf:
              - $ref: '#/components/schemas/ReceivableHistoryCursorFields'
              - type: 'null'
          description: >-
            The field to sort the results by. Typically used together with the
            `order` parameter.
        - name: event_type__in
          in: query
          required: false
          schema:
            type: array
            items:
              $ref: '#/components/schemas/ReceivableHistoryEventTypeEnum'
          description: >-
            Return only the specified [event
            types](https://docs.monite.com/accounts-receivable/document-history#event-types).
            To include multiple types, repeat this parameter for each value:

            `event_type__in=receivable_updated&event_type__in=status_changed`
        - name: entity_user_id__in
          in: query
          required: false
          schema:
            items:
              type: string
              format: uuid
            type: array
          description: >-
            Return only events caused by the entity users with the specified
            IDs. To specify multiple user IDs, repeat this parameter for each
            ID:

            `entity_user_id__in=<user1>&entity_user_id__in=<user2>`
        - name: timestamp__gt
          in: query
          required: false
          schema:
            type: string
            format: date-time
          description: >-
            Return only events that occurred after the specified date and time.
            The value must be in the ISO 8601 format
            `YYYY-MM-DDThh:mm[:ss[.ffffff]][Z|±hh:mm]`.
        - name: timestamp__lt
          in: query
          required: false
          schema:
            type: string
            format: date-time
          description: Return only events that occurred before the specified date and time.
        - name: timestamp__gte
          in: query
          required: false
          schema:
            type: string
            format: date-time
          description: >-
            Return only events that occurred on or after the specified date and
            time.
        - name: timestamp__lte
          in: query
          required: false
          schema:
            type: string
            format: date-time
          description: >-
            Return only events that occurred before or on the specified date and
            time.
        - name: x-organization-id
          in: header
          required: true
          schema:
            type: string
            format: uuid
            examples:
              - 9d2b4c8f-2087-4738-ba91-7359683c49a4
          description: The ID of the entity that owns the requested resource.
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ReceivableHistoryPaginationResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorSchemaResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorSchemaResponse'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorSchemaResponse'
        '404':
          description: Not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorSchemaResponse'
        '405':
          description: Method Not Allowed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorSchemaResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorSchemaResponse'
      security:
        - HTTPBearer: []
components:
  schemas:
    OrderEnum:
      type: string
      enum:
        - asc
        - desc
    ReceivableHistoryCursorFields:
      type: string
      enum:
        - timestamp
    ReceivableHistoryEventTypeEnum:
      type: string
      enum:
        - status_changed
        - receivable_created
        - receivable_updated
        - based_on_receivable_created
        - payment_received
        - mail_sent
        - payment_reminder_mail_sent
        - overdue_reminder_mail_sent
        - deleted
    ReceivableHistoryPaginationResponse:
      properties:
        data:
          items:
            $ref: '#/components/schemas/ReceivableHistoryResponse'
          type: array
        next_pagination_token:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            A token that can be sent in the `pagination_token` query parameter
            to get the next page of results, or `null` if there is no next page
            (i.e. you've reached the last page).
        prev_pagination_token:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            A token that can be sent in the `pagination_token` query parameter
            to get the previous page of results, or `null` if there is no
            previous page (i.e. you've reached the first page).
      additionalProperties: false
      type: object
      required:
        - data
      description: A paginated list of change history records.
    ErrorSchemaResponse:
      properties:
        error:
          $ref: '#/components/schemas/ErrorSchema'
      type: object
      required:
        - error
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
      type: object
    ReceivableHistoryResponse:
      properties:
        id:
          type: string
          format: uuid
          description: A unique ID of the history record.
          examples:
            - cd58435b-1c79-4b17-9f79-f898c93e5f97
        current_pdf_url:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            A URL of the PDF file that shows the document state after the
            change. Available only for the following event types:
            `receivable_created`, `receivable_updated`, `status_changed`, and
            `payment_received`. In other event types the `current_pdf_url` value
            is `null`.


            In `payment_received` events, the `current_pdf_url` value is
            available only in case of full payments and only if the entity
            setting `generate_paid_invoice_pdf` is `true`.


            Note that Monite generates PDFs asynchronously. This means that the
            initial value of `current_pdf_url` for the abovementioned events
            right after they occurred is usually `null` and the value gets
            populated later after the PDF document has been generated.
          examples:
            - https://monite-file-saver.example.com/12345/67890.pdf
        entity_user_first_name:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            First name of the entity user who made the change, as it was at the
            time of the event. `null` on rows where it was not captured:
            `recorded_by` is `system`, the event predates this field, or the
            name could not be resolved when the row was written.
          examples:
            - Mary
        entity_user_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          description: >-
            ID of the entity user who made the change or trigger the event, or
            `null` if it was done by using a partner access token.
          examples:
            - d5a577b0-01c0-4566-ac5c-44f41935e8c4
        entity_user_last_name:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            Last name of the entity user who made the change, as it was at the
            time of the event. `null` on rows where it was not captured:
            `recorded_by` is `system`, the event predates this field, or the
            name could not be resolved when the row was written.
          examples:
            - Wong
        entity_user_role_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          description: >-
            ID of the role the entity user held at the time of the event. `null`
            on rows where it was not captured: `recorded_by` is `system`, the
            event predates this field, or the role could not be resolved when
            the row was written.
          examples:
            - 9f8b1a2c-3d4e-4f50-a61b-7c8d9e0f1a2b
        entity_user_role_name:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            Display name of the role the entity user held at the time of the
            event. `null` on rows where it was not captured: `recorded_by` is
            `system`, the event predates this field, or the role could not be
            resolved when the row was written.
          examples:
            - Finance admin
        event_data:
          anyOf:
            - $ref: '#/components/schemas/StatusChangedEventData'
            - $ref: '#/components/schemas/ReceivableUpdatedEventData'
            - $ref: '#/components/schemas/ReceivableCreatedEventData'
            - $ref: '#/components/schemas/BasedOnReceivableCreatedEventData'
            - $ref: '#/components/schemas/PaymentReceivedEventData'
            - $ref: '#/components/schemas/MailSentEventData'
            - $ref: '#/components/schemas/ReminderMailSentEventData'
            - $ref: '#/components/schemas/DeletedEventData'
          description: >-
            An object containing additional information about the event or
            change. The object structure varies based on the `event_type`. In
            `receivable_created` events it carries the document's initial
            `status` and its creation `source`. In `receivable_updated` events
            it carries a `fields` map describing what changed: each entry names
            a field and gives its `old` and `new` values. An update where
            nothing tracked changed carries an empty field map (`{"fields":
            {}}`).
        event_type:
          type: string
          description: The type of the event or change.
        receivable_id:
          type: string
          format: uuid
          description: >-
            ID of the receivable document that was changed or triggered an
            event.
          examples:
            - f669a8a4-0563-4ab9-b54f-e9d700d282c5
        recorded_by:
          type: string
          enum:
            - user
            - system
          description: >-
            Whether the row is attributed to an entity user or to no user:
            'user' when entity_user_id is set, 'system' when it is null.
        timestamp:
          type: string
          format: date-time
          description: UTC date and time when the event or change occurred.
      type: object
      required:
        - id
        - receivable_id
        - event_type
        - event_data
        - timestamp
        - recorded_by
      description: >-
        Represents an entry in the change history of an accounts receivable
        document.
    ErrorSchema:
      properties:
        message:
          type: string
      type: object
      required:
        - message
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
        msg:
          type: string
        type:
          type: string
      type: object
      required:
        - loc
        - msg
        - type
    StatusChangedEventData:
      properties:
        comment:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            A user-defined comment explaining the status change. Present only
            when a document is marked uncollectible with a comment; `null`
            otherwise.
        new_status:
          $ref: '#/components/schemas/ReceivablesStatusEnum'
          description: The new status of a document.
          examples:
            - issued
        old_status:
          $ref: '#/components/schemas/ReceivablesStatusEnum'
          description: The old status of a document.
          examples:
            - draft
      additionalProperties: false
      type: object
      required:
        - old_status
        - new_status
      description: >-
        Contains information about a document's status change. See the
        applicable

        [invoice
        statuses](https://docs.monite.com/accounts-receivable/invoices/index),

        [quote
        statuses](https://docs.monite.com/accounts-receivable/quotes/index),

        and [credit note
        statuses](https://docs.monite.com/accounts-receivable/credit-notes#credit-note-lifecycle).
    ReceivableUpdatedEventData:
      properties:
        fields:
          additionalProperties:
            $ref: '#/components/schemas/ReceivableFieldDiff'
          type: object
      additionalProperties: false
      type: object
    ReceivableCreatedEventData:
      properties:
        source:
          $ref: '#/components/schemas/ReceivableCreationSourceEnum'
          description: >-
            How the document was created: directly (`manual`), derived from
            another document (`based_on`), or issued by a recurrence
            (`recurrence`).
          examples:
            - manual
        status:
          $ref: '#/components/schemas/ReceivablesStatusEnum'
          description: The status the document was created with.
          examples:
            - draft
      additionalProperties: false
      type: object
      required:
        - source
        - status
      description: Contains information about a newly created receivable document.
    BasedOnReceivableCreatedEventData:
      properties:
        receivable_id:
          type: string
          format: uuid
          description: The ID of the newly created receivable document.
          examples:
            - 1531cf6e-52f5-4203-acb2-7cc3a37660c6
        type:
          $ref: '#/components/schemas/ReceivableType'
          description: >-
            The type of the receivable document that was created based on the
            current document.
      additionalProperties: false
      type: object
      required:
        - receivable_id
        - type
      description: >-
        In invoice history, this object contains information about a credit note
        created for this invoice.

        In quote history, it contains information about an invoice created from
        this quote.
    PaymentReceivedEventData:
      properties:
        amount_due:
          type: integer
          description: >-
            The remaining amount due of the invoice, in [minor
            units](https://docs.monite.com/references/currencies#minor-units) of
            the currency. For example, $12.5 is represented as 1250.
          examples:
            - 0
        amount_paid:
          type: integer
          description: The payment amount, in minor units of the currency.
          examples:
            - 1250
        comment:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            A user-defined comment about this payment, or `null` if no comment
            was provided. Comments are available only for payments recorded via
            `POST /receivables/{receivable_id}/mark_as_paid` and `POST
            /receivables/{receivable_id}/mark_as_partially_paid`.
        is_external:
          anyOf:
            - type: boolean
            - type: 'null'
          description: >-
            `true` if the payment was recorded manually rather than processed by
            the platform, `null` if not provided.
        paid_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          description: Date and time when the payment was made, or `null` if not provided.
        payment_intent_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          description: >-
            ID of the payment intent that was paid, or `null` for a manual
            mark-as-paid.
          examples:
            - a2b8c6e1-527c-4586-84c9-95881e7ba19f
        payment_method:
          anyOf:
            - type: string
            - type: 'null'
          description: The payment method used, or `null` for a manual mark-as-paid.
          examples:
            - ach
        payment_record_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          description: >-
            ID of the Reconciliation payment record behind this payment, or
            `null` for a manual mark-as-paid.
          examples:
            - c1a4a3d0-1c79-4b17-9f79-f898c93e5f97
      additionalProperties: false
      type: object
      required:
        - amount_due
        - amount_paid
      description: Contains information about a payment received for an invoice.
    MailSentEventData:
      properties:
        mail_id:
          type: string
          format: uuid
          description: >-
            ID of the email sending operation. Can be used to get the email
            sending status from `GET
            /receivables/{receivable_id}/mails/{mail_id}`.
          examples:
            - d6185c8d-527c-4586-84c9-95881e7ba19f
        mail_status:
          $ref: '#/components/schemas/ReceivableMailStatusEnum'
          description: The overall email sending status across all recipients.
        recipients:
          $ref: '#/components/schemas/ReceivableMailRecipients'
          description: >-
            Contains a list of email recipients (To, CC, BCC) and the email
            sending status for each recipient.
      additionalProperties: false
      type: object
      required:
        - recipients
        - mail_status
        - mail_id
      description: Contains information about a sent email.
    ReminderMailSentEventData:
      properties:
        mail_id:
          type: string
          format: uuid
          description: >-
            ID of the email sending operation. Can be used to get the email
            sending status from `GET
            /receivables/{receivable_id}/mails/{mail_id}`.
          examples:
            - d6185c8d-527c-4586-84c9-95881e7ba19f
        mail_status:
          $ref: '#/components/schemas/ReceivableMailStatusEnum'
          description: The overall email sending status across all recipients.
        recipients:
          $ref: '#/components/schemas/ReceivableMailRecipients'
          description: >-
            Contains a list of email recipients (To, CC, BCC) and the email
            sending status for each recipient.
        term:
          $ref: '#/components/schemas/ReminderTypeEnum'
          description: >-
            Invoice reminder type:


            * `term_1` - [payment
            reminder](https://docs.monite.com/accounts-receivable/invoices/payment-reminders)
            sent before discount date 1,

            * `term_2` - payment reminder sent before discount date 2,

            * `term_final` - payment reminder sent before the invoice due date.

            * `overdue` - [overdue
            reminder](https://docs.monite.com/accounts-receivable/invoices/overdue-reminders)
            sent after the due date.
      additionalProperties: false
      type: object
      required:
        - term
        - recipients
        - mail_status
        - mail_id
      description: Contains information about an invoice reminder sent via email.
    DeletedEventData:
      properties:
        old_status:
          $ref: '#/components/schemas/ReceivablesStatusEnum'
          description: The status the document held before it was deleted.
          examples:
            - draft
      additionalProperties: false
      type: object
      required:
        - old_status
      description: >-
        Contains information about a deleted receivable document. Only draft
        documents can be deleted.
    ReceivablesStatusEnum:
      type: string
      enum:
        - draft
        - issued
        - failed
        - accepted
        - expired
        - declined
        - recurring
        - partially_paid
        - paid
        - overdue
        - uncollectible
        - canceled
        - deleted
      description: >-
        This Enum the results of combining two types of statuses from

        QuoteStateEnum, CreditNoteStateEnum and InvoiceStateEnum. You shouldn't
        use

        it in your scenarios if only for edge cases in workers, but ideally need
        to

        remove this shared Enum.
    ReceivableFieldDiff:
      properties:
        new:
          anyOf:
            - {}
            - type: 'null'
        new_label:
          anyOf:
            - type: string
            - type: 'null'
        old:
          anyOf:
            - {}
            - type: 'null'
        old_label:
          anyOf:
            - type: string
            - type: 'null'
      additionalProperties: false
      type: object
      required:
        - new
        - old
    ReceivableCreationSourceEnum:
      type: string
      enum:
        - manual
        - based_on
        - recurrence
      description: How a receivable document came into being.
    ReceivableType:
      type: string
      enum:
        - quote
        - invoice
        - credit_note
    ReceivableMailStatusEnum:
      type: string
      enum:
        - pending
        - processing
        - sent
        - partially_sent
        - failed
    ReceivableMailRecipients:
      properties:
        bcc:
          items:
            $ref: '#/components/schemas/ReceivableMailRecipientState'
          type: array
        cc:
          items:
            $ref: '#/components/schemas/ReceivableMailRecipientState'
          type: array
        to:
          items:
            $ref: '#/components/schemas/ReceivableMailRecipientState'
          type: array
      additionalProperties: false
      type: object
    ReminderTypeEnum:
      type: string
      enum:
        - term_1
        - term_2
        - term_final
        - overdue
    ReceivableMailRecipientState:
      properties:
        email:
          type: string
          format: email
          description: An email address of the recipient.
        error:
          anyOf:
            - type: string
            - type: 'null'
          description: An error message in case the mailing was unsuccessful.
        is_success:
          type: boolean
          description: Whether mail was sent successfully.
      additionalProperties: false
      type: object
      required:
        - email
        - is_success
  securitySchemes:
    HTTPBearer:
      type: http
      scheme: bearer

````