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

# List pay splits



## OpenAPI

````yaml /spec/openapi.json get /pay_splits
openapi: 3.0.0
info:
  title: Nmbr API
  description: API to interact with Nmbr Payroll
  version: 1.0.0
servers:
  - url: https://sandbox.nmbr.co/services/payroll
security:
  - CompanyToken: []
tags:
  - name: Accounting Codes
  - name: Accounting Code Rules
  - name: Adjustments
  - name: Allowances
  - name: Allowance Line Items
  - name: Allowance Types
  - name: Async Tasks
  - name: Bank Accounts
  - name: Business Entities
  - name: Business Entity Verifications
  - name: Business Entity ROE Authorizations
  - name: Business Presets
  - name: Calculations
  - name: Companies
  - name: Contractors
  - name: Deductions
  - name: Deduction Line Items
  - name: Deduction Types
  - name: Earnings
  - name: Earning Line Items
  - name: Earning Types
  - name: Effective Tax Properties
  - name: Employees
  - name: Employee Benefits
  - name: Employee Benefit Line Items
  - name: Employee Benefit Types
  - name: Employer Benefits
  - name: Employer Benefit Line Items
  - name: Employer Benefit Types
  - name: Employer Statutory Withholding Line Items
  - name: Employer Statutory Withholding Types
  - name: Forms
  - name: Form Batches
  - name: Form Types
  - name: Holidays
  - name: Integrations
  - name: Journal Entries
  - name: Overtime Rates
  - name: Partners
  - name: Pay Rates
  - name: Pay Schedules
  - name: Pay Splits
  - name: Pay Stubs
  - name: Payments
  - name: Payrolls
  - name: Reimbursements
  - name: Reimbursement Line Items
  - name: Reimbursement Types
  - name: Remittance Accounts
  - name: Remittance Account Enrollments
  - name: Reports
  - name: Statutory Withholding Line Items
  - name: Statutory Withholding Types
  - name: Tags
  - name: Tag Groups
  - name: Tax Properties
  - name: Tax Property Templates
  - name: Tokens
  - name: Usage Records
  - name: Usage Summaries
  - name: Vacation Pay
  - name: Vacation Pay Settings
  - name: Webhooks
  - name: Work Assignments
paths:
  /pay_splits:
    get:
      tags:
        - Pay Splits
      summary: List pay splits
      operationId: pay-splits-index
      parameters:
        - name: employee_id
          in: query
          schema:
            type: string
          required: false
          description: >-
            The `employee_id` field is required when `contractor_id` is not
            present.
        - name: contractor_id
          in: query
          schema:
            type: string
          required: false
          description: >-
            The `contractor_id` field is required when `employee_id` is not
            present.
        - name: expand
          in: query
          schema:
            type: array
            items:
              type: string
              enum:
                - contractor
                - employee
          required: false
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  object:
                    type: string
                    description: The type of the object in Nmbr (`"list"`).
                    readOnly: true
                  data:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                          description: The unique identifier of the object in Nmbr.
                          readOnly: true
                        object:
                          type: string
                          description: The type of the object in Nmbr (`"pay_split"`).
                          readOnly: true
                        data:
                          type: object
                          allOf:
                            - $ref: '#/components/schemas/PaySplit'
                          anyOf:
                            - type: object
                              title: Default
                            - type: object
                              title: With employee expanded
                              properties:
                                employee:
                                  type: object
                                  properties:
                                    data:
                                      $ref: '#/components/schemas/Employee'
                            - type: object
                              title: With contractor expanded
                              properties:
                                contractor:
                                  type: object
                                  properties:
                                    id:
                                      type: string
                                      description: >-
                                        The unique identifier of the object in
                                        Nmbr.
                                      readOnly: true
                                    object:
                                      type: string
                                      description: The type of the object in Nmbr.
                                      readOnly: true
                                    data:
                                      $ref: '#/components/schemas/Contractor'
              example:
                object: list
                data:
                  - id: <id>
                    object: pay_split
                    data:
                      employee:
                        id: <id>
                        object: employee
                        links:
                          self: /employees/<id>
                      type: percentage
                      title: null
                      title_translations: null
                      title_translated: null
                      is_default: false
                      priority_1_bank_account:
                        id: <id>
                        object: bank_account
                        data:
                          employee:
                            id: <id>
                            object: employee
                            links:
                              self: /employees/<id>
                          institution_number: '320'
                          institution_name: President's Choice Bank
                          institution_name_translations:
                            en: President's Choice Bank
                            fr: Banque le Choix du Président
                          institution_name_translated: President's Choice Bank
                          transit_number: '02002'
                          transit_address: >-
                            600-500 Lakeshore Blvd West POBOX600, Toronto, ON
                            M5V 2V9
                          account_number_last_3: '916'
                          is_primary: false
                          is_deletable: false
                          warnings:
                            object: list
                            data: []
                          created_at: '2026-01-01T00:00:00.000000Z'
                          updated_at: '2026-01-01T00:00:00.000000Z'
                        links:
                          self: /bank_accounts/<id>
                      priority_1_amount: 50
                      priority_2_bank_account:
                        id: <id>
                        object: bank_account
                        data:
                          employee:
                            id: <id>
                            object: employee
                            links:
                              self: /employees/<id>
                          institution_number: '320'
                          institution_name: President's Choice Bank
                          institution_name_translations:
                            en: President's Choice Bank
                            fr: Banque le Choix du Président
                          institution_name_translated: President's Choice Bank
                          transit_number: '02002'
                          transit_address: >-
                            600-500 Lakeshore Blvd West POBOX600, Toronto, ON
                            M5V 2V9
                          account_number_last_3: '916'
                          is_primary: false
                          is_deletable: false
                          warnings:
                            object: list
                            data: []
                          created_at: '2026-01-01T00:00:00.000000Z'
                          updated_at: '2026-01-01T00:00:00.000000Z'
                        links:
                          self: /bank_accounts/<id>
                      priority_2_amount: 50
                      created_at: '2026-01-01T00:00:00.000000Z'
                      updated_at: '2026-01-01T00:00:00.000000Z'
                    links:
                      self: /pay_splits/<id>
                links:
                  first: /pay_splits?employee_id=<id>&page=1
                  last: /pay_splits?employee_id=<id>&page=1
                  prev: null
                  next: null
                meta:
                  current_page: 1
                  last_page: 1
                  per_page: 15
                  total: 1
                  has_more: false
components:
  schemas:
    PaySplit:
      type: object
      title: Pay Split
      properties:
        employee:
          type: object
          description: >-
            The Employee who owns this pay split. Present only for Employee pay
            splits.
          properties:
            id:
              type: string
              description: The unique identifier of the object in Nmbr.
              readOnly: true
            object:
              type: string
              description: The type of the object in Nmbr (`"employee"`).
              readOnly: true
        type:
          type: string
          description: >-
            The split strategy. `amount` sends fixed dollar amounts in priority
            order with the last configured Bank Account receiving the remaining
            balance. `percentage` distributes by percentage; percentage must
            total 100% across all accounts.
          enum:
            - amount
            - percentage
        title:
          type: string
          description: A label for this pay split configuration.
          nullable: true
          maxLength: 255
        title_translations:
          type: object
          description: Optional translations for the `title` property.
          allOf:
            - $ref: '#/components/schemas/Translations'
          nullable: true
        title_translated:
          type: string
          description: >-
            The translation of the `title` property for the request locale.
            Computed using the values in `title` and `title_translations` and
            the value of the request's `Accept-Language` header.
          readOnly: true
        is_default:
          type: boolean
          description: >-
            Whether this is the default pay split for the Employee or
            Contractor.
        priority_1_bank_account:
          type: object
          description: The first priority Bank Account.
          properties:
            id:
              type: string
              description: The unique identifier of the object in Nmbr.
              readOnly: true
            object:
              type: string
              description: The type of the object in Nmbr (`"bank_account"`).
              readOnly: true
            data:
              $ref: '#/components/schemas/BankAccount'
        priority_1_amount:
          type: number
          description: >-
            The amount or percentage allocated to the first priority Bank
            Account.
          format: decimal
        priority_2_bank_account:
          type: object
          description: The second priority Bank Account.
          properties:
            id:
              type: string
              description: The unique identifier of the object in Nmbr.
              readOnly: true
            object:
              type: string
              description: The type of the object in Nmbr (`"bank_account"`).
              readOnly: true
            data:
              $ref: '#/components/schemas/BankAccount'
        priority_2_amount:
          type: number
          description: >-
            The amount or percentage for the second priority Bank Account. For
            `amount`-type splits, set to `null` if this is the last account
            (receives the remainder).
          nullable: true
          format: decimal
        created_at:
          type: string
          description: The date and time the object was created in Nmbr.
          readOnly: true
          format: dateTime
        updated_at:
          type: string
          description: The date and time the object was last updated in Nmbr.
          readOnly: true
          format: dateTime
    Employee:
      type: object
      title: Employee
      properties:
        company:
          type: object
          properties:
            id:
              type: string
              description: The unique identifier of the object in Nmbr.
              readOnly: true
            object:
              type: string
              description: The type of the object in Nmbr (`"company"`).
              readOnly: true
        employee_number:
          type: string
          description: >-
            An optional identifier for the employee within the partner's system,
            such as a badge number or HR system ID. Distinct from `id` and
            `external_ref`.
          nullable: true
          maxLength: 40
        first_name:
          type: string
          description: The employee's first name.
          maxLength: 50
        last_name:
          type: string
          description: The employee's last name.
          maxLength: 50
        middle_initial:
          type: string
          description: The employee's middle initial.
          nullable: true
          maxLength: 1
        personal_email:
          type: string
          description: >-
            The employee's personal email address, used as the primary address
            for payroll communications such as Pay Stub emails.
          nullable: true
          maxLength: 255
        work_email:
          type: string
          description: >-
            The employee's work email address. Used for payroll communications
            if `personal_email` is not set.
          nullable: true
          maxLength: 255
        address_line_1:
          type: string
          description: >-
            The first line of the employee's mailing address. Canada Revenue
            Agency forms (T4, RL-1) truncate this to the length those forms
            allow.
          nullable: true
          maxLength: 255
        address_line_2:
          type: string
          description: >-
            The second line of the employee's mailing address. Canada Revenue
            Agency forms (T4, RL-1) truncate this to the length those forms
            allow.
          nullable: true
          maxLength: 255
        city:
          type: string
          description: The city of the employee's mailing address.
          nullable: true
          maxLength: 255
        administrative_area:
          type: string
          description: >-
            The region of the employee's mailing address — the province, state,
            or county, depending on the country. For Canadian employees this is
            the Province of Residence (POR), not the Province of Employment
            (POE) or Province of Work (POW). POE and POW are configured via the
            Work Assignment's Tax Properties.
          nullable: true
          maxLength: 255
        province_code:
          type: string
          description: >-
            This attribute is deprecated and will be removed.


            A deprecated alias of `administrative_area` that mirrors its value.
            Use `administrative_area` instead.
          nullable: true
          deprecated: true
        country_code:
          type: string
          description: The country code for the employee's mailing address.
          nullable: true
          maxLength: 2
          enum:
            - CA
            - GB
        postal_code:
          type: string
          description: The postal code for the employee's mailing address.
          nullable: true
          maxLength: 10
        sin:
          type: string
          description: >-
            This attribute is deprecated and will be removed.


            The employee's Social Insurance Number (SIN), used for tax
            reporting.


            If you only need the last 3 digits for display purposes, use
            `sin_last_3` instead. If you need the complete SIN, use the
            `/employees/:id/reveal` endpoint instead. Note the `/reveal`
            endpoint can only reveal one employee at a time and is rate-limited
            for security reasons.
          nullable: true
          deprecated: true
        sin_last_3:
          type: string
          description: >-
            The last 3 digits of the employee's Social Insurance Number (SIN).
            `null` if no SIN has been provided.
          nullable: true
        date_of_birth:
          type: string
          description: The employee's date of birth.
          nullable: true
          format: date
        warnings:
          type: object
          description: >-
            A collection of data validation warnings for this employee. Warnings
            indicate incomplete or potentially incorrect data and could prevent
            payroll processing.
          nullable: true
          properties:
            object:
              type: string
              nullable: true
            data:
              type: array
              nullable: true
              items:
                type: object
                properties:
                  object:
                    type: string
                    nullable: true
                  data:
                    type: object
                    nullable: true
                    properties:
                      namespace:
                        type: string
                        nullable: true
                      type:
                        type: string
                        nullable: true
        external_ref:
          type: string
          description: >-
            A reference to the object in an external system, e.g. the primary
            key of the object in your application's database. Nmbr doesn't use,
            validate, parse, or require this value to be unique - it simply
            stores it for your reference.
          nullable: true
          maxLength: 255
        preferred_locale:
          type: string
          description: >-
            The locale used for payroll communications sent to this employee,
            such as Pay Stub emails. If not set, the Business Entity's locale is
            used.
          nullable: true
          enum:
            - en
            - fr
        archived_at:
          type: string
          description: >-
            The date the employee was archived. Archiving an employee also
            archives all Work Assignments that are not already archived.
            Archived employees do not appear in active listings.
          readOnly: true
          nullable: true
          format: dateTime
        created_at:
          type: string
          description: The date and time the object was created in Nmbr.
          readOnly: true
          format: dateTime
        updated_at:
          type: string
          description: The date and time the object was last updated in Nmbr.
          readOnly: true
          format: dateTime
    Contractor:
      type: object
      title: Contractor
      properties:
        business_name:
          type: string
          description: >-
            The contractor's business or corporation name. `null` for individual
            contractors.
          nullable: true
          maxLength: 255
        first_name:
          type: string
          description: The contractor's first name. `null` for corporation contractors.
          nullable: true
          maxLength: 50
        last_name:
          type: string
          description: The contractor's last name. `null` for corporation contractors.
          nullable: true
          maxLength: 50
        middle_initial:
          type: string
          description: The contractor's middle initial. `null` for corporation contractors.
          nullable: true
          maxLength: 1
        email:
          type: string
          description: The contractor's email address, used for payroll communications.
          nullable: true
          maxLength: 255
        business_number:
          type: string
          description: >-
            The contractor's 15-character (BN15) Canada Revenue Agency (CRA)
            program account number, consisting of a 9-digit Business Number
            (BN), a 2-letter program identifier, and a 4-digit reference number.
            `null` for individual contractors.
          nullable: true
          maxLength: 15
        sin_last_3:
          description: >-
            The last 3 digits of the contractor's Social Insurance Number (SIN).
            `null` if no SIN has been provided.
        external_ref:
          type: string
          description: >-
            A reference to the object in an external system, e.g. the primary
            key of the object in your application's database. Nmbr doesn't use,
            validate, parse, or require this value to be unique - it simply
            stores it for your reference.
          nullable: true
          maxLength: 255
        preferred_locale:
          type: string
          description: >-
            The locale used for payroll communications sent to this contractor,
            such as Pay Stub emails. If not set, the Business Entity's locale is
            used.
          nullable: true
          enum:
            - en
            - fr
        archived_at:
          type: string
          description: >-
            The date the contractor was archived. Archiving a contractor also
            archives all Work Assignments that are not already archived.
            Archived contractors do not appear in active listings.
          readOnly: true
          nullable: true
          format: dateTime
        created_at:
          type: string
          description: The date and time the object was created in Nmbr.
          readOnly: true
          format: dateTime
        updated_at:
          type: string
          description: The date and time the object was last updated in Nmbr.
          readOnly: true
          format: dateTime
    Translations:
      type: object
      nullable: true
      properties:
        en:
          type: string
          maxLength: 255
        fr:
          type: string
          maxLength: 255
    BankAccount:
      type: object
      title: Bank Account
      properties:
        business_entity:
          type: object
          description: >-
            The Business Entity that owns this bank account. Present only for
            Business Entity bank accounts.
          properties:
            id:
              type: string
              description: The unique identifier of the object in Nmbr.
              readOnly: true
            object:
              type: string
              description: The type of the object in Nmbr (`"business_entity"`).
              readOnly: true
        institution_number:
          type: string
          description: The 3-digit bank institution number.
        institution_name:
          type: string
          description: >-
            The name of the banking institution matching the institution number,
            or `null` if the number is not recognized. Always the English name;
            see `institution_name_translated` for the value in the request's
            locale.
          nullable: true
        institution_name_translations:
          type: object
          nullable: true
          properties:
            en:
              type: string
              nullable: true
            fr:
              type: string
              nullable: true
        institution_name_translated:
          type: string
          description: >-
            The translation of the `institution_name` property for the request
            locale. Computed using the values in `institution_name` and
            `institution_name_translations` and the value of the request's
            `Accept-Language` header.
          readOnly: true
        transit_number:
          type: string
          description: The 5-digit bank transit number.
        transit_address:
          type: string
          description: >-
            The address of the branch matching the institution and transit
            numbers, or `null` if the pair is not recognized.
          nullable: true
        account_number_last_3:
          type: string
          description: The last 3 digits of the bank account number.
          nullable: true
        is_primary:
          type: boolean
          description: Whether this is the primary bank account for its owner.
        is_deletable:
          type: boolean
          description: Whether this bank account can be deleted.
        warnings:
          type: object
          description: >-
            A collection of data validation warnings for this bank account.
            Warnings indicate incomplete or potentially incorrect data, such as
            an unrecognized institution or transit number.
          nullable: true
          properties:
            object:
              type: string
              nullable: true
            data:
              type: object
              nullable: true
        is_pad_signed:
          type: boolean
          description: >-
            Whether a PAD agreement has been signed. Only present for Business
            Entity bank accounts.
        pad_signer_name:
          type: string
          description: >-
            The name of the person who signed the PAD agreement. Only applicable
            to Business Entity bank accounts.
          nullable: true
          maxLength: 255
        pad_signer_email:
          type: string
          description: >-
            The email address of the PAD agreement signer. Only applicable to
            Business Entity bank accounts.
          nullable: true
          maxLength: 255
        pad_signer_title:
          type: string
          description: >-
            The title or role of the PAD agreement signer. Only applicable to
            Business Entity bank accounts.
          nullable: true
          maxLength: 255
        pad_signed_at:
          type: string
          description: >-
            The date and time the PAD agreement was signed. Only applicable to
            Business Entity bank accounts.
          readOnly: true
          nullable: true
          format: dateTime
        pad_file:
          description: >-
            The signed PAD agreement file. Only present for Business Entity bank
            accounts.
        created_at:
          type: string
          description: The date and time the object was created in Nmbr.
          readOnly: true
          format: dateTime
        updated_at:
          type: string
          description: The date and time the object was last updated in Nmbr.
          readOnly: true
          format: dateTime
  securitySchemes:
    CompanyToken:
      type: http
      scheme: bearer

````