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

# List transactions

> Lists transactions across your stores, ordered by transaction ID. Filter by store and completion time to pull a window of sales, and page through the results with the cursor parameters.



## OpenAPI

````yaml /api/openapi.json get /v1/transactions
openapi: 3.0.0
info:
  title: Vori API
  description: ''
  version: 1.0.0
  contact: {}
servers:
  - url: https://api.vori.com
    description: production
security: []
tags: []
paths:
  /v1/transactions:
    get:
      tags:
        - Transactions
      summary: List transactions
      description: >-
        Lists transactions across your stores, ordered by transaction ID. Filter
        by store and completion time to pull a window of sales, and page through
        the results with the cursor parameters.
      operationId: listTransactions
      parameters:
        - name: completed_at
          required: false
          in: query
          schema:
            type: string
            format: date-time
          description: >-
            When the transaction was completed. UTC unless the value carries an
            offset.
        - name: completed_at[gt]
          required: false
          in: query
          schema:
            type: string
            format: date-time
          description: >-
            When the transaction was completed. UTC unless the value carries an
            offset.
        - name: completed_at[gte]
          required: false
          in: query
          schema:
            type: string
            format: date-time
          description: >-
            When the transaction was completed. UTC unless the value carries an
            offset.
        - name: completed_at[lt]
          required: false
          in: query
          schema:
            type: string
            format: date-time
          description: >-
            When the transaction was completed. UTC unless the value carries an
            offset.
        - name: completed_at[lte]
          required: false
          in: query
          schema:
            type: string
            format: date-time
          description: >-
            When the transaction was completed. UTC unless the value carries an
            offset.
        - name: employee_id
          required: false
          in: query
          style: form
          explode: true
          description: >-
            The cashier who completed the transaction. Repeat to match any of up
            to 20 values.
          schema:
            type: array
            items:
              type: string
        - name: ending_before
          required: false
          in: query
          description: Return records that precede the record with this ID, in list order.
          schema:
            type: string
        - name: external_id
          required: false
          in: query
          schema:
            type: string
            maxLength: 255
          description: Your own identifier for the transaction. Matched exactly.
        - name: lane_id
          required: false
          in: query
          style: form
          explode: true
          description: >-
            The lane the transaction was completed on. Repeat to match any of up
            to 20 values.
          schema:
            type: array
            items:
              type: string
        - name: limit
          required: false
          in: query
          description: Maximum number of records to return.
          schema:
            minimum: 1
            maximum: 100
            default: 20
            type: integer
        - name: shopper_id
          required: false
          in: query
          style: form
          explode: true
          description: >-
            The identified shopper, for transactions that had one. Accepts a
            TypeID or a UUID. Repeat to match any of up to 20 values.
          schema:
            type: array
            items:
              type: string
        - name: starting_after
          required: false
          in: query
          description: Return records that follow the record with this ID, in list order.
          schema:
            type: string
        - name: status
          required: false
          in: query
          style: form
          explode: true
          description: >-
            Lifecycle status of the transaction. Repeat to match any of up to 20
            values.
          schema:
            type: array
            items:
              type: string
              enum:
                - completed
                - expired
                - suspended
                - voided
        - name: store_id
          required: false
          in: query
          style: form
          explode: true
          description: >-
            The store where the transaction was completed. Repeat to match any
            of up to 20 values.
          schema:
            type: array
            items:
              type: string
        - name: type
          required: false
          in: query
          style: form
          explode: true
          description: >-
            Whether the transaction is a sale, a refund, or a void. Repeat to
            match any of up to 20 values.
          schema:
            type: array
            items:
              type: string
              enum:
                - refund
                - sale
                - void
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TransactionsList'
        '400':
          description: ''
          content:
            application/json:
              schema:
                anyOf:
                  - $ref: '#/components/schemas/ConflictingListParametersError'
                  - $ref: '#/components/schemas/InvalidListCursorError'
        '403':
          description: ''
          content:
            application/json:
              schema:
                anyOf:
                  - $ref: '#/components/schemas/InsufficientPermissionsError'
                  - $ref: '#/components/schemas/NoBannerAssociationError'
      security:
        - bearer: []
components:
  schemas:
    TransactionsList:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Transaction'
        has_more:
          type: boolean
          description: Whether more records follow this page.
      description: A page of transactions.
      required:
        - data
        - has_more
    ConflictingListParametersError:
      type: object
      properties:
        error_code:
          type: string
          enum:
            - conflicting_list_parameters
      required:
        - error_code
    InvalidListCursorError:
      type: object
      properties:
        error_code:
          type: string
          enum:
            - invalid_list_cursor
      required:
        - error_code
    InsufficientPermissionsError:
      type: object
      properties:
        error_code:
          type: string
          enum:
            - insufficient_permissions
        error_details:
          $ref: '#/components/schemas/InsufficientPermissionsErrorDetails'
      required:
        - error_code
        - error_details
    NoBannerAssociationError:
      type: object
      properties:
        error_code:
          type: string
          enum:
            - no_banner_association
      required:
        - error_code
    Transaction:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for the record.
        cashback_amount:
          type: string
          description: Cash back requested by the shopper.
          format: monetary
          example: '199.99'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
        completed_at:
          type: string
          description: Date and time when the transaction was finalized.
          format: date-time
        coupon_total:
          type: string
          description: Total savings from coupons.
          format: monetary
          example: '199.99'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
        discount_total:
          type: string
          description: Total savings from manual or employee discounts.
          format: monetary
          example: '199.99'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
        employee_id:
          type: string
          description: ID of the employee who processed the transaction.
          pattern: ^[0-9]+$
        external_id:
          type: string
          nullable: true
          description: >-
            Your own identifier for the transaction, as supplied when it was
            recorded.
        gift_card_sales:
          description: Gift cards purchased in the transaction.
          type: array
          items:
            $ref: '#/components/schemas/TransactionGiftCardSale'
        gift_card_sales_total:
          type: string
          description: Total face value of gift cards purchased in the transaction.
          format: monetary
          example: '199.99'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
        issued_coupons:
          description: Coupons issued to the shopper by the transaction.
          type: array
          items:
            $ref: '#/components/schemas/TransactionIssuedCoupon'
        item_modifier_total:
          type: string
          description: Total value of item modifiers.
          format: monetary
          example: '199.99'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
        lane_id:
          type: string
          description: ID of the checkout lane that processed the transaction.
          pattern: ^[0-9]+$
        line_items:
          description: Product line items included in the transaction.
          type: array
          items:
            $ref: '#/components/schemas/TransactionLineItem'
        loyalty_rewards_total:
          type: string
          description: Total savings from loyalty reward redemptions.
          format: monetary
          example: '199.99'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
        metadata:
          type: object
          maxProperties: 50
          additionalProperties:
            type: string
            maxLength: 500
          example:
            order_source: shopify
            fulfillment_id: '88213'
          nullable: true
          description: >-
            Your own key/value pairs, exactly as supplied when the transaction
            was recorded.
        payments:
          description: Payments collected for the transaction.
          type: array
          items:
            $ref: '#/components/schemas/TransactionPayment'
        points_earned:
          type: string
          description: >-
            Loyalty points the shopper earned on this transaction, computed from
            the products sold and the store banner loyalty program. Zero when
            the transaction names no shopper or the banner has no active loyalty
            program. Negative on a refund, which reverses the points the
            original sale earned.
          example: '199.99'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
        promo_savings:
          type: string
          description: Total savings from promotions.
          format: monetary
          example: '199.99'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
        promo_total:
          type: string
          description: Sum of line-item totals after promotions are applied.
          format: monetary
          example: '199.99'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
        receipt_type:
          nullable: true
          description: How the shopper took their receipt, or null when they took none.
          allOf:
            - $ref: '#/components/schemas/ReceiptType'
        refund_total:
          type: string
          description: Total value refunded against this transaction.
          format: monetary
          example: '199.99'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
        refunds:
          description: >-
            Refunds of the transaction. Retrieve one with `GET
            /v1/transactions/{id}` for the products returned and how the money
            went back.
          type: array
          items:
            $ref: '#/components/schemas/CompactRefund'
        retail_total:
          type: string
          description: >-
            Sum of line-item retail totals after promotions and before discounts
            and tax.
          format: monetary
          example: '199.99'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
        shopper_facing_id:
          type: string
          description: Human-readable transaction identifier shown to the shopper.
        shopper_id:
          type: string
          nullable: true
          description: >-
            ID of the loyalty shopper associated with the transaction, or null
            for an anonymous transaction.
          format: uuid
        source:
          description: Where the transaction came from.
          allOf:
            - $ref: '#/components/schemas/TransactionSource'
        started_at:
          type: string
          description: Date and time when the cashier started the transaction.
          format: date-time
        status:
          description: Current lifecycle status of the transaction.
          allOf:
            - $ref: '#/components/schemas/TransactionStatus'
        store_id:
          type: string
          description: ID of the store where the transaction was placed.
          pattern: ^[0-9]+$
        subtotal:
          type: string
          description: Sum of line-item subtotals before promotions, discounts, and tax.
          format: monetary
          example: '199.99'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
        tax_total:
          type: string
          description: Total tax charged on the transaction.
          format: monetary
          example: '199.99'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
        taxable_amount:
          type: string
          description: Portion of the transaction subject to tax.
          format: monetary
          example: '199.99'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
        tip_amount:
          type: string
          description: Tip added by the shopper.
          format: monetary
          example: '199.99'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
        total:
          type: string
          description: >-
            Final transaction amount including tax. Sales are positive and
            refunds are negative.
          format: monetary
          example: '199.99'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
        total_collected:
          type: string
          description: >-
            Total collected from the shopper, including the transaction total,
            tip, and cash back.
          format: monetary
          example: '199.99'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
        type:
          description: Financial transaction type represented by the transaction.
          allOf:
            - $ref: '#/components/schemas/TransactionType'
      description: >-
        A completed checkout at a store, covering the lane, cashier, and
        shopper, the products sold, the savings applied, the payments collected,
        and any refunds against it.
      required:
        - id
        - cashback_amount
        - completed_at
        - coupon_total
        - discount_total
        - employee_id
        - external_id
        - gift_card_sales
        - gift_card_sales_total
        - issued_coupons
        - item_modifier_total
        - lane_id
        - line_items
        - loyalty_rewards_total
        - metadata
        - payments
        - points_earned
        - promo_savings
        - promo_total
        - receipt_type
        - refund_total
        - refunds
        - retail_total
        - shopper_facing_id
        - shopper_id
        - source
        - started_at
        - status
        - store_id
        - subtotal
        - tax_total
        - taxable_amount
        - tip_amount
        - total
        - total_collected
        - type
    InsufficientPermissionsErrorDetails:
      type: object
      properties:
        action:
          allOf:
            - $ref: '#/components/schemas/Action'
        resource:
          allOf:
            - $ref: '#/components/schemas/Resource'
      required:
        - action
        - resource
    TransactionGiftCardSale:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for the record.
        amount:
          type: string
          description: Amount loaded onto the gift card.
          format: positive-monetary
          pattern: ^[0-9]+(\.[0-9]+)?$
          example: '199.99'
        gift_card_id:
          type: string
          nullable: true
          description: >-
            ID of the associated GiftCard that was funded by this sale. This
            value may be `null` if the sale was made while the POS was offline,
            and the transaction has not yet been back-filled.
        gift_card_transaction_id:
          type: string
          nullable: true
          description: >-
            ID of the associated GiftCardTransaction that funded the gift card.
            This value may be `null` if the sale was made while the POS was
            offline, and the transaction has not yet been back-filled.
      description: >-
        A gift card purchased on a transaction, with the amount loaded onto it
        and links to the gift card and the transaction that funded it.
      required:
        - id
        - amount
        - gift_card_id
        - gift_card_transaction_id
    TransactionIssuedCoupon:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for the record.
        coupon_code:
          type: string
          description: >-
            Coupon code the shopper presents to redeem the coupon on a later
            transaction.
        coupon_id:
          type: string
          description: ID of the coupon that was issued.
        ended_at:
          type: string
          description: Date and time after which the coupon can no longer be redeemed.
          format: date-time
        offer_benefit_value:
          type: string
          description: Value of the coupon to the shopper when redeemed.
          format: positive-monetary
          pattern: ^[0-9]+(\.[0-9]+)?$
          example: '199.99'
        snap_incentive_program_id:
          type: string
          nullable: true
          description: ID of the SNAP incentive program the coupon was issued under.
        started_at:
          type: string
          description: Date and time from which the coupon can be redeemed.
          format: date-time
      description: >-
        A coupon issued to the shopper by a transaction, with its code, benefit
        value, and the window in which it can be redeemed.
      required:
        - id
        - coupon_code
        - coupon_id
        - ended_at
        - offer_benefit_value
        - snap_incentive_program_id
        - started_at
    TransactionLineItem:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for the record.
        coupon_total:
          type: string
          description: Total savings from coupons on this line.
          format: monetary
          example: '199.99'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
        coupons:
          description: Coupons applied to this line.
          type: array
          items:
            $ref: '#/components/schemas/TransactionLineItemCoupon'
        department_id:
          type: string
          description: ID of the department the product is assigned to.
        discount_total:
          type: string
          description: Total savings from manual and employee discounts on this line.
          format: monetary
          example: '199.99'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
        discounts:
          description: Manual and employee discounts applied to this line.
          type: array
          items:
            $ref: '#/components/schemas/TransactionLineItemDiscount'
        ebt_tax_waived_total:
          type: string
          description: Tax waived on this line because the product was paid for with EBT.
          format: monetary
          example: '199.99'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
        free_quantity:
          type: string
          description: Portion of the quantity on this line given away free by a promotion.
          pattern: ^[0-9]+(\.[0-9]+)?$
          example: '199.99'
        item_modifier_total:
          type: string
          description: >-
            Total of the fees and deposits charged on this line, such as bottle
            deposits and container redemption fees.
          format: monetary
          example: '199.99'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
        item_modifiers:
          description: >-
            Fees and deposits charged on this line, such as bottle deposits,
            container redemption fees, and bag fees.
          type: array
          items:
            $ref: '#/components/schemas/TransactionLineItemModifier'
        loyalty_rewards:
          description: Loyalty rewards redeemed against this line.
          type: array
          items:
            $ref: '#/components/schemas/TransactionLineItemLoyaltyReward'
        loyalty_rewards_total:
          type: string
          description: Total savings from loyalty reward redemptions on this line.
          format: monetary
          example: '199.99'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
        product:
          description: Product sold on this line.
          allOf:
            - $ref: '#/components/schemas/TransactionLineItemProduct'
        promo_savings:
          type: string
          description: Total savings from promotions on this line.
          format: monetary
          example: '199.99'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
        promotions:
          description: Promotions applied to this line.
          type: array
          items:
            $ref: '#/components/schemas/TransactionLineItemPromotion'
        quantity:
          type: string
          description: >-
            Number of units sold on this line, or the weight sold for products
            priced by weight.
          pattern: ^[0-9]+(\.[0-9]+)?$
          example: '199.99'
        refunded_order_line_item_id:
          type: string
          nullable: true
          description: >-
            ID of the original sale line this refund line returns, or null when
            this line is not a refund.
        retail_price:
          type: string
          description: Shelf price per unit before promotions, coupons, and discounts.
          format: positive-monetary
          pattern: ^[0-9]+(\.[0-9]+)?$
          example: '199.99'
        retail_total:
          type: string
          description: Line total after promotions are applied, before discounts and tax.
          format: monetary
          example: '199.99'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
        subtotal:
          type: string
          description: >-
            Retail price multiplied by quantity, before promotions, discounts,
            and tax.
          format: monetary
          example: '199.99'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
        tax_total:
          type: string
          description: Total sales tax charged on this line.
          format: monetary
          example: '199.99'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
        taxable_amount:
          type: string
          description: Portion of this line that is subject to tax.
          format: monetary
          example: '199.99'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
        taxes:
          description: Sales taxes charged on this line.
          type: array
          items:
            $ref: '#/components/schemas/TransactionLineItemTax'
        total:
          type: string
          description: >-
            Final amount for this line, including tax. Positive on a sale and
            negative on a refund.
          format: monetary
          example: '199.99'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
        transaction_type:
          deprecated: true
          description: Deprecated. Use `type`.
          allOf:
            - $ref: '#/components/schemas/TransactionType'
        type:
          description: Whether this line was sold, refunded, or voided.
          allOf:
            - $ref: '#/components/schemas/TransactionType'
        variable_weights:
          description: >-
            Weight readings recorded for this line when the product is sold by
            weight.
          type: array
          items:
            $ref: '#/components/schemas/TransactionLineItemVariableWeight'
        wic_adjusted_price:
          type: string
          nullable: true
          description: >-
            Price per unit the shopper paid under WIC, or null when WIC was not
            applied to this line.
          format: monetary
          example: '199.99'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
      description: >-
        A product sold on a transaction, with its quantity, price, and totals,
        plus the coupons, discounts, loyalty rewards, promotions, fees, taxes,
        and weight readings recorded against it.
      required:
        - id
        - coupon_total
        - coupons
        - department_id
        - discount_total
        - discounts
        - ebt_tax_waived_total
        - free_quantity
        - item_modifier_total
        - item_modifiers
        - loyalty_rewards
        - loyalty_rewards_total
        - product
        - promo_savings
        - promotions
        - quantity
        - refunded_order_line_item_id
        - retail_price
        - retail_total
        - subtotal
        - tax_total
        - taxable_amount
        - taxes
        - total
        - transaction_type
        - type
        - variable_weights
        - wic_adjusted_price
    TransactionPayment:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for the record.
        authorized_amount:
          type: string
          description: >-
            Amount authorized for this payment, which is less than the requested
            amount on a partial approval.
          format: monetary
          example: '199.99'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
        card_brand:
          nullable: true
          description: Card network used for the payment, or null for non-card payments.
          allOf:
            - $ref: '#/components/schemas/CardBrand'
        card_last4:
          type: string
          nullable: true
          minLength: 4
          maxLength: 4
          description: Last four digits of the card used, or null for non-card payments.
          pattern: ^[0-9]+$
        cash_received:
          type: string
          nullable: true
          description: Cash handed over by the shopper, or null for non-cash payments.
          format: positive-monetary
          pattern: ^[0-9]+(\.[0-9]+)?$
          example: '199.99'
        cashback_amount:
          type: string
          description: Cash back included in this payment.
          format: monetary
          example: '199.99'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
        change_returned:
          type: string
          nullable: true
          description: Change given back to the shopper, or null for non-cash payments.
          format: positive-monetary
          pattern: ^[0-9]+(\.[0-9]+)?$
          example: '199.99'
        completed_at:
          type: string
          description: Date and time when the payment was completed.
          format: date-time
        payment_type:
          description: How the payment was tendered.
          allOf:
            - $ref: '#/components/schemas/TransactionPaymentType'
        requested_amount:
          type: string
          description: Amount requested for this payment.
          format: monetary
          example: '199.99'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
        reversals:
          description: Reversals recorded against this payment.
          type: array
          items:
            $ref: '#/components/schemas/TransactionPaymentReversal'
        terminal_was_online:
          type: boolean
          nullable: true
          description: >-
            Indicates if the payment terminal was online when the payment was
            authorized. This will be `null` for non-card payments.
        till_id:
          type: string
          nullable: true
          description: >-
            ID of the till the payment was collected into, or null when the
            payment was not tied to a till.
          format: uuid
        tip_amount:
          type: string
          description: Tip included in this payment.
          format: monetary
          example: '199.99'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
      description: >-
        A payment collected on a transaction, covering how it was tendered, the
        amounts requested and authorized, any tip or cash back, the till it was
        paid into, and any reversals against it.
      required:
        - id
        - authorized_amount
        - card_brand
        - card_last4
        - cash_received
        - cashback_amount
        - change_returned
        - completed_at
        - payment_type
        - requested_amount
        - reversals
        - terminal_was_online
        - till_id
        - tip_amount
    ReceiptType:
      type: string
      enum:
        - email
        - print
        - sms
    CompactRefund:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for the record.
        completed_at:
          type: string
          description: Date and time when the refund was finalized.
          format: date-time
        employee_id:
          type: string
          description: ID of the employee who processed the refund.
          pattern: ^[0-9]+$
        lane_id:
          type: string
          description: ID of the checkout lane that processed the refund.
          pattern: ^[0-9]+$
        shopper_facing_id:
          type: string
          description: Human-readable refund identifier shown to the shopper.
        started_at:
          type: string
          description: Date and time when the cashier started the refund.
          format: date-time
        store_id:
          type: string
          description: ID of the store where the refund was processed.
          pattern: ^[0-9]+$
        subtotal:
          type: string
          description: Sum of line-item subtotals before promotions, discounts, and tax.
          format: monetary
          example: '199.99'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
        tax_total:
          type: string
          description: Total tax refunded.
          format: monetary
          example: '199.99'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
        total:
          type: string
          description: Final refund amount including tax. Refund totals are negative.
          format: monetary
          example: '199.99'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
      description: >-
        A reference to a refund of a transaction, with where and when it was
        rung and the amounts refunded. Retrieve the refund itself for the
        products returned and how the money went back.
      required:
        - id
        - completed_at
        - employee_id
        - lane_id
        - shopper_facing_id
        - started_at
        - store_id
        - subtotal
        - tax_total
        - total
    TransactionSource:
      type: string
      enum:
        - api
        - migration
        - pos
    TransactionStatus:
      type: string
      enum:
        - completed
        - expired
        - suspended
        - voided
    TransactionType:
      type: string
      enum:
        - refund
        - sale
        - void
    Action:
      type: string
      enum:
        - '*'
        - cancel
        - check_in
        - create
        - delete
        - read
        - read_credentials
        - record_events
        - refund
        - restart
        - update
        - void
    Resource:
      type: string
      enum:
        - '*'
        - accounting_integration
        - agent_chats
        - api_clients
        - asynchronous_tasks
        - banners
        - blackhawk_transactions
        - business_entities
        - capabilities
        - coupons
        - custom_quick_actions
        - datacap_transactions
        - departments
        - discounts
        - ditto_auth_tokens
        - edge_agents
        - electronic_shelf_labels
        - employees
        - feature_orientations
        - files
        - food_modifiers
        - gift_cards
        - gl_code_mappings
        - house_accounts
        - inventory
        - inventory_sessions
        - inventory_settings
        - invoices
        - item_modifiers
        - label_dimension_sets
        - label_sheet_profiles
        - label_stock_products
        - lanes
        - loyalty_bonuses
        - loyalty_campaigns
        - loyalty_rewards
        - notification_templates
        - offers
        - order_guides
        - people
        - pos_banner_configurations
        - pos_orders
        - pos_tills
        - price_tags
        - product_ranges
        - products
        - promotions
        - purchase_orders
        - receiving
        - reporting
        - revision_sessions
        - revisions
        - roles
        - shopper_tags
        - shoppers
        - store_product_inventory_counts
        - store_product_lots
        - store_product_rules
        - store_product_tag_templates
        - store_snap_incentive_program_coupons
        - store_vendor_merge_requests
        - store_vendor_product_merge_requests
        - store_vendor_products
        - store_vendors
        - stores
        - tag_printings
        - tag_template_presets
        - tag_templates
        - tax_rates
        - users
        - variable_weights
        - vendor_merge_requests
        - vendor_product_merge_requests
        - vendors
        - wallet_payments
        - wic_products
    TransactionLineItemCoupon:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for the record.
        applied_amount:
          type: string
          description: Savings the coupon produced on this line item.
          format: positive-monetary
          pattern: ^[0-9]+(\.[0-9]+)?$
          example: '199.99'
        coupon_code:
          type: string
          description: Coupon code that was scanned or entered at checkout.
        coupon_id:
          type: string
          description: ID of the coupon that was redeemed.
        offer_display_text:
          type: string
          description: Offer text shown on the receipt for the coupon.
        offer_id:
          type: string
          description: ID of the offer the coupon came from.
      description: >-
        A coupon redeemed against a line of a transaction, with the savings it
        produced and the offer it came from.
      required:
        - id
        - applied_amount
        - coupon_code
        - coupon_id
        - offer_display_text
        - offer_id
    TransactionLineItemDiscount:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for the record.
        applied_amount:
          type: string
          description: Savings the discount produced on this line item.
          format: positive-monetary
          pattern: ^[0-9]+(\.[0-9]+)?$
          example: '199.99'
        discount_id:
          type: string
          nullable: true
          description: >-
            ID of the discount that was applied, or null when the cashier
            entered a one-off discount.
        discount_name:
          type: string
          description: Name of the discount shown to the cashier and on the receipt.
        discount_type:
          description: >-
            How the discount is calculated: a percentage off or a fixed amount
            off.
          allOf:
            - $ref: '#/components/schemas/DiscountType'
        discount_value:
          type: string
          description: >-
            Configured value of the discount, such as 10 for 10% off or 1.50 for
            $1.50 off.
          pattern: ^[0-9]+(\.[0-9]+)?$
          example: '199.99'
      description: >-
        A discount applied to a line of a transaction, with its name, type,
        configured value, and the savings it produced.
      required:
        - id
        - applied_amount
        - discount_id
        - discount_name
        - discount_type
        - discount_value
    TransactionLineItemModifier:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for the record.
        amount:
          type: string
          description: Amount charged for the fee or deposit on this line item.
          format: positive-monetary
          pattern: ^[0-9]+(\.[0-9]+)?$
          example: '199.99'
        item_modifier_id:
          type: string
          description: >-
            ID of the fee or deposit that was charged, such as a bottle deposit
            or CRV.
          pattern: ^[0-9]+$
        quantity:
          type: string
          description: Number of units of the fee or deposit charged on this line item.
          pattern: ^[0-9]+(\.[0-9]+)?$
          example: '199.99'
        tax_amount:
          type: string
          description: Tax charged on the fee or deposit.
          format: positive-monetary
          pattern: ^[0-9]+(\.[0-9]+)?$
          example: '199.99'
        taxes:
          description: Taxes charged on the fee or deposit.
          type: array
          items:
            $ref: '#/components/schemas/TransactionLineItemTax'
      description: >-
        A fee or deposit charged on a line of a transaction, with the amount,
        quantity, and tax collected on it.
      required:
        - id
        - amount
        - item_modifier_id
        - quantity
        - tax_amount
        - taxes
    TransactionLineItemLoyaltyReward:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for the record.
        applied_amount:
          type: string
          description: Savings the loyalty reward produced on this line item.
          format: positive-monetary
          pattern: ^[0-9]+(\.[0-9]+)?$
          example: '199.99'
        loyalty_reward_id:
          type: string
          description: ID of the loyalty reward that was redeemed.
        loyalty_reward_name:
          type: string
          description: Name of the loyalty reward at the time it was redeemed.
        offer_id:
          type: string
          description: ID of the offer associated with the loyalty reward.
        order_loyalty_reward_id:
          type: string
          description: >-
            ID of the transaction-level reward redemption this line item draws
            from.
      description: >-
        A loyalty reward redeemed against a line of a transaction, with the
        savings it produced and the offer it came from.
      required:
        - id
        - applied_amount
        - loyalty_reward_id
        - loyalty_reward_name
        - offer_id
        - order_loyalty_reward_id
    TransactionLineItemProduct:
      type: object
      properties:
        id:
          type: string
          description: ID of the product in your store's catalog.
        barcode:
          type: string
          description: >-
            UPC or PLU recorded for the product when it was sold, whether it was
            scanned or entered by hand.
        brand:
          type: string
          nullable: true
          description: Brand of the product.
        ebt_enabled:
          type: boolean
          description: Whether the product can be paid for with EBT.
        name:
          type: string
          description: Name of the product as it was sold.
        sold_by_weight:
          type: boolean
          description: Whether the product is priced by weight rather than by unit.
        unit_of_measure:
          type: string
          nullable: true
          description: Unit of measure the size is expressed in, such as oz or lb.
        unit_of_measure_amount:
          type: string
          nullable: true
          description: >-
            Size of the product in its unit of measure, such as 12 for a 12 oz
            can.
          pattern: ^[0-9]+(\.[0-9]+)?$
          example: '199.99'
        wic_enabled:
          type: boolean
          description: Whether the product can be paid for with WIC.
      description: >-
        The product sold on a line of a transaction, along with the cost the
        store paid for it when known.
      required:
        - id
        - barcode
        - brand
        - ebt_enabled
        - name
        - sold_by_weight
        - unit_of_measure
        - unit_of_measure_amount
        - wic_enabled
    TransactionLineItemPromotion:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for the record.
        amount:
          type: string
          description: Portion of the line the promotion applied to.
          format: positive-monetary
          pattern: ^[0-9]+(\.[0-9]+)?$
          example: '199.99'
        display_text:
          type: string
          nullable: true
          description: Text shown for the promotion on the receipt.
        offer_id:
          type: string
          description: ID of the offer the promotion belongs to.
          pattern: ^[0-9]+$
        promotion_id:
          type: string
          description: ID of the promotion that produced the savings.
          pattern: ^[0-9]+$
        savings:
          type: string
          description: Amount the promotion took off the line.
          format: positive-monetary
          pattern: ^[0-9]+(\.[0-9]+)?$
          example: '199.99'
      description: >-
        A promotion applied to a line of a transaction, with the savings it
        produced, the amount it covered, and the text shown on the receipt.
      required:
        - id
        - amount
        - display_text
        - offer_id
        - promotion_id
        - savings
    TransactionLineItemTax:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for the record.
        amount:
          type: string
          description: Tax charged on this line item.
          format: monetary
          example: '199.99'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
        tax_rate:
          description: >-
            Tax rate that produced the charge, as it was configured when the
            transaction was completed.
          allOf:
            - $ref: '#/components/schemas/CompactTaxRate'
      description: >-
        Tax charged on a line of a transaction, with the amount collected and
        the tax rate that produced it.
      required:
        - id
        - amount
        - tax_rate
    TransactionLineItemVariableWeight:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for the record.
        variable_weight:
          description: >-
            Tare container weight subtracted from the scale reading, as it was
            recorded at the time of sale.
          allOf:
            - $ref: '#/components/schemas/CompactVariableWeight'
      description: >-
        An individual weight reading captured for a line of a transaction sold
        by weight.
      required:
        - id
        - variable_weight
    CardBrand:
      type: string
      enum:
        - american_express
        - atm
        - bill_me_later
        - china_union_pay
        - debit
        - diners_club
        - discover
        - ebt
        - jcb
        - mastercard
        - other
        - revolution_money
        - telecheck
        - undetermined
        - visa
        - voyager
        - wright_express
    TransactionPaymentType:
      type: string
      enum:
        - cash
        - cash_app
        - check
        - credit
        - debit
        - donation
        - doordash
        - ebt_cash
        - ebt_foodstamp
        - ecommerce
        - ewic
        - gift_card
        - gift_certificate
        - grubhub
        - house_account
        - instacart
        - lottery_payout
        - mfg_coupon
        - money_transfer
        - moneygram
        - paypal
        - qr_pay
        - ria_money_transfer
        - state_voucher
        - uber_eats
        - venmo
        - western_union
        - zelle
    TransactionPaymentReversal:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for the record.
        authorized_amount:
          type: string
          description: Amount actually released.
          format: positive-monetary
          pattern: ^[0-9]+(\.[0-9]+)?$
          example: '199.99'
        card_brand:
          nullable: true
          description: >-
            Card network used for the reversed payment, or null for non-card
            payments.
          allOf:
            - $ref: '#/components/schemas/CardBrand'
        card_last4:
          type: string
          nullable: true
          minLength: 4
          maxLength: 4
          description: >-
            Last four digits of the card used for the reversed payment, or null
            for non-card payments.
          pattern: ^[0-9]+$
        completed_at:
          type: string
          description: Date and time when the reversal was completed.
          format: date-time
        payment_type:
          description: How the reversed payment was tendered.
          allOf:
            - $ref: '#/components/schemas/TransactionPaymentType'
        requested_amount:
          type: string
          description: Amount requested to be released.
          format: positive-monetary
          pattern: ^[0-9]+(\.[0-9]+)?$
          example: '199.99'
      description: >-
        A reversal of a payment collected on a transaction, with the amount
        requested, the amount released, and how the payment was tendered.
      required:
        - id
        - authorized_amount
        - card_brand
        - card_last4
        - completed_at
        - payment_type
        - requested_amount
    DiscountType:
      type: string
      enum:
        - amount_off
        - percentage_off
    CompactTaxRate:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for the tax rate.
        category:
          description: The kind of tax this rate represents.
          allOf:
            - $ref: '#/components/schemas/TaxRateCategory'
        name:
          type: string
          description: >-
            Name of the tax rate, such as the jurisdiction that levies it or the
            category it covers.
        value:
          type: string
          description: >-
            The rate charged. When `value_type` is `percentage`, this is a
            percentage of the taxable amount — `8.25` means 8.25%. When it is
            `amount`, this is a fixed amount of currency charged per unit sold.
          example: '8.25'
          pattern: ^[0-9]+(\.[0-9]+)?$
        value_type:
          description: 'How `value` is applied: a fixed amount or a percentage.'
          allOf:
            - $ref: '#/components/schemas/TaxRateValueType'
      required:
        - id
        - category
        - name
        - value
        - value_type
    CompactVariableWeight:
      type: object
      properties:
        id:
          type: string
          nullable: true
          description: >-
            Unique identifier for the variable weight, or null when the weight
            was captured on a transaction without one.
        name:
          type: string
          description: Human-readable name for the tare container, such as "Produce bag".
        unit:
          description: >-
            Unit of measure the weight is expressed in, limited to the units the
            point of sale can weigh in.
          allOf:
            - $ref: '#/components/schemas/VariableWeightUnit'
        value:
          type: string
          description: >-
            Weight of the tare container, as a decimal string in the unit of
            measure.
          pattern: ^[0-9]+(\.[0-9]+)?$
          example: '199.99'
      description: >-
        A compact reference to a tare container weight, embedded within other
        resources. Where it is embedded in a completed transaction, it is the
        immutable reading captured at the time of sale rather than a live
        reference.
      required:
        - id
        - name
        - unit
        - value
    TaxRateCategory:
      type: string
      description: The kind of tax a rate represents.
      enum:
        - other
        - sales
    TaxRateValueType:
      type: string
      description: >-
        How a tax rate applies its value: a fixed amount per unit sold, or a
        percentage of the taxable amount.
      enum:
        - amount
        - percentage
    VariableWeightUnit:
      type: string
      enum:
        - LBS
        - OZ
  securitySchemes:
    bearer:
      type: http
      scheme: bearer

````

## Related topics

- [Download transaction data](/api/download-transaction-data.md)
- [Connect to Vori MCP (mcp.vori.com)](/mcp/introduction.md)
- [List gift card transactions](/api-reference/gift-cards/list-gift-card-transactions.md)
