Skip to content
Consumer fintechLicence required

Robo-advisor and wealthtech testing

FintechAssuranceLabs tests robo-advisors and digital wealth platforms, products like Betterment, Wealthfront, and Acorns, that charge a percentage of assets under management or a subscription. The test scope covers advisory fee billing, drift-based rebalancing, tax-loss harvesting and wash sale checks, tax-lot relief, recurring and round-up deposits, and the evidence securities regulators request.

What breaks in robo-advisors and what it costs

A robo-advisor earns its advisory fee or subscription on every managed account, every day, so a defect in valuation, trading, or tax logic repeats across the book until a billing run, a tax form, or an examiner finds it.

  • Advisory fee billed on the wrong asset base. The billing job reads the custodial feed, which counts a pending deposit in the balance before the deposit settles, and it bills two linked household accounts separately. On a synthetic schedule of 0.40% up to 100,000.00 and 0.25% above, household accounts of 80,000.00 and 60,000.00 each billed at 0.40% pay 560.00 per year instead of 500.00. The SEC Division of Examinations lists incorrect householding, misapplied breakpoints, pending deposits in custodial feeds, and unrefunded prepaid fees on terminated accounts among observed fee deficiencies, which often led advisers to return money to clients (SEC risk alert, 10 November 2021). Our financial calculation testing recalculates each fee from an independent reference model.
  • Harvested loss undone by a recurring deposit. The tax-loss harvesting engine sells a fund at a loss and switches to a replacement fund, but the weekly recurring deposit or a dividend reinvestment buys the original fund 12 days later. IRC section 1091(a) disallows the loss when substantially identical securities are acquired within 30 days before or after the sale. For covered securities with the same CUSIP in the same account, 26 CFR 1.6045-1(d)(6)(iii)(A) requires the broker to report the disallowed loss on Form 1099-B and add it to the basis of the new shares. When the repurchase happens in the client's IRA, Rev. Rul. 2008-5 holds that the loss is disallowed and the IRA basis is not increased, so the tax benefit is lost for good.
  • Lot relief method differs between engine and custodian. The engine computes the harvested loss on the highest-cost lots, but the sell order reaches the clearing broker without a lot instruction. Under 26 CFR 1.1012-1(c)(1), stock sold without adequate identification is charged against the earliest lot, and 1.1012-1(c)(8) accepts a standing order as that identification. The 1099-B then reports a different basis and holding period than the in-app tax report, and the client files on the 1099-B.
  • Drift check that counts unsettled cash. The rebalancer treats an unsettled deposit as a cash overweight, sells equities to restore the 60/40 target, and buys them back after settlement. Each cycle realises short-term gains in taxable accounts. SEC staff guidance says a robo-adviser should consider disclosing that its algorithm might rebalance more often than a client expects, and should consider policies for testing algorithmic code before and after release (IM Guidance Update 2017-02).
  • Depreciation alert measured from the wrong baseline. An EU portfolio management app compares today's value with yesterday's value, or resets the baseline after each deposit, so a gradual 12% fall never triggers a notice. Article 62(1) of Delegated Regulation (EU) 2017/565 requires the firm to inform the client when the portfolio value at the start of the reporting period depreciates by 10%, and at each further 10%, by the end of that business day.

Licence flag and the evidence regulators ask for

Robo-advisors carry the licence flag: discretionary portfolio management needs investment adviser registration or investment firm authorisation, and trades run through a registered broker-dealer or custodian. Regulatory sources in this section were checked on 2026-09-16.

United States

Advisers register with the SEC under section 203 of the Investment Advisers Act of 1940, or with their state where section 203A applies, and client trades usually clear through a FINRA member broker-dealer. Rule 206(4)-7 requires written compliance policies reviewed at least annually, and Rule 204-2 requires true, accurate, and current books and records. FinCEN's anti-money laundering programme rule for registered investment advisers now takes effect on 1 January 2028, after a final rule dated 31 December 2025 postponed it (FinCEN). Evidence we produce for an SEC examination:

  • fee recalculation results per account against the advisory agreement and Form ADV Part 2A fee description
  • prorated fee and refund checks for accounts opened, funded, or closed mid-cycle
  • wash sale and lot relief test results reconciled to Form 1099-B output
  • algorithm release test records: rebalancing and harvesting cases run before and after each model change

European Union

Portfolio management and investment advice need investment firm authorisation under MiFID II Article 5, and investment firms are in scope of DORA and the EU anti-money laundering rules. Paragraph 90 of ESMA's suitability guidelines (ESMA35-43-3172) states that firms using automated tools should regularly monitor and test their algorithms and should have a documented test strategy with test plans, test cases, test results, and defect resolution. Evidence we produce for a national competent authority:

  • the algorithm test strategy, test cases, and results in the structure paragraph 90 describes
  • depreciation notice tests at 10% and 20% thresholds, including thresholds crossed on non-business days
  • suitability mapping checks from questionnaire answers to model portfolios

Canada

Discretionary online advice requires registration as a portfolio manager, an adviser category in section 7.2 of National Instrument 31-103. CSA Staff Notice 31-342 (24 September 2015) says there is no online advice exemption, describes rebalancing to the target mix at appropriate intervals, and says the system should prompt clients to update their information at least annually. FINTRAC defines a securities dealer to include firms authorised to provide portfolio management, so the FINTRAC obligations for client identification and reporting apply (FINTRAC). Evidence we produce: questionnaire-to-portfolio mapping tests, KYC update prompt and review workflow results, and rebalancing records per account.

Robo-advisor portfolio rebalancing and tax-loss harvesting test cases

We run these scenarios with the corporate action and rebalancing suite from trading and investment platform testing:

  1. Bill advisory fees on accounts opened, funded, partly withdrawn, and closed mid-quarter, including prepaid fees refunded after a transfer out through the custodian.
  2. Apply tiered breakpoints across linked household accounts, a spouse unlinking during the cycle, and a fee schedule change on the first day of a quarter.
  3. Push holdings past absolute and relative drift bands with settled cash, unsettled deposits, pending dividends, and a halted fund.
  4. Harvest a loss, then buy the original fund within 30 days through a recurring deposit, a dividend reinvestment, a round-up, and a purchase in the same client's IRA.
  5. Sell with a standing lot instruction and without one, and compare basis, holding period, and gain type with the custodian's 1099-B file.
  6. Run recurring IRA contributions past the 2026 limit of 7,500 USD, plus the 1,100 USD catch-up for clients aged 50 and over (IRS IR-2025-111), and verify that the next debit stops, because IRC section 4973 imposes a 6% excise tax on excess contributions.
  7. Return a funding debit as R01 after the shares were bought, and check the sale, the loss posting, and the account restriction, using the Nacha return code testing guide.
  8. Change a client's risk answers, and verify that the new model portfolio, the rebalancing trades, and the suitability record update together.

Integrations and protocols to cover

  • Custodian and clearing APIs: order placement for whole and fractional shares, allocation of block trades to client accounts, and end-of-day position, cash, and activity files reconciled with the platform ledger.
  • Cost basis and tax reporting files: lot-level basis data, standing lot instructions, and Form 1099-B and 1099-DIV output from the clearing broker.
  • Account transfers: ACATS transfer requests in and out, with cost basis carried over and prepaid fees handled on exit.
  • Funding rails: Nacha ACH debits for one-off and recurring deposits, card-linked round-up aggregation, and SEPA Direct Debit as ISO 20022 pain.008 in the EU.
  • Bank account linking: open banking and aggregator APIs for funding sources and held-away balances, tested through open banking API testing.
  • Market and fund data: end-of-day prices, fund reference data, and dividend and split notices that feed valuation, drift, and billing.
  • KYC vendor APIs and suitability questionnaires at onboarding and at each periodic information update.

Sample deliverable

Sample, synthetic data

position and ledger reconciliationPosition and ledger reconciliation run: custodian, chain, payroll, and revenue feeds
Position and ledger reconciliation run: custodian, chain, payroll, and revenue feeds
IDSource pair and instrument or assetInternal quantity or amountExternal quantity or amountDifference (internal minus external)Break classification and cause
POS-01Internal position ledger vs custodian settled position file: Equity A shares1,200 shares1,000 shares+200 sharesTiming break, expected: a 200-share buy executed on trade date settles on T+1 and is absent from the settled position file until the next file
POS-02Internal position ledger vs clearing position file: Equity B shares500 shares1,000 shares-500 sharesCorporate action break, open: the clearing file applies a 2-for-1 split on the effective date and the internal ledger has no split entry
POS-03Portfolio ledger vs custodian holdings file: Fund A units1,250.457362 units1,250.457 units+0.000362 unitsRounding break inside the 0.001-unit tolerance: the portfolio ledger stores units to 6 decimal places and the custodian file to 3
POS-04Hot wallet ledger vs blockchain node balance: Testnet coin A on a public testnet2.500000 coin A2.000000 coin A+0.500000 coin ATrue break, defect: deposit DEP-7713 was credited after 1 confirmation against a configured threshold of 12, and a chain reorganisation removed the transaction from the canonical chain
POS-05Hot wallet ledger vs blockchain node balance: Testnet coin A on a public testnet50.000000 coin A49.999580 coin A+0.000420 coin ATrue break, defect: the network fee for withdrawal WD-2291 was paid from the hot wallet and has no ledger entry
POS-06Tracker holdings from imported exchange history vs self-custody wallet node balance: Testnet coin B1.0000 coin B0.9995 coin B+0.0005 coin BTrue break, defect: the import records the exchange withdrawal at the gross amount and drops the 0.0005 coin B withdrawal fee, so the lot quantity is overstated by 0.0005 coin B and later disposals consume units the wallet does not hold
POS-07EWA advance ledger vs employer payroll deduction file: employee EMP-0042, pay period PP-18350.00 XTS300.00 XTS+50.00 XTSTiming break, expected: advance ADV-5520 was requested after the payroll cut-off and the employer file deducts it in pay period PP-19
POS-08Revenue-share remittance ledger vs expected remittance recalculated from processor revenue feed: agreement RBF-0310, month M-061,200.00 XTS1,160.00 XTS+40.00 XTSCalculation break, defect: the remittance applies the 8% share to 15,000.00 XTS gross revenue, while the agreement defines the share on 14,500.00 XTS revenue net of refunds

Amounts use XTS, the ISO 4217 code reserved for testing; Equity A, Equity B, Fund A, and testnet coins A and B are generic test instruments with no market value, and all employee, agreement, deposit, and withdrawal IDs are invented.

Questions

What is a robo advisor?

A robo-advisor is an investment adviser that uses algorithms to build and manage client portfolios online, usually from answers to a risk and goals questionnaire. The SEC staff describes robo-advisers as typically registered investment advisers that provide discretionary asset management through online algorithmic programs, and they owe clients the same fiduciary duty as any registered adviser.

How do robo advisors work?

A robo-advisor collects the client's goals, time horizon, and risk tolerance through an online questionnaire and maps the answers to a model portfolio, often built from exchange-traded funds. A robo-advisor then invests deposits, rebalances the portfolio when holdings drift from the target allocation, and may sell positions at a loss for tax-loss harvesting in taxable accounts.

What is tax loss harvesting?

Tax-loss harvesting is selling an investment below its cost basis to realise a capital loss that offsets capital gains, then buying a similar but not substantially identical investment. Under US Internal Revenue Code section 1091, the loss is disallowed if substantially identical securities are bought within 30 days before or after the sale, including purchases in the investor's IRA.

How much does a robo advisor cost?

A robo-advisor usually charges an annual advisory fee as a percentage of assets under management, or a flat monthly subscription. At an annual rate of 0.25%, a 20,000.00 balance pays 50.00 per year in advisory fees. Clients also pay the expense ratios of the funds in the portfolio and can bear custodian, brokerage, or other transaction costs.

Scope testing for your wealth platform

Send your fee schedule, rebalancing rules, account types, and custodian setup, and we return a test scope covering fee, rebalancing, and tax-lot flows with the evidence each regulator reads.

Scope your testing