Revenue-based financing and factoring platform testing
FintechAssuranceLabs engineers test revenue-based financing and factoring platforms, the category of products like Pipe, Clearco, and Capchase. Test scope covers revenue verification, advance and fee calculation, estimated APR disclosures, revenue share remittances, true-ups, and remittance reconciliation. FintechAssuranceLabs engineers hand over test evidence that a state regulator, funding partner, or partner bank can review.
What breaks in revenue share and factoring money flows
A revenue-based financing provider buys future revenue at a discount and collects it through remittances set by the split rate (the contracted percentage of revenue); a factor earns the discount on each invoice it buys. The fee is fixed, so collection speed sets the real cost. Consumer loans are on the consumer lending page.
- Estimated APR understated by a missing sales channel (California, New York). The contract redirects all card sales to one processor, but the projection ignores a second processor's history, so the estimated term runs long and the APR low. The historical average includes revenue through any channel the contract would have redirected (10 CCR 930(b)(1)(B); 23 NYCRR 600.8(b)(1)(ii)). California's safe harbor for a gap between actual and estimated APR covers only an estimate disclosed in conformity with a regulation, order, or written interpretive opinion (Financial Code 22805). From 1 January 2026, a disclosure violation on a transaction not subject to the California Financing Law is an unfair, deceptive, or abusive act under the California Consumer Financial Protection Law (22807(b)).
- Split rate applied to gross sales. The contract applies the split rate to sales net of refunds, but the processor connector sends gross charges, so each daily debit also collects on refunded sales. The business repays faster than disclosed and is owed the over-collection. Texas rules list charging amounts not specifically disclosed and contracted for, and debiting amounts without authorization, as unfair, deceptive, or abusive acts (7 TAC 86.312(b)(3) and (10)), with an administrative penalty of up to $10,000 per violation (86.321(c)).
- Recurring debit switched on before the lien check (Texas). Daily ACH debits start at signature while a UCC search finds another funder's earlier filing. A provider or broker may not set up automatic debits from a recipient's deposit account without a validly perfected, first-priority security interest in all of the recipient's accounts receivable (Finance Code 398.056; 7 TAC 86.313(a) and (c)). Accepting payment of such a debit is prohibited (86.313(e)).
- Fast repayment crosses the Canadian rate limit. A business loan to a corporation advances CAD 50,000, deducts a CAD 1,500 fee, and sets repayment at CAD 53,000. Pricing tests 12 monthly remittances: 16.7% APR nominal. A revenue spike repays it in three equal monthly remittances: 54.9% nominal (71.0% effective) on the CAD 48,500 credit advanced. Above 48%, the business exemption in section 1(c)(i) of the Criminal Interest Rate Regulations stops applying, the rate exceeds the 35% criminal rate, and receiving a payment of interest at that rate is an offence (Criminal Code 347(1)).
Licence flag and the evidence regulators and funding partners ask for
Revenue-based financing carries a licence flag: US states register providers and prescribe offer disclosures, Canada limits the rate on business credit, and EU member states license lending and factoring. Sources were checked on 2026-09-16.
United States
California requires a disclosure with an annualized rate, signed before consummation, for each specific offer of commercial financing of $500,000 or less (Financial Code 22800(n) and 22802) to a business principally directed or managed from California (10 CCR 954); depository institutions are exempt (22801(a)). Since 1 January 2026, a provider that states a charge, pricing metric, or financing amount for a specific offer during the application process, after extending that offer, also states the APR (22806(b)). Providers of commercial financing to small businesses, nonprofits, or family farms principally directed or managed from California file an annual report by March 15 with APR statistics by financing type, unless the low-volume exemption applies (10 CCR 1062).
New York's Commercial Finance Disclosure Law and 23 NYCRR 600 cover offers of $2,500,000 or less to businesses principally directed or managed from New York (600.19, 600.24). Providers using the opt-in method report estimated and retrospective APRs to the Department of Financial Services by April 30 annually (600.22).
Texas requires commercial sales-based financing providers and brokers to register with the Office of Consumer Credit Commissioner through NMLS by 31 December 2026 (Finance Code chapter 398), and its rules took effect on 9 July 2026. Virginia sales-based financing providers and brokers register with the State Corporation Commission, and exemptions include a single transaction over $500,000 (Code 6.2-2229 and 6.2-2230).
Under Regulation B, a creditor acting on an application for credit incident to a factoring agreement notifies the applicant of the action within a reasonable time and gives written reasons for adverse action on a written request made within 60 days of that notice (12 CFR 1002.9(a)(3)(ii)). Evidence requested:
- disclosure snapshots per offer with the revenue window, sales channels, and estimate method;
- every dated version of the document fixing the historical window (10 CCR 930(b)(6));
- APR recalculations per offer against the 23 NYCRR 600.4 tolerances;
- lien priority results and debit authorizations per Texas recipient.
Canada
The Criminal Code counts charges for advancing credit as interest, with listed exclusions, deducts fees from the credit advanced, and sets the criminal rate at an annual percentage rate above 35% on the credit advanced (347(2), current to 2026-07-21). The offence is indictable or summary (347(1)). Since 1 January 2025, section 347 does not apply to a business-purpose borrowing by a borrower that is not a natural person where the credit advanced is over $10,000 and at most $500,000 at no more than 48% APR, or is over $500,000 (Criminal Interest Rate Regulations, section 1). Evidence requested:
- APR per agreement on the actual remittance schedule;
- borrower type, business purpose record, and credit advanced band per agreement.
European Union
In Germany, granting money loans is banking business and continuous purchase of receivables under framework agreements is factoring (KWG section 1(1) sentence 2 no. 2 and 1(1a) sentence 2 no. 9); either needs authorisation when done commercially or at a commercially organised scale (section 32(1)). A provider that pulls a business's payment account data from its banks without a registered intermediary can be providing an account information service (PSD2 Annex I, point 8), which needs registration (Articles 14 and 33), professional indemnity insurance (Article 5(3)), and data use limited to the explicitly requested service (Article 67(2)(f)). Evidence requested:
- a licence and registration map per member state and product;
- consent records per bank connection with scope and last strong customer authentication date.
Revenue-based financing test scenarios
- Revenue verification. Processor payouts, accounting income, and bank deposits for one month.
- Historical window. Windows of 3, 4, 12, and 18 months, with additional months included all or none (10 CCR 930(b)(5)).
- Estimated APR. Recalculated under Appendix J to 12 CFR Part 1026 with split rate changes, minimum payments, and anticipated true-ups (10 CCR 942), in the independent reference model from financial calculation testing.
- Underwriting method audit. APR spreads and weighted averages over three, five, and seven audits, with the 24-month return to the historical method above 15, 10, or 5 percent unless that method would have yielded a higher average (10 CCR 931(a)(5)).
- APR on every pricing surface. Offer screens, emails, broker portals, and API responses that quote a fee or factor rate.
- Remittance calculation. Split rate on the contracted revenue base, rounding per debit, minimum payments, true-up credits, and the final remittance capped at the balance.
- Remittance reconciliation. Each debit, settlement split, and invoice payment matched to its period, with returned debits reopening the balance, as in the ledger reconciliation guide.
- Factoring decisions and payoffs. Decline notices, reserve release, and payoff quotes, covered by the repayment scenarios from lending and credit decisioning testing.
- Bank feed lapse. Remittances while a connection awaits strong customer authentication renewal after 180 days (Delegated Regulation (EU) 2022/2360, Article 10a(2)(b)).
Integrations and protocols to cover
- Payment processor APIs. Charges, refunds, disputes, and payouts. Exports with full card numbers put the revenue pipeline in PCI DSS scope; see how we handle cardholder data.
- Accounting and billing APIs. Invoices, receivables aging, and recurring revenue contracts.
- Bank data connections. US aggregator APIs and PSD2 account information APIs; open banking API testing delivers the consent and reauthorisation flow test suite; see the token refresh guide.
- Collection rails. Nacha CCD debits with return codes, SEPA B2B direct debits as ISO 20022 pain.008, and business pre-authorized debits under Payments Canada Rule H1.
- Lien, disclosure, and partner files. UCC search APIs, state disclosure templates, and funding partner collection files reconciled to the ledger.
Related
Standards
Services
Guides
- How to test ledger reconciliation against settlement files and bank statements
- How to test 90-day reauthentication, consent expiry, and token refresh in open banking
- How to test Nacha return codes: ACH return entries, time frames, and ledger effects
- How to test payment idempotency
- How to test banker's rounding in payment and ledger code
- How to test Same Day ACH cutoff times and settlement timing across time zones
- How to reconcile camt.053 statements: format, batch entries, reversals, and MT940 mapping
Sample deliverable
Sample, synthetic data
| ID | Source pair and instrument or asset | Internal quantity or amount | External quantity or amount | Difference (internal minus external) | Break classification and cause |
|---|---|---|---|---|---|
| POS-01 | Internal position ledger vs custodian settled position file: Equity A shares | 1,200 shares | 1,000 shares | +200 shares | Timing 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-02 | Internal position ledger vs clearing position file: Equity B shares | 500 shares | 1,000 shares | -500 shares | Corporate 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-03 | Portfolio ledger vs custodian holdings file: Fund A units | 1,250.457362 units | 1,250.457 units | +0.000362 units | Rounding break inside the 0.001-unit tolerance: the portfolio ledger stores units to 6 decimal places and the custodian file to 3 |
| POS-04 | Hot wallet ledger vs blockchain node balance: Testnet coin A on a public testnet | 2.500000 coin A | 2.000000 coin A | +0.500000 coin A | True 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-05 | Hot wallet ledger vs blockchain node balance: Testnet coin A on a public testnet | 50.000000 coin A | 49.999580 coin A | +0.000420 coin A | True break, defect: the network fee for withdrawal WD-2291 was paid from the hot wallet and has no ledger entry |
| POS-06 | Tracker holdings from imported exchange history vs self-custody wallet node balance: Testnet coin B | 1.0000 coin B | 0.9995 coin B | +0.0005 coin B | True 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-07 | EWA advance ledger vs employer payroll deduction file: employee EMP-0042, pay period PP-18 | 350.00 XTS | 300.00 XTS | +50.00 XTS | Timing break, expected: advance ADV-5520 was requested after the payroll cut-off and the employer file deducts it in pay period PP-19 |
| POS-08 | Revenue-share remittance ledger vs expected remittance recalculated from processor revenue feed: agreement RBF-0310, month M-06 | 1,200.00 XTS | 1,160.00 XTS | +40.00 XTS | Calculation 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
How does revenue based financing work?
What is invoice factoring?
Recourse vs non recourse factoring
Scope your revenue-based financing testing
Send your products, states and countries, revenue data sources, and collection rails, and we return a test scope covering APR disclosures, remittances, and reconciliation with the evidence each regulator asks for.
Scope your testing