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

# Get weekly collections

> Compare each complete week's payments with what your customers owed when it opened, and see what this week is likely to collect. See [Reports](/guides/reports#weekly-collections) for the estimate and the `preparing` status.



## OpenAPI

````yaml /api-reference/openapi.yaml get /reports/collections
openapi: 3.0.3
info:
  title: Streamlined API
  description: >
    Access customers, customer applications, customer groups, products, payouts,
    invoices, transactions, deposit links, and the reports behind your dashboard
    programmatically through this API, and receive webhooks when deposit links
    change. All requests must be authenticated with an API key.
  version: 1.8.0
  license:
    name: Proprietary
    url: https://streamlinedpayments.com/terms
servers:
  - url: https://api.staging.streamlinedpayments.com/api/v1
    description: Sandbox
  - url: https://api.streamlinedpayments.com/api/v1
    description: Production
security:
  - AppIdAuth: []
    ApiKeyAuth: []
tags:
  - name: Customers
    description: Create, update and delete the businesses you sell to.
  - name: Customer applications
    description: >-
      List the applications your customers submit, and approve them. Approving
      can also set net terms and export the customer to Shopify. See [Approve
      customer applications](/guides/customer-applications).
  - name: Customer groups
    description: >-
      Organize customers into groups and manage who's in each one. A group can
      be linked to a Shopify B2B company.
  - name: Customer files
    description: Upload and manage files attached to a customer.
  - name: Customer addresses
    description: Manage a customer's addresses and choose their default billing address.
  - name: Orders
    description: Create orders, add and remove line items, and schedule them.
  - name: Invoices
    description: Create invoices from orders, then list, look up and update them.
  - name: Transactions
    description: List transactions and look one up.
  - name: Payouts
    description: List payouts, including pending ones, and look one up.
  - name: Products
    description: >-
      Create and update the products and services you sell, import them in bulk,
      and merge duplicates.
  - name: Deposit links
    description: Collect money from a customer before an invoice exists.
  - name: Webhooks
    description: >-
      Register HTTPS endpoints to receive events when something changes. See
      [Webhooks](/guides/webhooks) for signatures, retries and delivery
      guarantees.
  - name: Reports
    description: >-
      Read the aging, sales, collections, and customer figures your dashboard
      and customer pages show. Amounts are in cents, in the currency each
      response names. See [Reports](/guides/reports) for how each figure is
      worked out.
paths:
  /reports/collections:
    get:
      tags:
        - Reports
      summary: Get weekly collections
      description: >-
        Compare each complete week's payments with what your customers owed when
        it opened, and see what this week is likely to collect. See
        [Reports](/guides/reports#weekly-collections) for the estimate and the
        `preparing` status.
      operationId: getCollectionsReport
      parameters:
        - name: weeks
          in: query
          required: false
          description: >-
            Number of complete weeks to return, ending with last week. Ignored
            when you send `start_date` or `end_date`.
          schema:
            type: integer
            enum:
              - 13
              - 26
              - 52
            default: 52
        - name: start_date
          in: query
          required: false
          description: >-
            Return the complete weeks whose Monday is on or after this date, as
            `YYYY-MM-DD`. At most 52 weeks, and no more than 104 weeks back.
          schema:
            type: string
            format: date
        - name: end_date
          in: query
          required: false
          description: >-
            Return the complete weeks whose Monday is on or before this date, as
            `YYYY-MM-DD`. Defaults to last week. Sent alone, returns up to 52
            weeks ending here.
          schema:
            type: string
            format: date
        - name: compare
          in: query
          required: false
          description: Set to `true` to fill each week's `prior_year_rate`.
          schema:
            type: boolean
            default: false
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CollectionsReport'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
components:
  schemas:
    CollectionsReport:
      type: object
      properties:
        status:
          type: string
          enum:
            - ready
            - preparing
          description: >-
            `preparing` while your weekly figures are worked out for the first
            time. Then `data` is empty and `estimate`,
            `estimate_unavailable_reason`, and `usual_rate` are null. Ask again
            in a few minutes.
          example: ready
        currency:
          $ref: '#/components/schemas/Currency'
        week_starts_on:
          type: string
          enum:
            - monday
          description: Weeks run Monday to Sunday, in your account's time zone.
        weeks_available:
          type: integer
          description: >-
            Number of complete weeks since the week of your first payment,
            including weeks with no payments.
          example: 52
        min_weeks_for_estimate:
          type: integer
          description: >-
            Number of complete weeks needed before there's an estimate or a
            usual rate.
          example: 8
        open_receivables:
          type: integer
          description: >-
            What your customers owe now, in cents. The same as
            `total_receivables` on Get receivables aging.
          example: 124900000
        estimate:
          type: object
          nullable: true
          description: >-
            This week's likely collections, in cents. Null with a reason in
            `estimate_unavailable_reason`.
          properties:
            expected:
              type: integer
              example: 18900000
            low:
              type: integer
              example: 16600000
            high:
              type: integer
              example: 20900000
        estimate_unavailable_reason:
          type: string
          nullable: true
          enum:
            - not_enough_weeks
            - no_open_receivables
            - no_recent_payments
          description: >-
            Why there's no estimate. `not_enough_weeks`: fewer than
            `min_weeks_for_estimate` complete weeks, or no week that opened
            owing anything. `no_open_receivables`: nothing is owed now.
            `no_recent_payments`: something is owed, but nothing was paid in the
            last 13 weeks. Null when there's an estimate.
          example: null
        usual_rate:
          type: number
          nullable: true
          description: >-
            The share of opening receivables usually collected in a week, as a
            fraction (0.146 is 14.6%). Null before `min_weeks_for_estimate`
            weeks.
          example: 0.146
        data:
          type: array
          description: >-
            The complete weeks asked for, oldest first, including weeks with no
            payments.
          items:
            type: object
            properties:
              week_start:
                type: string
                format: date
                description: The week's Monday, as `YYYY-MM-DD`.
                example: '2026-10-26'
              opening_receivables:
                type: integer
                description: What your customers owed at the start of the week, in cents.
                example: 126000000
              payments:
                type: integer
                description: >-
                  Payments received during the week, in cents, whether or not
                  they were applied to an invoice. Refunds, chargebacks, and
                  credit notes are left out.
                example: 21300000
              rate:
                type: number
                nullable: true
                description: >-
                  `payments` over `opening_receivables`, as a fraction. Null
                  when the week opened owing nothing. Can be above 1, because a
                  week can collect invoices issued during it.
                example: 0.169
              payment_count:
                type: integer
                description: Number of payments received during the week.
                example: 41
              by_method:
                $ref: '#/components/schemas/PaymentMethodAmounts'
              prior_year_rate:
                type: number
                nullable: true
                description: >-
                  The rate of the same week a year earlier, as a fraction. Null
                  without `compare`, with no payments yet a year earlier, or
                  when that week is more than 104 weeks back.
                example: 0.158
    Currency:
      type: string
      description: >-
        ISO currency code. Most resources support these. Products are limited to
        USD, CAD, EUR, GBP, AUD.
      enum:
        - USD
        - CAD
        - GBP
        - EUR
        - AUD
        - JPY
        - INR
    PaymentMethodAmounts:
      type: object
      description: >-
        Payments split by method, in cents. Each method matches the
        `transaction_type` filter of the same name on List transactions. The
        five add up to the total they split.
      properties:
        ach:
          type: integer
          example: 9400000
        check:
          type: integer
          example: 6200000
        card:
          type: integer
          example: 3900000
        wire:
          type: integer
          example: 1800000
        other_payment:
          type: integer
          example: 0
    Error:
      type: object
      properties:
        error:
          type: string
        message:
          type: string
  responses:
    BadRequest:
      description: >-
        A parameter is malformed, out of range, or not one of its allowed values
        (`invalid_parameter`). `message` says which. Values aren't ignored,
        except that `per_page` above 100 is treated as 100.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error: invalid_parameter
            message: weeks must be one of 13, 26, 52
    Unauthorized:
      description: Authentication failed
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          examples:
            AuthenticationRequired:
              value:
                error: Authentication required
                message: >-
                  API endpoint requires authentication. Please provide valid
                  X-App-Id and X-Api-Key headers.
            InvalidCredentials:
              value:
                error: Invalid credentials
                message: >-
                  The provided API credentials are invalid. Please check your
                  X-App-Id and X-Api-Key values.
  securitySchemes:
    AppIdAuth:
      type: apiKey
      in: header
      name: X-App-Id
      description: App ID for authentication
    ApiKeyAuth:
      type: apiKey
      in: header
      name: X-Api-Key
      description: API Key for authentication

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.