How to prepare six-monthly CDR data holder reporting using Fiskil Console Analytics.
CDR Data Holders are required to submit a compliance report to the ACCC every six months via the CDR Portal at portal.cdr.gov.au. This guide explains how to use the Fiskil Console to find the numbers you need, and provides context on what each question in the reporting form is asking.
This guide is general information only and is not legal advice. Always confirm your reporting position against the latest CDR Rules and ACCC guidance.
Most of the data you need for regulatory reporting is available directly in the Fiskil Console under the Analytics tab. Follow these steps each reporting period.
In the Period section on the left, set the date range that matches your reporting period:
Reporting Period
Date Range to Enter
1 January – 30 June
01/01/YYYY → 01/07/YYYY
1 July – 31 December
01/07/YYYY → 01/01/YYYY
Note: The date range picker excludes the end date. To capture data up to and including 31 December, enter 1 January of the following year as the end date. The same logic applies for the June period.
The tiles will update automatically once you set the date range.
The tables below map each question in the reporting form to where you can find the answer in the Fiskil Console, and explain what the question is asking.
Complaint data is managed through your own internal complaints handling system. Fiskil does not capture complaint intake or resolution — you will need to compile these figures independently.
Question
What it’s asking
Where to find it
Q1 — Product data complaints
Total CDR complaints received relating to product data (for example, errors or gaps in your product data feed).
Your internal complaints system. Energy data holders: enter 0 — product data obligations do not apply.
Q2 — Consumer complaints
Total CDR complaints relating to consumers or consumer data (data sharing issues, consent problems, data quality).
Your internal complaints system.
Q3 — Complaints by type
A breakdown by category used in your internal complaints process (for example, “Data accuracy”, “Consent”, “Access issues”). Add one row per type.
Your internal complaints system.
Q4 — Complaints resolved
Total CDR consumer complaints resolved during the reporting period.
Your internal complaints system.
Q4.1 (optional) — Resolved, received this period
Of Q4, how many were received and resolved within this same period.
Your internal complaints system.
Q4.2 (optional) — Resolved, received prior period
Of Q4, how many were received in a previous period but resolved this period.
Your internal complaints system.
Q5 — Average days to resolve (IDR)
Average calendar days from complaint received to resolved via internal dispute resolution.
Your internal complaints system.
Q6 — Referred to EDR
Complaints referred to an external dispute resolution scheme (for example, AFCA for banking or the relevant energy ombudsman).
Your internal complaints system.
Q7 — Resolved by EDR
Complaints resolved by the external dispute resolution scheme.
Most data request figures come directly from the Analytics tab in the Fiskil Console.For Q9 specifically, Fiskil primarily handles requests made by accredited data recipients or intermediaries (for example, apps or services your customers authorise). Fiskil does not generally handle direct consumer-to-data-holder request channels, so this metric is usually sourced from your own systems and often 0 unless your sector supports this flow and it has occurred.
Question
What it’s asking
Where to find it
Q8 — Product data requests
Total requests received by your product data APIs during the period.
Product Data Requests tile in Analytics. Energy data holders: enter 0 — product data obligations do not apply.
Q9 — Consumer data requests from eligible CDR consumers
Requests made directly by consumers to your APIs (rule 1.13(1)(a)(i)). Fiskil does not generally participate in this direct-consumer flow, so this metric should come from your own direct request channels. This obligation has not yet commenced for most data holders — if that applies to you, enter 0.
Your internal systems for direct consumer requests (not Fiskil Analytics).
Q10 — Consumer data requests from accredited persons
Requests made by accredited data recipients or intermediaries on behalf of consumers. This is the standard flow Fiskil facilitates and is usually your primary non-zero figure.
Energy data holders: this entire section does not apply. Enter 0 / No for all fields.
Question
What it’s asking
Where to find it in Fiskil
Q11 — Did you refuse any product data requests?
Yes/No.
Review the refusal tiles in Analytics for the reporting period.
Q11.1 — Total product data refusals
Count of all product data request refusals.
Total Refusals tile in Analytics.
Q11.2 — 403 errors
Refusals due to a detected threat to the data holder, CDR Register, or consumer.
Refusals (Error code 403) tile in Analytics.
Q11.3 — 429 errors
Refusals due to traffic thresholds exceeded or denial-of-service detection.
Contact Fiskil Support if you need a 429 breakdown — this is not currently shown as a separate tile.
Q11.4 — Other refusals
Any other CDR Rule or Data Standard relied upon to refuse a request, with the rule cited. Under Fiskil’s current implementation, this is not supported as a separate refusal pathway and is expected to be 0.
Enter 0 from Fiskil-supported flows. If you have non-Fiskil channels, verify through your own internal systems.
Consumer Data Refusals — Direct from Consumers (Question 12)
Fiskil primarily handles requests made by accredited data recipients or intermediaries (for example, apps or services your customers have authorised). Fiskil does not generally handle direct API requests from individual consumers or business consumers to you as a data holder.That means Question 12 metrics are usually sourced from your own direct consumer request channels/processes, not from Fiskil Analytics.For most data holders this will be uncommon and often 0, but if your sector supports direct consumer requests and you have received them, you should report them.
Question
What it’s asking
Where to find it
Q12 — Did you refuse consumer data requests from eligible CDR consumers?
Yes/No. If your sector has not commenced direct consumer API access, answer No.
This should usually be No / 0 unless you received and refused direct consumer requests. Not provided by Fiskil Analytics.
Q12.1 — Total refusals
Count of all refusals to direct consumer requests.
This should usually be 0 unless you received and refused direct consumer requests. Not provided by Fiskil Analytics.
Q12.2 — 403 errors
Refusals due to a detected threat.
This should usually be 0 unless you received and refused direct consumer requests with this refusal type. Not provided by Fiskil Analytics.
Q12.3 — 404 errors
Refusals returned for a blocked or suspended account.
This should usually be 0 unless you received and refused direct consumer requests with this refusal type. Not provided by Fiskil Analytics.
Q12.4 — 422 errors
Refusals returned for a blocked or suspended account (alternative code used in some standards contexts).
This should usually be 0 unless you received and refused direct consumer requests with this refusal type. Not provided by Fiskil Analytics.
Q12.5 — 429 errors
Refusals due to traffic thresholds or denial-of-service detection.
This should usually be 0 unless you received and refused direct consumer requests with this refusal type. Not provided by Fiskil Analytics.
Q12.6 — Other refusals
Any other CDR Rule or Data Standard relied upon, with the rule cited. Under Fiskil’s current implementation, this is not supported as a separate refusal pathway and is expected to be 0.
This should usually be 0. Not provided by Fiskil Analytics.
Consumer Data Refusals — From Accredited Persons (Question 13)
This section mirrors Question 12 but covers requests made by accredited data recipients or intermediaries on behalf of consumers — the standard flow Fiskil facilitates. This is where most data holders will have non-zero figures.
Question
What it’s asking
Where to find it in Fiskil
Q13 — Did you refuse consumer data requests from accredited persons?
Yes/No.
Review refusal tiles in Analytics.
Q13.1 — Total refusals
Count of all refusals to accredited-person requests.
Total Refusals to share consumer data tile in Analytics.
Q13.2 — 403 errors
Refusals due to a detected threat.
Refusals (Error code 403) tile in Analytics.
Q13.3 — 404 errors
Refusals returned for a blocked or suspended account.
Refusals (Error code 404) tile in Analytics.
Q13.4 — 422 errors
Refusals returned for a blocked or suspended account.
Refusals (Error code 422) tile in Analytics.
Q13.5 — 429 errors
Refusals due to traffic thresholds or denial-of-service detection.
Any other CDR Rule or Data Standard relied upon, with the rule cited. Under Fiskil’s current implementation, this is not supported as a separate refusal pathway and is expected to be 0.
Enter 0 from Fiskil-supported flows. If you have non-Fiskil channels, verify through your own internal systems.
What if a value is zero?
Enter 0. Do not leave numeric fields blank.What counts as a CDR complaint?
Any complaint that relates to your CDR obligations — product data availability, consumer data sharing, consent and authorisation, or CDR-related service issues. General complaints unrelated to CDR do not need to be counted.What is the difference between Q12 and Q13?
Q12 covers requests made directly by consumers to your APIs. Q13 covers requests made by accredited data recipients or intermediaries on behalf of consumers — this is the standard flow Fiskil facilitates and where most data holders will see activity.I need more detail than the Analytics tiles provide.
The Logs tab in the Fiskil Console provides a full request-level log that you can use to verify or investigate the totals shown in Analytics. If you need data that is not available in the Console, contact Fiskil Support.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Fiskil","colors":{"primary":"#191b15","light":"#FAFAFA","dark":"#0A0A0A"},"logo":{"light":"https://mintcdn.com/fiskil/3jtGQNqcSr5N4TNw/logo/light.svg?fit=max\u0026auto=format\u0026n=3jtGQNqcSr5N4TNw\u0026q=85\u0026s=acb4183b4445e3ca4d0a4637752c3943","dark":"https://mintcdn.com/fiskil/3jtGQNqcSr5N4TNw/logo/dark.svg?fit=max\u0026auto=format\u0026n=3jtGQNqcSr5N4TNw\u0026q=85\u0026s=8c629fe8068a14827769da2017e4cc63"},"favicon":"https://mintcdn.com/fiskil/LpdVPOo2gKHc0Bqu/favicon.png?fit=max\u0026auto=format\u0026n=LpdVPOo2gKHc0Bqu\u0026q=85\u0026s=dfe1748146c5e63e3caa317a55fe6f4b","appearance":{"default":"light"},"background":{"decoration":"grid"},"navbar":{"primary":{"type":"button","label":"Connect now","href":"https://www.fiskil.com/contact"}},"footer":{"socials":{"x":"https://twitter.com/Fiskil_","linkedin":"https://www.linkedin.com/company/fiskil"}},"fonts":{"heading":{"family":"Manrope"},"body":{"family":"Figtree"}},"contextual":{"options":["copy","view","chatgpt","claude","perplexity","mcp","cursor","vscode"],"display":"header"},"styling":{"latex":false},"navigation":{"global":{"anchors":[{"anchor":"Website","icon":"globe","href":"https://www.fiskil.com"},{"anchor":"Support","icon":"headset","href":"https://www.fiskil.com/contact"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"fiskil","hasAudioNarration":false,"actualSubdomain":"fiskil","customDomains":["holder.docs.fiskil.dev"],"gitSource":{"type":"github","owner":"fiskil","repo":"dp_docs_v2","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"feedback":{"thumbs":true},"entitlements":{"AI_CHAT":{"status":"DISABLED"}},"buildId":"6ae27f24defc6aa028e6aae8","clientVersion":"0.0.4094","searchFilterCounts":[{"language":"default","tag":"API Reference","count":61},{"language":"default","tag":"CDR","count":44},{"language":"default","tag":"Data Sharing","count":36},{"language":"default","tag":"Docs","count":27},{"language":"default","tag":"Banking","count":15},{"language":"default","tag":"FDX","count":12},{"language":"default","tag":"Energy","count":11},{"language":"default","tag":"Consent Flow","count":10},{"language":"default","tag":"Platform API","count":9},{"language":"default","tag":"Testing CDR","count":8}]},"assistantConfig":{},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"comment-mode","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":true},"customCss":[{"filePath":"style.css","content":"#navigation-items>button:first-child{margin-bottom:24px}img[src$=\"/icons/cdr.svg\"],img[src$=\"icons/cdr.svg\"],img[src*=\"/icons/cdr\"],svg#Layer_1{background-color:transparent!important}img[src$=\"/icons/cdr.svg\"],img[src$=\"icons/cdr.svg\"]{filter:none!important;-webkit-filter:none!important}img[src$=\"/icons/fdx.svg\"],img[src$=\"icons/fdx.svg\"],img[src*=\"/icons/fdx\"]{background-color:transparent!important;filter:none!important;-webkit-filter:none!important}img[src$=\"/icons/cdr.svg\"],img[src$=\"icons/cdr.svg\"],img[src*=\"/icons/cdr\"],img[src$=\"/icons/fdx.svg\"],img[src$=\"icons/fdx.svg\"],img[src*=\"/icons/fdx\"]{width:20px!important;height:20px!important;vertical-align:middle}"}],"page":{"pagePath":"docs/testing/regulatory-reporting","slug":"/docs/testing/regulatory-reporting","pageMetadata":{"title":"Regulatory Reporting","description":"How to prepare six-monthly CDR data holder reporting using Fiskil Console Analytics.","href":"/docs/testing/regulatory-reporting"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"How to prepare six-monthly CDR data holder reporting using Fiskil Console Analytics.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,blockquote:`blockquote`,em:`em`,hr:`hr`,li:`li`,ol:`ol`,p:`p`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,..._provideComponents(),...props.components},{Heading,Note,Table}=_components;if(!Heading)_missingMdxReference(`Heading`,true);if(!Note)_missingMdxReference(`Note`,true);if(!Table)_missingMdxReference(`Table`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`CDR Data Holders are required to submit a compliance report to the ACCC every six months via the `,_jsx(_components.strong,{children:`CDR Portal`}),` at `,_jsx(_components.a,{href:`https://portal.cdr.gov.au/`,children:`portal.cdr.gov.au`}),`. This guide explains how to use the Fiskil Console to find the numbers you need, and provides context on what each question in the reporting form is asking.`]}),`\n`,_jsx(Note,{children:_jsx(_components.p,{children:`This guide is general information only and is not legal advice. Always confirm your reporting position against the latest CDR Rules and ACCC guidance.`})}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(Heading,{level:`2`,id:`using-the-analytics-tab`,children:`Using the Analytics Tab`}),`\n`,_jsxs(_components.p,{children:[`Most of the data you need for regulatory reporting is available directly in the Fiskil Console under the `,_jsx(_components.strong,{children:`Analytics`}),` tab. Follow these steps each reporting period.`]}),`\n`,_jsx(Heading,{level:`3`,id:`step-1-—-open-analytics`,children:`Step 1 — Open Analytics`}),`\n`,_jsxs(_components.ol,{children:[`\n`,_jsxs(_components.li,{children:[`Open the `,_jsx(_components.a,{href:`https://console.fiskil.com.au`,children:`Fiskil Console`}),` and select your `,_jsx(_components.strong,{children:`Data Provider workspace`}),` from the top-left selector.`]}),`\n`,_jsxs(_components.li,{children:[`Click `,_jsx(_components.strong,{children:`Analytics`}),` in the top navigation bar.`]}),`\n`,_jsxs(_components.li,{children:[`You will see tiles for:`,`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:_jsx(_components.strong,{children:`Consumer Data Requests`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.strong,{children:`Product Data Requests`})}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Refusals`}),` (Total, 403, 404, 422)`]}),`\n`]}),`\n`]}),`\n`]}),`\n`,_jsx(Heading,{level:`3`,id:`step-2-—-select-the-correct-environment`,children:`Step 2 — Select the correct environment`}),`\n`,_jsxs(_components.p,{children:[`Use the `,_jsx(_components.strong,{children:`environment selector`}),` in the top right to choose `,_jsx(_components.strong,{children:`Production`}),`.`]}),`\n`,_jsx(_components.p,{children:`Staging is used for testing and should not be used for regulatory submissions.`}),`\n`,_jsx(Heading,{level:`3`,id:`step-3-—-set-your-reporting-period`,children:`Step 3 — Set your reporting period`}),`\n`,_jsxs(_components.p,{children:[`In the `,_jsx(_components.strong,{children:`Period`}),` section on the left, set the date range that matches your reporting period:`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Reporting Period`}),_jsx(_components.th,{children:`Date Range to Enter`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`1 January – 30 June`}),_jsx(_components.td,{children:`01/01/YYYY → 01/07/YYYY`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`1 July – 31 December`}),_jsx(_components.td,{children:`01/07/YYYY → 01/01/YYYY`})]})]})]}),`\n`,_jsxs(_components.blockquote,{children:[`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Note:`}),` The date range picker `,_jsx(_components.strong,{children:`excludes the end date`}),`. To capture data up to and including 31 December, enter 1 January of the following year as the end date. The same logic applies for the June period.`]}),`\n`]}),`\n`,_jsx(_components.p,{children:`The tiles will update automatically once you set the date range.`}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(Heading,{level:`2`,id:`what-to-report-—-question-by-question`,children:`What to Report — Question by Question`}),`\n`,_jsx(_components.p,{children:`The tables below map each question in the reporting form to where you can find the answer in the Fiskil Console, and explain what the question is asking.`}),`\n`,_jsx(Heading,{level:`3`,id:`complaints-questions-1–7`,children:`Complaints (Questions 1–7)`}),`\n`,_jsx(_components.p,{children:`Complaint data is managed through your own internal complaints handling system. Fiskil does not capture complaint intake or resolution — you will need to compile these figures independently.`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Question`}),_jsx(_components.th,{children:`What it’s asking`}),_jsx(_components.th,{children:`Where to find it`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Q1 — Product data complaints`}),_jsx(_components.td,{children:`Total CDR complaints received relating to product data (for example, errors or gaps in your product data feed).`}),_jsxs(_components.td,{children:[`Your internal complaints system. `,_jsx(_components.em,{children:`Energy data holders: enter 0 — product data obligations do not apply.`})]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Q2 — Consumer complaints`}),_jsx(_components.td,{children:`Total CDR complaints relating to consumers or consumer data (data sharing issues, consent problems, data quality).`}),_jsx(_components.td,{children:`Your internal complaints system.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Q3 — Complaints by type`}),_jsx(_components.td,{children:`A breakdown by category used in your internal complaints process (for example, “Data accuracy”, “Consent”, “Access issues”). Add one row per type.`}),_jsx(_components.td,{children:`Your internal complaints system.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Q4 — Complaints resolved`}),_jsx(_components.td,{children:`Total CDR consumer complaints resolved during the reporting period.`}),_jsx(_components.td,{children:`Your internal complaints system.`})]}),_jsxs(_components.tr,{children:[_jsxs(_components.td,{children:[`Q4.1 `,_jsx(_components.em,{children:`(optional)`}),` — Resolved, received this period`]}),_jsx(_components.td,{children:`Of Q4, how many were received and resolved within this same period.`}),_jsx(_components.td,{children:`Your internal complaints system.`})]}),_jsxs(_components.tr,{children:[_jsxs(_components.td,{children:[`Q4.2 `,_jsx(_components.em,{children:`(optional)`}),` — Resolved, received prior period`]}),_jsx(_components.td,{children:`Of Q4, how many were received in a previous period but resolved this period.`}),_jsx(_components.td,{children:`Your internal complaints system.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Q5 — Average days to resolve (IDR)`}),_jsx(_components.td,{children:`Average calendar days from complaint received to resolved via internal dispute resolution.`}),_jsx(_components.td,{children:`Your internal complaints system.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Q6 — Referred to EDR`}),_jsx(_components.td,{children:`Complaints referred to an external dispute resolution scheme (for example, AFCA for banking or the relevant energy ombudsman).`}),_jsx(_components.td,{children:`Your internal complaints system.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Q7 — Resolved by EDR`}),_jsx(_components.td,{children:`Complaints resolved by the external dispute resolution scheme.`}),_jsx(_components.td,{children:`Your internal complaints system.`})]})]})]}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(Heading,{level:`3`,id:`data-requests-questions-8–10`,children:`Data Requests (Questions 8–10)`}),`\n`,_jsxs(_components.p,{children:[`Most data request figures come directly from the `,_jsx(_components.strong,{children:`Analytics`}),` tab in the Fiskil Console.`]}),`\n`,_jsxs(_components.p,{children:[`For Q9 specifically, Fiskil primarily handles requests made by `,_jsx(_components.strong,{children:`accredited data recipients or intermediaries`}),` (for example, apps or services your customers authorise). Fiskil does not generally handle direct consumer-to-data-holder request channels, so this metric is usually sourced from your own systems and often 0 unless your sector supports this flow and it has occurred.`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Question`}),_jsx(_components.th,{children:`What it’s asking`}),_jsx(_components.th,{children:`Where to find it`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Q8 — Product data requests`}),_jsx(_components.td,{children:`Total requests received by your product data APIs during the period.`}),_jsxs(_components.td,{children:[_jsx(_components.strong,{children:`Product Data Requests`}),` tile in Analytics. `,_jsx(_components.em,{children:`Energy data holders: enter 0 — product data obligations do not apply.`})]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Q9 — Consumer data requests from eligible CDR consumers`}),_jsx(_components.td,{children:`Requests made directly by consumers to your APIs (rule 1.13(1)(a)(i)). Fiskil does not generally participate in this direct-consumer flow, so this metric should come from your own direct request channels. This obligation has not yet commenced for most data holders — if that applies to you, enter 0.`}),_jsx(_components.td,{children:`Your internal systems for direct consumer requests (not Fiskil Analytics).`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Q10 — Consumer data requests from accredited persons`}),_jsx(_components.td,{children:`Requests made by accredited data recipients or intermediaries on behalf of consumers. This is the standard flow Fiskil facilitates and is usually your primary non-zero figure.`}),_jsxs(_components.td,{children:[_jsx(_components.strong,{children:`Consumer Data Requests`}),` tile in Analytics.`]})]})]})]}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(Heading,{level:`3`,id:`product-data-refusals-question-11`,children:`Product Data Refusals (Question 11)`}),`\n`,_jsx(_components.p,{children:_jsx(_components.em,{children:`Energy data holders: this entire section does not apply. Enter 0 / No for all fields.`})}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Question`}),_jsx(_components.th,{children:`What it’s asking`}),_jsx(_components.th,{children:`Where to find it in Fiskil`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Q11 — Did you refuse any product data requests?`}),_jsx(_components.td,{children:`Yes/No.`}),_jsx(_components.td,{children:`Review the refusal tiles in Analytics for the reporting period.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Q11.1 — Total product data refusals`}),_jsx(_components.td,{children:`Count of all product data request refusals.`}),_jsxs(_components.td,{children:[_jsx(_components.strong,{children:`Total Refusals`}),` tile in Analytics.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Q11.2 — 403 errors`}),_jsx(_components.td,{children:`Refusals due to a detected threat to the data holder, CDR Register, or consumer.`}),_jsxs(_components.td,{children:[_jsx(_components.strong,{children:`Refusals (Error code 403)`}),` tile in Analytics.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Q11.3 — 429 errors`}),_jsx(_components.td,{children:`Refusals due to traffic thresholds exceeded or denial-of-service detection.`}),_jsxs(_components.td,{children:[`Contact `,_jsx(_components.a,{href:`mailto:support@fiskil.com`,children:`Fiskil Support`}),` if you need a 429 breakdown — this is not currently shown as a separate tile.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Q11.4 — Other refusals`}),_jsx(_components.td,{children:`Any other CDR Rule or Data Standard relied upon to refuse a request, with the rule cited. Under Fiskil’s current implementation, this is not supported as a separate refusal pathway and is expected to be 0.`}),_jsxs(_components.td,{children:[`Enter `,_jsx(_components.strong,{children:`0`}),` from Fiskil-supported flows. If you have non-Fiskil channels, verify through your own internal systems.`]})]})]})]}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(Heading,{level:`3`,id:`consumer-data-refusals-—-direct-from-consumers-question-12`,children:`Consumer Data Refusals — Direct from Consumers (Question 12)`}),`\n`,_jsxs(_components.p,{children:[`Fiskil primarily handles requests made by `,_jsx(_components.strong,{children:`accredited data recipients or intermediaries`}),` (for example, apps or services your customers have authorised). Fiskil does `,_jsx(_components.strong,{children:`not`}),` generally handle direct API requests from individual consumers or business consumers to you as a data holder.`]}),`\n`,_jsxs(_components.p,{children:[`That means Question 12 metrics are usually sourced from `,_jsx(_components.strong,{children:`your own direct consumer request channels/processes`}),`, not from Fiskil Analytics.`]}),`\n`,_jsxs(_components.p,{children:[`For most data holders this will be uncommon and often `,_jsx(_components.strong,{children:`0`}),`, but if your sector supports direct consumer requests and you have received them, you should report them.`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Question`}),_jsx(_components.th,{children:`What it’s asking`}),_jsx(_components.th,{children:`Where to find it`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Q12 — Did you refuse consumer data requests from eligible CDR consumers?`}),_jsx(_components.td,{children:`Yes/No. If your sector has not commenced direct consumer API access, answer No.`}),_jsxs(_components.td,{children:[`This should usually be `,_jsx(_components.strong,{children:`No / 0`}),` unless you received and refused direct consumer requests. Not provided by Fiskil Analytics.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Q12.1 — Total refusals`}),_jsx(_components.td,{children:`Count of all refusals to direct consumer requests.`}),_jsxs(_components.td,{children:[`This should usually be `,_jsx(_components.strong,{children:`0`}),` unless you received and refused direct consumer requests. Not provided by Fiskil Analytics.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Q12.2 — 403 errors`}),_jsx(_components.td,{children:`Refusals due to a detected threat.`}),_jsxs(_components.td,{children:[`This should usually be `,_jsx(_components.strong,{children:`0`}),` unless you received and refused direct consumer requests with this refusal type. Not provided by Fiskil Analytics.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Q12.3 — 404 errors`}),_jsx(_components.td,{children:`Refusals returned for a blocked or suspended account.`}),_jsxs(_components.td,{children:[`This should usually be `,_jsx(_components.strong,{children:`0`}),` unless you received and refused direct consumer requests with this refusal type. Not provided by Fiskil Analytics.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Q12.4 — 422 errors`}),_jsx(_components.td,{children:`Refusals returned for a blocked or suspended account (alternative code used in some standards contexts).`}),_jsxs(_components.td,{children:[`This should usually be `,_jsx(_components.strong,{children:`0`}),` unless you received and refused direct consumer requests with this refusal type. Not provided by Fiskil Analytics.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Q12.5 — 429 errors`}),_jsx(_components.td,{children:`Refusals due to traffic thresholds or denial-of-service detection.`}),_jsxs(_components.td,{children:[`This should usually be `,_jsx(_components.strong,{children:`0`}),` unless you received and refused direct consumer requests with this refusal type. Not provided by Fiskil Analytics.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Q12.6 — Other refusals`}),_jsx(_components.td,{children:`Any other CDR Rule or Data Standard relied upon, with the rule cited. Under Fiskil’s current implementation, this is not supported as a separate refusal pathway and is expected to be 0.`}),_jsxs(_components.td,{children:[`This should usually be `,_jsx(_components.strong,{children:`0`}),`. Not provided by Fiskil Analytics.`]})]})]})]}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(Heading,{level:`3`,id:`consumer-data-refusals-—-from-accredited-persons-question-13`,children:`Consumer Data Refusals — From Accredited Persons (Question 13)`}),`\n`,_jsxs(_components.p,{children:[`This section mirrors Question 12 but covers requests made by `,_jsx(_components.strong,{children:`accredited data recipients or intermediaries`}),` on behalf of consumers — the standard flow Fiskil facilitates. This is where most data holders will have non-zero figures.`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Question`}),_jsx(_components.th,{children:`What it’s asking`}),_jsx(_components.th,{children:`Where to find it in Fiskil`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Q13 — Did you refuse consumer data requests from accredited persons?`}),_jsx(_components.td,{children:`Yes/No.`}),_jsx(_components.td,{children:`Review refusal tiles in Analytics.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Q13.1 — Total refusals`}),_jsx(_components.td,{children:`Count of all refusals to accredited-person requests.`}),_jsxs(_components.td,{children:[_jsx(_components.strong,{children:`Total Refusals to share consumer data`}),` tile in Analytics.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Q13.2 — 403 errors`}),_jsx(_components.td,{children:`Refusals due to a detected threat.`}),_jsxs(_components.td,{children:[_jsx(_components.strong,{children:`Refusals (Error code 403)`}),` tile in Analytics.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Q13.3 — 404 errors`}),_jsx(_components.td,{children:`Refusals returned for a blocked or suspended account.`}),_jsxs(_components.td,{children:[_jsx(_components.strong,{children:`Refusals (Error code 404)`}),` tile in Analytics.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Q13.4 — 422 errors`}),_jsx(_components.td,{children:`Refusals returned for a blocked or suspended account.`}),_jsxs(_components.td,{children:[_jsx(_components.strong,{children:`Refusals (Error code 422)`}),` tile in Analytics.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Q13.5 — 429 errors`}),_jsx(_components.td,{children:`Refusals due to traffic thresholds or denial-of-service detection.`}),_jsxs(_components.td,{children:[`Contact `,_jsx(_components.a,{href:`mailto:support@fiskil.com`,children:`Fiskil Support`}),` if you need a 429 breakdown.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Q13.6 — Other refusals`}),_jsx(_components.td,{children:`Any other CDR Rule or Data Standard relied upon, with the rule cited. Under Fiskil’s current implementation, this is not supported as a separate refusal pathway and is expected to be 0.`}),_jsxs(_components.td,{children:[`Enter `,_jsx(_components.strong,{children:`0`}),` from Fiskil-supported flows. If you have non-Fiskil channels, verify through your own internal systems.`]})]})]})]}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(Heading,{level:`2`,id:`sector-applicability-summary`,children:`Sector Applicability Summary`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Question Group`}),_jsx(_components.th,{children:`Banking \u0026 Non-Bank Lenders`}),_jsx(_components.th,{children:`Energy Data Holders`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Q1 — Product data complaints`}),_jsx(_components.td,{children:`Required`}),_jsx(_components.td,{children:`Not applicable — enter 0`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Q2–7 — Consumer complaints`}),_jsx(_components.td,{children:`Required`}),_jsx(_components.td,{children:`Required`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Q8 — Product data requests`}),_jsx(_components.td,{children:`Required`}),_jsx(_components.td,{children:`Not applicable — enter 0`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Q9–10 — Consumer data requests`}),_jsx(_components.td,{children:`Required`}),_jsx(_components.td,{children:`Required`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Q11 — Product data refusals`}),_jsx(_components.td,{children:`Required`}),_jsx(_components.td,{children:`Not applicable — enter 0 / No`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Q12–13 — Consumer data refusals`}),_jsx(_components.td,{children:`Required`}),_jsx(_components.td,{children:`Required`})]})]})]}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(Heading,{level:`2`,id:`common-questions`,children:`Common Questions`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`What if a value is zero?`}),`\nEnter 0. Do not leave numeric fields blank.`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`What counts as a CDR complaint?`}),`\nAny complaint that relates to your CDR obligations — product data availability, consumer data sharing, consent and authorisation, or CDR-related service issues. General complaints unrelated to CDR do not need to be counted.`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`What is the difference between Q12 and Q13?`}),`\nQ12 covers requests made directly by consumers to your APIs. Q13 covers requests made by accredited data recipients or intermediaries on behalf of consumers — this is the standard flow Fiskil facilitates and where most data holders will see activity.`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`I need more detail than the Analytics tiles provide.`}),`\nThe `,_jsx(_components.strong,{children:`Logs`}),` tab in the Fiskil Console provides a full request-level log that you can use to verify or investigate the totals shown in Analytics. If you need data that is not available in the Console, contact `,_jsx(_components.a,{href:`mailto:support@fiskil.com`,children:`Fiskil Support`}),`.`]}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(Heading,{level:`2`,id:`further-resources`,children:`Further Resources`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:_jsx(_components.a,{href:`https://portal.cdr.gov.au/`,children:`CDR Portal`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.a,{href:`https://www.legislation.gov.au/Series/F2020L00094`,children:`CDR Rules — Rule 9.4 (Reporting obligations)`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.a,{href:`https://consumerdatastandardsaustralia.github.io/standards/`,children:`Consumer Data Standards`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.a,{href:`mailto:support@fiskil.com`,children:`Fiskil Support`})}),`\n`]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Regulatory Reporting","description":"How to prepare six-monthly CDR data holder reporting using Fiskil Console Analytics.","href":"/docs/testing/regulatory-reporting"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Using the Analytics Tab","slug":"using-the-analytics-tab","depth":2,"children":[{"title":"Step 1 — Open Analytics","slug":"step-1-—-open-analytics","depth":3,"children":[]},{"title":"Step 2 — Select the correct environment","slug":"step-2-—-select-the-correct-environment","depth":3,"children":[]},{"title":"Step 3 — Set your reporting period","slug":"step-3-—-set-your-reporting-period","depth":3,"children":[]}]},{"title":"What to Report — Question by Question","slug":"what-to-report-—-question-by-question","depth":2,"children":[{"title":"Complaints (Questions 1–7)","slug":"complaints-questions-1–7","depth":3,"children":[]},{"title":"Data Requests (Questions 8–10)","slug":"data-requests-questions-8–10","depth":3,"children":[]},{"title":"Product Data Refusals (Question 11)","slug":"product-data-refusals-question-11","depth":3,"children":[]},{"title":"Consumer Data Refusals — Direct from Consumers (Question 12)","slug":"consumer-data-refusals-—-direct-from-consumers-question-12","depth":3,"children":[]},{"title":"Consumer Data Refusals — From Accredited Persons (Question 13)","slug":"consumer-data-refusals-—-from-accredited-persons-question-13","depth":3,"children":[]}]},{"title":"Sector Applicability Summary","slug":"sector-applicability-summary","depth":2,"children":[]},{"title":"Common Questions","slug":"common-questions","depth":2,"children":[]},{"title":"Further Resources","slug":"further-resources","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":["/_mintlify/custom/fiskil/23b3382855374c54/sidebar.js"],"subdomain":"fiskil","siteName":"Fiskil","title":"Regulatory Reporting - Fiskil","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-28T23:03:10.444Z","originalFileLocation":"docs/testing/regulatory-reporting.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"light\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"How to prepare six-monthly CDR data holder reporting using Fiskil Console Analytics.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Fiskil\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/fiskil/g2S5gqslwo9e4Wqx/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/fiskil/g2S5gqslwo9e4Wqx/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/fiskil/g2S5gqslwo9e4Wqx/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/fiskil/g2S5gqslwo9e4Wqx/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/fiskil/g2S5gqslwo9e4Wqx/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/fiskil/g2S5gqslwo9e4Wqx/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/fiskil/g2S5gqslwo9e4Wqx/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/fiskil/g2S5gqslwo9e4Wqx/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/fiskil/g2S5gqslwo9e4Wqx/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Regulatory Reporting - Fiskil\">\u003cmeta data-mint-head property=\"og:description\" content=\"How to prepare six-monthly CDR data holder reporting using Fiskil Console Analytics.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Fiskil\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://holder.docs.fiskil.dev/docs/testing/regulatory-reporting\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://fiskil.mintlify.site/_mintlify/api/og/v2?division=TEST+%26+VALIDATE\u0026amp;title=Regulatory+Reporting\u0026amp;description=How+to+prepare+six-monthly+CDR+data+holder+reporting+using+Fiskil+Console+Analytics.\u0026amp;theme=fc6062bcca7fed429a4b2900\u0026amp;signature=84f8bd608319d58dcc6e419dac0ca82dc00bc03a72b1b675b097b659f43f18fd\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Regulatory Reporting - Fiskil\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"How to prepare six-monthly CDR data holder reporting using Fiskil Console Analytics.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://fiskil.mintlify.site/_mintlify/api/og/v2?division=TEST+%26+VALIDATE\u0026amp;title=Regulatory+Reporting\u0026amp;description=How+to+prepare+six-monthly+CDR+data+holder+reporting+using+Fiskil+Console+Analytics.\u0026amp;theme=fc6062bcca7fed429a4b2900\u0026amp;signature=84f8bd608319d58dcc6e419dac0ca82dc00bc03a72b1b675b097b659f43f18fd\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/fiskil/g2S5gqslwo9e4Wqx/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Fiskil\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#191b15\">\u003clink data-mint-head rel=\"canonical\" href=\"https://holder.docs.fiskil.dev/docs/testing/regulatory-reporting\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/docs/testing/regulatory-reporting.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://holder.docs.fiskil.dev/#organization\",\"name\":\"Fiskil\",\"url\":\"https://holder.docs.fiskil.dev\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/fiskil/3jtGQNqcSr5N4TNw/logo/light.svg?fit=max\u0026auto=format\u0026n=3jtGQNqcSr5N4TNw\u0026q=85\u0026s=acb4183b4445e3ca4d0a4637752c3943\"}},{\"@type\":\"WebSite\",\"@id\":\"https://holder.docs.fiskil.dev#website\",\"name\":\"Fiskil\",\"url\":\"https://holder.docs.fiskil.dev\",\"publisher\":{\"@id\":\"https://holder.docs.fiskil.dev/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://holder.docs.fiskil.dev/docs/testing/regulatory-reporting#webpage\",\"url\":\"https://holder.docs.fiskil.dev/docs/testing/regulatory-reporting\",\"name\":\"Regulatory Reporting\",\"description\":\"How to prepare six-monthly CDR data holder reporting using Fiskil Console Analytics.\",\"dateModified\":\"2026-10-28T23:03:10.444Z\",\"isPartOf\":{\"@id\":\"https://holder.docs.fiskil.dev#website\"},\"breadcrumb\":{\"@id\":\"https://holder.docs.fiskil.dev/docs/testing/regulatory-reporting#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://holder.docs.fiskil.dev/docs/testing/regulatory-reporting#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"TEST \u0026 VALIDATE\",\"item\":\"https://holder.docs.fiskil.dev/docs/testing/index\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Regulatory Reporting\",\"item\":\"https://holder.docs.fiskil.dev/docs/testing/regulatory-reporting\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://holder.docs.fiskil.dev/docs/testing/regulatory-reporting#article\",\"headline\":\"Regulatory Reporting\",\"name\":\"Regulatory Reporting\",\"description\":\"How to prepare six-monthly CDR data holder reporting using Fiskil Console Analytics.\",\"url\":\"https://holder.docs.fiskil.dev/docs/testing/regulatory-reporting\",\"mainEntityOfPage\":{\"@id\":\"https://holder.docs.fiskil.dev/docs/testing/regulatory-reporting#webpage\"},\"dateModified\":\"2026-10-28T23:03:10.444Z\",\"publisher\":{\"@id\":\"https://holder.docs.fiskil.dev/#organization\"},\"isPartOf\":{\"@id\":\"https://holder.docs.fiskil.dev#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Fiskil\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Fiskil","nav":{"global":{"anchors":[{"anchor":"Website","icon":"globe","href":"https://www.fiskil.com"},{"anchor":"Support","icon":"headset","href":"https://www.fiskil.com/contact"}]},"tabs":[{"tab":"Docs","groups":[{"group":"Introduction","pages":[{"title":"Introduction to Data Provider","href":"/docs/introduction"}]},{"group":"GET STARTED","pages":[{"title":"Quickstart","href":"/docs/get-started/index"},{"title":"Instances","href":"/docs/get-started/instances"}]},{"group":"BUILD","pages":[{"title":"Resource Server","href":"/docs/build/index"},{"title":"Authentication \u0026 Authorization","href":"/docs/build/end-user-authentication"},{"title":"JWT Security","href":"/docs/build/jwt-security"},{"title":"Consents","href":"/docs/build/consents"}]},{"group":"CONFIGURE","pages":[{"title":"Custom Domains","href":"/docs/configure/custom-domains"},{"title":"Branding","href":"/docs/configure/branding"},{"title":"Resource Server Settings","href":"/docs/configure/resource-server-settings"},{"title":"External Identity Providers","href":"/docs/configure/external-idp"},{"title":"Onboarding Clients","href":"/docs/configure/onboarding-clients"}]},{"group":"PRODUCT PORTAL","pages":[{"title":"What is Product Portal","href":"/docs/product-portal/what-is-product-portal"},{"title":"Creating and managing products","href":"/docs/product-portal/creating-products"},{"title":"API Testing","href":"/docs/product-portal/api-testing"}]},{"group":"INTEGRATIONS","pages":[{"title":"Plaid","href":"/docs/integrations/plaid"},{"title":"AEMO","href":"/docs/integrations/aemo"},{"title":"Gentrack","href":"/docs/integrations/gentrack"},{"title":"Tally Group","href":"/docs/integrations/tally-group"}]},{"group":"TEST \u0026 VALIDATE","pages":[{"title":"Overview","href":"/docs/testing/index"},{"title":"Compliance Tools","href":"/docs/testing/compliance-tools"},{"title":"Testing in Postman","description":"Validate your integration end‑to‑end using our Postman collection, your mock users, and Request Logs.","href":"/docs/testing/postman"},{"title":"Regulatory Reporting","href":"/docs/testing/regulatory-reporting"}]},{"group":"TELEMETRY","pages":[{"title":"Logs","description":"View and export Data Provider request logs via the Console or forward to your SIEM/observability tools.","href":"/docs/telemetry/logs"},{"title":"Metrics","href":"/docs/telemetry/metrics"}]},{"group":"GO LIVE","pages":[{"title":"Go Live Checklist","href":"/docs/go-live/index"}]},{"group":"Security","pages":[{"title":"SSO Logins","href":"/docs/security/sso/index"}]}]},{"tab":"API Reference","dropdowns":[{"dropdown":"Custom Schema","icon":"book-open","groups":[{"group":"Define your API","pages":[{"title":"Bring Your Own Data","href":"/api-reference/bring-your-own-data"},{"title":"Custom Schema","href":"/api-reference/open-api-definition"}]},{"group":"Consent Flow","pages":[{"title":"Search Customers by email address","openapi":"openapi/auth.yml POST /auth/v1/customer/search","href":"/api-reference/byo/auth-customer-search"},{"title":"List accounts available for sharing","openapi":"openapi/auth.yml GET /auth/v1/customer/{customerId}/accounts","href":"/api-reference/byo/auth-customer-accounts"},{"title":"Fetch a Customer's identity details","openapi":"openapi/auth.yml GET /auth/v1/customer/{customerId}","href":"/api-reference/byo/auth-customer-details"}]}]},{"dropdown":"CDR","icon":"https://mintlify.s3.us-west-1.amazonaws.com/fiskil/icons/cdr.svg","groups":[{"group":"Intro","pages":[{"title":"Integration Requirements","href":"/api-reference/cdr/integration-requirements"},{"title":"Frequently Asked Questions","href":"/api-reference/cdr/cdr-faqs"},{"title":"Errors","href":"/api-reference/cdr/errors"},{"title":"Non-Functional Requirements","href":"/api-reference/cdr/cdr-nfrs"}]},{"group":"Consent Flow","pages":[{"title":"Search Customers by email address","openapi":"openapi/auth.yml POST /auth/v1/customer/search","href":"/api-reference/cdr/auth-customer-search"},{"title":"List accounts available for sharing","openapi":"openapi/auth.yml GET /auth/v1/customer/{customerId}/accounts","href":"/api-reference/cdr/auth-customer-accounts"},{"title":"Fetch a Customer's identity details","openapi":"openapi/auth.yml GET /auth/v1/customer/{customerId}","href":"/api-reference/cdr/auth-customer-details"},{"title":"Legacy CDR Consent Flow APIs","tag":"deprecated","href":"/api-reference/cdr/legacy-auth"}]},{"group":"Data Sharing","pages":[{"group":"Banking","pages":[{"title":"Get Accounts","deprecated":true,"version":null,"openapi":"/openapi/cdr.yaml get /v1/banking/customer/{customerId}/accounts","href":"/api-reference/banking/get-accounts"},{"title":"Fetch specific accounts","deprecated":null,"version":null,"openapi":"/openapi/cdr.yaml post /v1/banking/customer/{customerId}/accounts","href":"/api-reference/banking/fetch-specific-accounts"},{"title":"Get Account Detail","deprecated":null,"version":null,"openapi":"/openapi/cdr.yaml get /v1/banking/customer/{customerId}/accounts/{accountId}","href":"/api-reference/banking/get-account-detail"},{"title":"Get Balances For Specific Accounts","deprecated":null,"version":null,"openapi":"/openapi/cdr.yaml post /v1/banking/customer/{customerId}/accounts/balances","href":"/api-reference/banking/get-balances-for-specific-accounts"},{"title":"Get Account Balance","deprecated":null,"version":null,"openapi":"/openapi/cdr.yaml get /v1/banking/customer/{customerId}/accounts/{accountId}/balance","href":"/api-reference/banking/get-account-balance"},{"title":"Get Transactions For Account","deprecated":null,"version":null,"openapi":"/openapi/cdr.yaml get /v1/banking/customer/{customerId}/accounts/{accountId}/transactions","href":"/api-reference/banking/get-transactions-for-account"},{"title":"Get Transaction Detail","deprecated":null,"version":null,"openapi":"/openapi/cdr.yaml get /v1/banking/customer/{customerId}/accounts/{accountId}/transactions/{transactionId}","href":"/api-reference/banking/get-transaction-detail"},{"title":"Get Direct Debits For Account","deprecated":null,"version":null,"openapi":"/openapi/cdr.yaml get /v1/banking/customer/{customerId}/accounts/{accountId}/direct-debits","href":"/api-reference/banking/get-direct-debits-for-account"},{"title":"Get Direct Debits For Specific Accounts","deprecated":null,"version":null,"openapi":"/openapi/cdr.yaml post /v1/banking/customer/{customerId}/accounts/direct-debits","href":"/api-reference/banking/get-direct-debits-for-specific-accounts"},{"title":"Get Scheduled Payments for Account","deprecated":null,"version":null,"openapi":"/openapi/cdr.yaml get /v1/banking/customer/{customerId}/accounts/{accountId}/payments/scheduled","href":"/api-reference/banking/get-scheduled-payments-for-account"},{"title":"Get Scheduled Payments For Specific Accounts","deprecated":null,"version":null,"openapi":"/openapi/cdr.yaml post /v1/banking/customer/{customerId}/payments/scheduled","href":"/api-reference/banking/get-scheduled-payments-for-specific-accounts"},{"title":"Get Instalment Plans for Account","deprecated":null,"version":null,"openapi":"/openapi/cdr.yaml get /v1/banking/customer/{customerId}/accounts/{accountId}/payments/plans","href":"/api-reference/banking/get-instalment-plans-for-account"},{"title":"Get Instalment Plans For Specific Accounts","deprecated":null,"version":null,"openapi":"/openapi/cdr.yaml post /v1/banking/customer/{customerId}/accounts/payments/plans","href":"/api-reference/banking/get-instalment-plans-for-specific-accounts"},{"title":"Get Payees","deprecated":null,"version":null,"openapi":"/openapi/cdr.yaml get /v1/banking/customer/{customerId}/payees","href":"/api-reference/banking/get-payees"},{"title":"Get Payee Detail","deprecated":null,"version":null,"openapi":"/openapi/cdr.yaml get /v1/banking/customer/{customerId}/payees/{payeeId}","href":"/api-reference/banking/get-payee-detail"}]},{"group":"Energy","pages":[{"title":"Get Energy Accounts","deprecated":true,"version":null,"openapi":"/openapi/cdr.yaml get /v1/energy/customer/{customerId}/accounts","href":"/api-reference/energy/get-energy-accounts"},{"title":"Fetch specific Energy Accounts","deprecated":null,"version":null,"openapi":"/openapi/cdr.yaml post /v1/energy/customer/{customerId}/accounts","href":"/api-reference/energy/fetch-specific-energy-accounts"},{"title":"Get Energy Account Detail","deprecated":null,"version":null,"openapi":"/openapi/cdr.yaml get /v1/energy/customer/{customerId}/accounts/{accountId}","href":"/api-reference/energy/get-energy-account-detail"},{"title":"Get Agreed Payment Schedule","deprecated":null,"version":null,"openapi":"/openapi/cdr.yaml get /v1/energy/customer/{customerId}/accounts/{accountId}/payment-schedule","href":"/api-reference/energy/get-agreed-payment-schedule"},{"title":"Get Concessions","deprecated":null,"version":null,"openapi":"/openapi/cdr.yaml get /v1/energy/customer/{customerId}/accounts/{accountId}/concessions","href":"/api-reference/energy/get-concessions"},{"title":"Get Balance For Energy Account","deprecated":null,"version":null,"openapi":"/openapi/cdr.yaml get /v1/energy/customer/{customerId}/accounts/{accountId}/balance","href":"/api-reference/energy/get-balance-for-energy-account"},{"title":"Get Balances For Specific Energy Accounts","deprecated":null,"version":null,"openapi":"/openapi/cdr.yaml post /v1/energy/customer/{customerId}/accounts/balances","href":"/api-reference/energy/get-balances-for-specific-energy-accounts"},{"title":"Get Invoices For Account","deprecated":null,"version":null,"openapi":"/openapi/cdr.yaml get /v1/energy/customer/{customerId}/accounts/{accountId}/invoices","href":"/api-reference/energy/get-invoices-for-account"},{"title":"Get Invoices For Specific Accounts","deprecated":null,"version":null,"openapi":"/openapi/cdr.yaml post /v1/energy/customer/{customerId}/accounts/invoices","href":"/api-reference/energy/get-invoices-for-specific-accounts"},{"title":"Get Billing For Account","deprecated":null,"version":null,"openapi":"/openapi/cdr.yaml get /v1/energy/customer/{customerId}/accounts/{accountId}/billing","href":"/api-reference/energy/get-billing-for-account"},{"title":"Get Billing For Specific Accounts","deprecated":null,"version":null,"openapi":"/openapi/cdr.yaml post /v1/energy/customer/{customerId}/accounts/billing","href":"/api-reference/energy/get-billing-for-specific-accounts"}]},{"group":"Common","pages":[{"title":"Get Customer Detail","deprecated":null,"version":null,"openapi":"/openapi/cdr.yaml get /v1/common/customer/{customerId}/detail","href":"/api-reference/common/get-customer-detail"},{"title":"Servicepoint Search (AEMO)","deprecated":null,"version":null,"openapi":"/openapi/cdr.yaml post /v1/common/customer/{customerId}/servicepoints/search","href":"/api-reference/common/servicepoint-search-aemo"}]}]},{"group":"Testing CDR","pages":[{"title":"Testing CDR","sidebarTitle":"Overview","href":"/api-reference/cdr/testing/overview"},{"title":"Set up the UAT environment","href":"/api-reference/cdr/testing/uat-environment"},{"title":"Test personas","href":"/api-reference/cdr/testing/test-personas"},{"group":"Test scenarios","pages":[{"title":"Phase 1: Consent authorisation","href":"/api-reference/cdr/testing/consent-authorisation"},{"title":"Phase 2: Data validation","href":"/api-reference/cdr/testing/data-validation"},{"title":"Phase 3: Error validation","href":"/api-reference/cdr/testing/error-validation"},{"title":"Phase 4: Consent dashboard and revocation","href":"/api-reference/cdr/testing/consent-dashboard"}]},{"title":"Report defects and get support","href":"/api-reference/cdr/testing/reporting-defects"}]}]},{"dropdown":"FDX","icon":"https://mintlify.s3.us-west-1.amazonaws.com/fiskil/icons/fdx.svg","pages":[{"title":"Fiskil FDX API","tag":"v1.0.0","href":"/introduction-fdx"},{"group":"Consent Flow","pages":[{"title":"Search Customers by email address","openapi":"openapi/auth.yml POST /auth/v1/customer/search","href":"/api-reference/fdx/auth-customer-search"},{"title":"List accounts available for sharing","openapi":"openapi/auth.yml GET /auth/v1/customer/{customerId}/accounts","href":"/api-reference/fdx/auth-customer-accounts"},{"title":"Fetch a Customer's identity details","openapi":"openapi/auth.yml GET /auth/v1/customer/{customerId}","href":"/api-reference/fdx/auth-customer-details"}]},{"group":"Data Sharing","pages":[{"group":"Account Information","pages":[{"title":"Fetch specific accounts","deprecated":null,"version":null,"openapi":"/openapi/fdx.yml post /fdx/v6/customer/{customerId}/accounts","href":"/api-reference/account-information/fetch-specific-accounts"},{"title":"Get detailed information for a specific account","deprecated":null,"version":null,"openapi":"/openapi/fdx.yml get /fdx/v6/customer/{customerId}/accounts/{accountId}","href":"/api-reference/account-information/get-detailed-information-for-a-specific-account"}]},{"group":"Personal Information","pages":[{"title":"Get an account's contact information","deprecated":null,"version":null,"openapi":"/openapi/fdx.yml get /fdx/v6/customer/{customerId}/accounts/{accountId}/contact","href":"/api-reference/personal-information/get-an-accounts-contact-information"}]},{"group":"Payment Networks Information","pages":[{"title":"Get payment networks supported by the account","deprecated":null,"version":null,"openapi":"/openapi/fdx.yml get /fdx/v6/customer/{customerId}/accounts/{accountId}/payment-networks","href":"/api-reference/payment-networks-information/get-payment-networks-supported-by-the-account"}]},{"group":"Account Transactions","pages":[{"title":"Search for account transactions","deprecated":null,"version":null,"openapi":"/openapi/fdx.yml get /fdx/v6/customer/{customerId}/accounts/{accountId}/transactions","href":"/api-reference/account-transactions/search-for-account-transactions"}]},{"group":"Account Statements","pages":[{"title":"Search for statements","deprecated":null,"version":null,"openapi":"/openapi/fdx.yml get /fdx/v6/customer/{customerId}/accounts/{accountId}/statements","href":"/api-reference/account-statements/search-for-statements"},{"title":"Get account statement","deprecated":null,"version":null,"openapi":"/openapi/fdx.yml get /fdx/v6/customer/{customerId}/accounts/{accountId}/statements/{statementId}","href":"/api-reference/account-statements/get-account-statement"}]},{"group":"Asset Transfer Networks Information","pages":[{"title":"Get asset transfer details for this account","deprecated":null,"version":null,"openapi":"/openapi/fdx.yml get /fdx/v6/customer/{customerId}/accounts/{accountId}/asset-transfer-networks","href":"/api-reference/asset-transfer-networks-information/get-asset-transfer-details-for-this-account"}]}]}]}]},{"tab":"Platform API","pages":[{"title":"Platform API","href":"/platform-api/introduction"}]},{"tab":"Changelog","pages":[{"title":"Changelog","href":"/changelog"}]}]},"basePath":"","title":"Regulatory Reporting - Fiskil","buildId":"dpl_42LwxxU1kGN114H4XzwGYXa9ZDah","deploymentId":"dpl_42LwxxU1kGN114H4XzwGYXa9ZDah","dynamics":[],"chunks":[]}