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

# Get Instalment Plans for Account

> Obtain instalment plans for a single specified account. The response must be ordered by plan `creationDate` in descending order.

An instalment plan describes the terms of repayment for a specified loan amount such as a Buy Now, Pay Later (BNPL) purchase or a specific card transaction.

If `isInstalmentDetailAvailable` was specified as `true` for the provided `accountId` but no plans match the provided parameters, an empty array must be returned. If `isInstalmentDetailAvailable` was specified as `false` for the provided `accountId`, then the endpoint may respond with a `404 Resource Not Implemented` error.



## OpenAPI

````yaml /openapi/cdr.yml get /v1/banking/customer/{customerId}/accounts/{accountId}/payments/plans
openapi: 3.0.3
info:
  description: Fiskil Data Holder as a Service (DHaaS) endpoints for the Energy sector
  title: Fiskil Data APIs
  version: 1.5.0
servers:
  - url: https://api.provider.fiskil.com
security:
  - bearerAuth: []
paths:
  /v1/banking/customer/{customerId}/accounts/{accountId}/payments/plans:
    get:
      tags:
        - Banking
        - Instalment Plans
      summary: Get Instalment Plans for Account
      description: >-
        Obtain instalment plans for a single specified account. The response
        must be ordered by plan `creationDate` in descending order.


        An instalment plan describes the terms of repayment for a specified loan
        amount such as a Buy Now, Pay Later (BNPL) purchase or a specific card
        transaction.


        If `isInstalmentDetailAvailable` was specified as `true` for the
        provided `accountId` but no plans match the provided parameters, an
        empty array must be returned. If `isInstalmentDetailAvailable` was
        specified as `false` for the provided `accountId`, then the endpoint may
        respond with a `404 Resource Not Implemented` error.
      operationId: listInstalmentPlans
      parameters:
        - $ref: '#/components/parameters/customerId'
        - $ref: '#/components/parameters/accountId'
        - description: >-
            Allows for the filtering of plans based on their schedule status:

            - `ACTIVE` requests plans where one or more scheduled instalments
            have `isPaid` equal to `false`.

            - `INACTIVE` requests plans where all scheduled instalments have
            `isPaid` equal to `true`.

            - `ALL` requests all `ACTIVE` and `INACTIVE` plans.
          explode: true
          in: query
          name: plan-status
          required: false
          schema:
            default: ACTIVE
            enum:
              - ACTIVE
              - INACTIVE
              - ALL
            type: string
          style: form
        - $ref: '#/components/parameters/page'
        - $ref: '#/components/parameters/page-size'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseBankingInstalmentPlanList'
          description: List of instalment plans for the queried account
        '404':
          $ref: '#/components/responses/responseErrorCustomerIdNotFound'
components:
  parameters:
    customerId:
      description: >-
        Unique ID of a customer. This ID must not change for the lifecycle of
        the customer
      explode: false
      in: path
      name: customerId
      required: true
      schema:
        type: string
      style: simple
    accountId:
      description: ID of a specific account to obtain data for.
      explode: false
      in: path
      name: accountId
      required: true
      schema:
        type: string
      style: simple
    page:
      description: Page of results to request (standard pagination)
      explode: true
      in: query
      name: page
      required: false
      schema:
        type: integer
      style: form
      x-cds-type: PositiveInteger
    page-size:
      description: Page size to request.  Default is 25 (standard pagination)
      explode: true
      in: query
      name: page-size
      required: false
      schema:
        type: integer
      style: form
      x-cds-type: PositiveInteger
  schemas:
    ResponseBankingInstalmentPlanList:
      example:
        data:
          plans:
            - accountId: 019a08ff-90b2-71b3-9704-2f5dc6647e49
              planId: 019a0fe3-08f4-78f1-b2b5-f4eb0c6b4e52
              planReference: ORDER-2025-00123
              merchantName: Coastal Running Co.
              merchantCategoryCode: '5941'
              planNickname: New running shoes
              creationDate: '2025-01-15T00:00:00.000Z'
              amount: '240.00'
              planCurrency: AUD
              planCharge: '0.00'
              duration: P6W
              instalmentInterval: P2W
              schedule:
                - amountDue: '60.00'
                  dueDate: '2025-01-15T00:00:00.000Z'
                  isPaid: true
                - amountDue: '60.00'
                  dueDate: '2025-01-29T00:00:00.000Z'
                  isPaid: true
                - amountDue: '60.00'
                  dueDate: '2025-02-12T00:00:00.000Z'
                  isPaid: false
                - amountDue: '60.00'
                  dueDate: '2025-02-26T00:00:00.000Z'
                  isPaid: false
        links:
          first: page=1&page-size=25&oldest-date=2023-04-24
          last: page=4&page-size=25&oldest-date=2023-04-24
          next: page=3&page-size=25&oldest-date=2023-04-24
          prev: page=1&page-size=25&oldest-date=2023-04-24
        meta:
          totalRecords: 1
          totalPages: 1
      properties:
        data:
          $ref: '#/components/schemas/ResponseBankingInstalmentPlanList_data'
        links:
          $ref: '#/components/schemas/LinksPaginated'
        meta:
          $ref: '#/components/schemas/MetaPaginated'
      required:
        - data
        - links
        - meta
      type: object
    ResponseBankingInstalmentPlanList_data:
      properties:
        plans:
          description: >-
            Array of instalment plans. An instalment plan describes the terms of
            repayment for a specified loan amount such as a Buy Now, Pay Later
            (BNPL) purchase or a specific card transaction.
          items:
            $ref: '#/components/schemas/BankingInstalmentPlan'
          type: array
      required:
        - plans
      type: object
    LinksPaginated:
      description: >-
        URL Query parameters to obtain different pages of the response. Fiskil
        will combine these with the rest of the request URL to build full link
        URLs in the final response.
      example:
        first: page=1&page-size=25&oldest-date=2023-04-24
        last: page=4&page-size=25&oldest-date=2023-04-24
        next: page=3&page-size=25&oldest-date=2023-04-24
        prev: page=1&page-size=25&oldest-date=2023-04-24
      properties:
        first:
          description: >-
            A url-encoded query for the first page of this result set. Mandatory
            if this response is not the first page.
          type: string
        prev:
          description: >-
            A url-encoded query for the previous page. Mandatory if this
            response is not the first page
          type: string
        next:
          description: >-
            A url-encoded query for the next page. Mandatory if this response is
            not the last page.
          type: string
        last:
          description: >-
            A url-encoded query for the last page. Mandatory if this response is
            not the last page.
          type: string
      type: object
    MetaPaginated:
      example:
        totalRecords: 150
        totalPages: 6
      properties:
        totalRecords:
          description: >-
            The total number of records in the full set. See
            [pagination](#pagination).
          type: integer
          x-cds-type: NaturalNumber
        totalPages:
          description: >-
            The total number of pages in the full set. See
            [pagination](#pagination).
          type: integer
          x-cds-type: NaturalNumber
      required:
        - totalPages
        - totalRecords
      type: object
    GenericError:
      example:
        error: An error message
      type: object
      properties:
        error:
          type: string
          description: A message describing what caused the error
      required:
        - error
    BankingInstalmentPlan:
      properties:
        accountId:
          description: Unique identifier for the account.
          type: string
        planId:
          description: >-
            A unique identifier for the instalment plan in accordance with ID
            permanence requirements.
          type: string
        planReference:
          description: >-
            Unique purchase or order number for this plan, aligned to other
            channels.
          type: string
        merchantName:
          description: Name of the merchant associated with the instalment plan.
          type: string
        merchantCategoryCode:
          description: >-
            The merchant category code (MCC) for the merchant associated with
            the instalment plan.
          type: string
        planNickname:
          description: >-
            The short display name of the plan as provided by the customer.
            Where a customer has not provided a nickname, a display name derived
            by the data holder consistent with other channels.
          type: string
        creationDate:
          description: The date the plan was created.
          type: string
        amount:
          description: >-
            The original transaction amount the instalment plan was created for,
            including any upfront payment. E.g., for a $100 purchase split into
            four repayments, this would be `100.00`.
          type: string
        planCurrency:
          default: AUD
          description: The currency of the plan amount. If absent assumed to be `AUD`.
          type: string
        planCharge:
          description: >-
            Any charges incorporated into the scheduled amounts due, excluding
            other fees. E.g., if the consumer agrees to repay a $100 purchase
            plus a $5 charge split across four instalments, this would be
            `5.00`.
          type: string
        planRate:
          description: >-
            If displayed to the consumer, the percentage value of any charges
            incorporated into the scheduled amounts due, excluding other fees.
            E.g., if the consumer agrees to repay a $1000 purchase plus 10%
            interest split across twelve instalments, this would be `0.1`.
          type: string
        duration:
          description: >-
            The expected repayment period as at the creation of the plan.
            Formatted according to ISO 8601 Durations (excludes recurrence
            syntax). E.g., for a further three fortnightly repayments from the
            `creationDate`, this would be `P6W`.
          type: string
        instalmentInterval:
          description: >-
            The expected repayment interval. Formatted according to ISO 8601
            Durations (excludes recurrence syntax). E.g., for fortnightly
            repayments, this would be `P2W`.
          type: string
        schedule:
          description: Array of scheduled repayment amounts and dates.
          items:
            $ref: '#/components/schemas/BankingInstalmentPlanSchedule'
          type: array
      required:
        - accountId
        - amount
        - creationDate
        - duration
        - instalmentInterval
        - merchantName
        - planId
        - planNickname
        - planReference
        - schedule
      type: object
    BankingInstalmentPlanSchedule:
      properties:
        amountDue:
          description: Amount due with this repayment.
          type: string
        dueDate:
          description: Date this repayment is or was due.
          type: string
        isPaid:
          default: false
          description: >-
            Whether the associated `amountDue` has been paid or is otherwise
            considered as not outstanding. `false` is assumed if absent.
          type: boolean
      required:
        - amountDue
        - dueDate
      type: object
  responses:
    responseErrorCustomerIdNotFound:
      description: The customer ID in the URL path is invalid or not found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/GenericError'
            example:
              error: Customer not found
  securitySchemes:
    bearerAuth:
      description: >
        The Fiskil Data Provider will include a self-signed JWT as a Bearer
        token in the `Authorization` header.

        You should verify this JWT using the JWKS URL you can find for your Data
        Provider instance in the Fiskil

        Console. To verify the JWT you **must**:
          * Verify the signature
          * Ensure the token has not expired by checking the `exp` claim
          * The `sub` and `iss` claims are your data provider subdomain
          * The `aud` claim is the URI of the resource being requested (excluding any query parameters)
          * The `jti` value is unique
        For further detail on security and authentication refer to our
        [Authentication](/docs/get-started/authentication) documentation
      type: http
      scheme: bearer
      bearerFormat: JWT

````