---
title: "Get an existing affordability calculation for a user"
method: GET
path: "/affordability/{reportId}"
tags: ["affordability"]
---

# Get an existing affordability calculation for a user

`GET /affordability/{reportId}`

Requires **affordability:read** scope.

## Path parameters

- `reportId` string, uuid, required

## Response `200`

Successful Affordability Response

- object
  - `data` Affordability
    - `createdAt` string, nullable — The timestamp at which the report was generated
    - `requestedAt` string, nullable — The timestamp at which the report was requested
    - `id` string, required — The report id
    - `status` 'pending' | 'complete' | 'failed', required — Whether the report is 'complete', 'pending' or 'failed'.
    - `statusDetails` object — Additional information about the status of the report (if applicable)
      - `message` string — A message describing the status of the report, e.g. an error if the report status is 'failed'
    - `income` object
      - `amountConsistency` number, required — Consistency of monthly income, as a number between 0 and 1
      - `median` object, required — The median monthly income
        - `value` integer, required — The amount in minor units of the currency, eg. pennies for GBP, negative means money going out of an account, positive means money coming into an account.
        - `majorUnits` integer — The positive major units of the value, based on the values currency, eg. pounds for GBP.
        - `minorUnits` integer — The positive minor units of the value, based on the values currency, eg. pennies for GBP.
        - `currency` string, required — The currency of the amount
      - `medianIncludingTransfers` object, required — The median monthly income including incoming transfers when incoming transfers exceed outgoing transfers
        - `value` integer, required — The amount in minor units of the currency, eg. pennies for GBP, negative means money going out of an account, positive means money coming into an account.
        - `majorUnits` integer — The positive major units of the value, based on the values currency, eg. pounds for GBP.
        - `minorUnits` integer — The positive minor units of the value, based on the values currency, eg. pennies for GBP.
        - `currency` string, required — The currency of the amount
      - `primaryIncomeAccount` object, required
        - `uid` string — The account id of the detected primary income account
      - `longevity` object, required
        - `consecutiveIncome` object, required
          - `months` number, required — The number of consecutive months of income detected
        - `incomePeriodLength` object, required
          - `months` number, required — The number of months of transaction history available for the income detection process
      - `regularIncome` object, required
        - `isDetected` boolean, required — Whether or not regular income was detected
        - `predicted` object, required
          - `monthly` object, required
            - `amount` object, required — The predicted monthly income amount
              - …
      - `categoriesUsed` object[] — Income-based transaction categories that were used when detecting sources of income. This can be configured for a business, or if not a default list is used.
        - `uid` string, required
        - `key` string, required
    - `expenditure` object
      - `discretionary` object, required
        - `median` object, required — The median monthly discretionary spend
          - `value` integer, required — The amount in minor units of the currency, eg. pennies for GBP, negative means money going out of an account, positive means money coming into an account.
          - `majorUnits` integer — The positive major units of the value, based on the values currency, eg. pounds for GBP.
          - `minorUnits` integer — The positive minor units of the value, based on the values currency, eg. pennies for GBP.
          - `currency` string, required — The currency of the amount
      - `fixed` object, required
        - `median` object, required — The median monthly fixed spend
          - `value` integer, required — The amount in minor units of the currency, eg. pennies for GBP, negative means money going out of an account, positive means money coming into an account.
          - `majorUnits` integer — The positive major units of the value, based on the values currency, eg. pounds for GBP.
          - `minorUnits` integer — The positive minor units of the value, based on the values currency, eg. pennies for GBP.
          - `currency` string, required — The currency of the amount
      - `flexible` object, required
        - `median` object, required — The median monthly flexible spend
          - `value` integer, required — The amount in minor units of the currency, eg. pennies for GBP, negative means money going out of an account, positive means money coming into an account.
          - `majorUnits` integer — The positive major units of the value, based on the values currency, eg. pounds for GBP.
          - `minorUnits` integer — The positive minor units of the value, based on the values currency, eg. pennies for GBP.
          - `currency` string, required — The currency of the amount
      - `nonDiscretionary` object, required
        - `median` object, required — The median monthly non-discretionary spend
          - `value` integer, required — The amount in minor units of the currency, eg. pennies for GBP, negative means money going out of an account, positive means money coming into an account.
          - `majorUnits` integer — The positive major units of the value, based on the values currency, eg. pounds for GBP.
          - `minorUnits` integer — The positive minor units of the value, based on the values currency, eg. pennies for GBP.
          - `currency` string, required — The currency of the amount
      - `cashWithdrawals` object, required
        - `median` object, required — The median monthly cash withdrawal amount
          - `value` integer, required — The amount in minor units of the currency, eg. pennies for GBP, negative means money going out of an account, positive means money coming into an account.
          - `majorUnits` integer — The positive major units of the value, based on the values currency, eg. pounds for GBP.
          - `minorUnits` integer — The positive minor units of the value, based on the values currency, eg. pennies for GBP.
          - `currency` string, required — The currency of the amount
    - `overdrafts` object
      - `usage` object, required
        - `details` object[], required
          - `accountUid` string, required — The account id
          - `daysInOverdraft` number, required — The total number of days the account was overdrawn according to the account balance
          - `daysInUnarrangedOverdraft` number — The total number of days the account was in unarranged overdraft according to the account balance. If we were not provided with an overdraft limit by the account provider, we assume any negative balance is unarranged overdraft
          - `earliestBalanceDate` string, required — The earliest available balance date for the account
          - `periodsInOverdraft` object[], required
            - `days` number, required — The number of days the account was overdrawn during the period
            - `start` string, required — The start date of the period
            - `end` string, required — The end date of the period
            - `minimumBalance` object, required — The minimum balance of the account during the period
              - …
            - `unarrangedOverdraft` object
              - …
    - `gambling` object
      - `out` object, required
        - `median` object, required — The median monthly gambling spend
          - `value` integer, required — The amount in minor units of the currency, eg. pennies for GBP, negative means money going out of an account, positive means money coming into an account.
          - `majorUnits` integer — The positive major units of the value, based on the values currency, eg. pounds for GBP.
          - `minorUnits` integer — The positive minor units of the value, based on the values currency, eg. pennies for GBP.
          - `currency` string, required — The currency of the amount
    - `transfers` object
      - `median` object — The median monthly transfer amount
        - `value` integer, required — The amount in minor units of the currency, eg. pennies for GBP, negative means money going out of an account, positive means money coming into an account.
        - `majorUnits` integer — The positive major units of the value, based on the values currency, eg. pounds for GBP.
        - `minorUnits` integer — The positive minor units of the value, based on the values currency, eg. pennies for GBP.
        - `currency` string, required — The currency of the amount
      - `out` object, required
        - `median` object, required — The median transfer amount for outgoing transfer transactions only
          - `value` integer, required — The amount in minor units of the currency, eg. pennies for GBP, negative means money going out of an account, positive means money coming into an account.
          - `majorUnits` integer — The positive major units of the value, based on the values currency, eg. pounds for GBP.
          - `minorUnits` integer — The positive minor units of the value, based on the values currency, eg. pennies for GBP.
          - `currency` string, required — The currency of the amount
    - `returnedPayments` object
      - `count` number, required — The number of transactions detected as being a returned payment
      - `details` object[]
        - `category` string, required — The category of the returned payments
        - `count` number, required — The number of returned payment transactions detected for the specified category and time period
        - `period` object, required
          - `unit` 'days', required — The type of time unit over which the returned payments were detected
          - `value` number, required — The number of time units over which the returned payments were detected
        - `total` object, required
          - `returned` object, required — The total sum of the returned payments for the specified category and time period
            - `value` integer, required — The amount in minor units of the currency, eg. pennies for GBP, negative means money going out of an account, positive means money coming into an account.
            - `majorUnits` integer — The positive major units of the value, based on the values currency, eg. pounds for GBP.
            - `minorUnits` integer — The positive minor units of the value, based on the values currency, eg. pennies for GBP.
            - `currency` string, required — The currency of the amount
      - `period` object, required
        - `months` number, required — The number of months of regular payment history detected
    - `loans` object
      - `opened` object, required
        - `details` object[]
          - `count` number, required — The number of loans opened
          - `period` object, required
            - `unit` 'days', required — The type of time unit over which the loans were opened
            - `value` number, required — The number of time units over which the loans were opened
          - `total` object
            - `borrowed` object, required — The total amount borrowed
              - …
            - `repaid` object, required — The total amount repaid
              - …
          - `type` 'bnpl' | 'dca/dmp' | 'hcstc' | 'secured' | 'unsecured' | 'unknown', required — The type of loan
      - `repayments` object, required
        - `median` object, required — The median monthly loan repayment amount
          - `value` integer, required — The amount in minor units of the currency, eg. pennies for GBP, negative means money going out of an account, positive means money coming into an account.
          - `majorUnits` integer — The positive major units of the value, based on the values currency, eg. pounds for GBP.
          - `minorUnits` integer — The positive minor units of the value, based on the values currency, eg. pennies for GBP.
          - `currency` string, required — The currency of the amount
  - `links` Links
    - `next` string, uri — The url to retrieve the next page of results from
    - `prev` string, uri — The url to retrieve the previous page of results from
    - `self` string, uri, required — The url of the current resource(s)
  - `meta` object

## Other responses

- `401` — Unsuccessful Response - Not authorised - Missing authorization header - Invalid access Token
- `403` — Unsuccessful Response - Forbidden - Invalid scopes
- `404` — Unsuccessful Response - Resource Not found

---

[API](https://skmtc.net/moneyhubenterprise/apis/moneyhub-identity-service.md) · [All operations](https://skmtc.net/moneyhubenterprise/apis/moneyhub-identity-service/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/moneyhubenterprise/moneyhub-identity-service/revisions/8841721f7aae/schema)
