Skip to content
B2B finance SaaSLicence required

Spend management and corporate card platform testing

FintechAssuranceLabs tests spend management and corporate card platforms, the category of products like Brex, Ramp, Pleo, and Spendesk. Test scope covers card controls at authorisation and clearing, approval workflows, receipt matching, accounting and ERP sync, and business onboarding. FintechAssuranceLabs engineers have tested corporate card programmes and hand over test evidence that an issuing bank or supervisor can review.

What breaks in corporate card money flows

A spend management platform earns interchange on each card transaction and a per-seat subscription for the controls, approvals, and accounting sync around the card. Each defect below hits one of those flows on every affected card.

  • Spend counter updated by authorisations only. The control service enforces monthly limits and merchant category blocks on authorisation requests, but hotel incremental authorisations and force-posted clearing records do not update the spend counter. Later authorisations approve against a stale balance, and the business's charge card balance grows past the credit line the issuing bank approved. Interchange on that spend does not cover a default. Card issuing and processing testing delivers the spend control and authorisation rule test matrix.
  • Company liability terms applied to a three-person business (US). Every business signs one company liability agreement, and the fraud workflow bills charges made after a lost card report to the business. Regulation Z 1026.12(a) and (b) apply to all credit cards, business cards included (official comment 3-1), and a charge card is a credit card (1026.2(a)(15)). Unauthorized use liability is capped at the lesser of $50 or the charges before notice (1026.12(b)(1)(ii)). Higher agreed liability is allowed only when one issuer issues 10 or more cards for an organisation's employees (1026.12(b)(5)), and comment 12(b)(5)-1 bars it when the business clearly cannot provide 10 cards. Each amount billed above the cap is refunded and appears in the fraud case log as a 1026.12(b) violation. See Regulation Z.
  • Commercial card category lost in a processor migration (EU). New virtual cards are issued from a BIN range registered as consumer credit. Regulation (EU) 2015/751 caps interchange at 0.2% for debit and 0.3% for credit card transactions (Articles 3(1) and 4) and excludes commercial card transactions from those caps (Article 1(3)(a)), checked on 2026-09-16. Interchange on those cards is then limited to the caps wherever both payment service providers are in the Union. Article 10(5) requires issuers to make the card category electronically identifiable, so the wrong category is also a regulatory defect.
  • Corporate exemption flag on every virtual card payment (EU). The platform marks all virtual card e-commerce payments with the secure corporate payment exemption, including cards an employee types into a public checkout. Article 17 of Delegated Regulation (EU) 2018/389 lets a provider skip SCA only for payments that legal persons initiate through dedicated processes or protocols available only to non-consumer payers, where the competent authority is satisfied that security is at least equivalent. EBA Q&A 2018_4060 (final, 7 June 2019, checked on 2026-09-16) requires that satisfaction before the provider uses the exemption. Under PSD2 Article 74(2), a payer whose provider did not require SCA bears no losses unless it acted fraudulently, so the issuer carries the fraud, unless the framework contract excluded Article 74 as Article 61(1) allows for non-consumer users. See PSD2 SCA.
  • Accounting sync that keeps the authorisation amount. The sync writes each transaction to the ERP at authorisation and never replaces it with the cleared amount, so tips, fuel pre-authorisations, and foreign currency spend post at the wrong value, and refunds post as new expenses. The card liability account in the general ledger stops matching the card statement, and the business pays per seat for a sync its finance team reverses by hand. ERP and accounting integration testing delivers the sync scenario suite and the duplicate and missing record report.

Licence flag and the evidence issuing banks and supervisors ask for

Spend management carries the licence flag: a licensed bank or e-money institution issues the cards, and the platform runs the programme for that issuer or holds its own licence. Sources in this section were checked on 2026-09-16.

United States

A platform without a bank charter runs its card programme with an issuing partner bank, which oversees it under the Interagency Guidance on Third-Party Relationships (88 FR 37920, 9 June 2023). On 15 September 2026, the OCC, Federal Reserve, FDIC, and NCUA published a proposal to rescind and replace that guidance; comments close on 16 November 2026, and the proposal is not final.

When the business is the account holder, the bank identifies and verifies each individual owning 25% or more and one control person (31 CFR 1010.230(d)). FinCEN order FIN-2026-R001 (13 February 2026) lets covered institutions do this at the first account opening instead of at every new account, with re-verification when facts call the information into question or risk-based procedures require it.

Regulation Z exempts business-purpose credit (1026.3(a)) except the issuance and liability rules above. Cards funded from a business deposit or prepaid account fall outside Regulation E, which covers only accounts held primarily for personal, family, or household purposes (12 CFR 1005.2(b)(1)). The public Visa Core Rules (18 April 2026, ID# 0029326) bar systematic or wholesale declines, with exceptions that include a Commercial Card issuer's choice to block gambling and non-fiat currency purchases. Evidence to prepare for the partner bank:

  • beneficial owner capture and verification test results per legal entity type;
  • issuance records showing a request behind every credit card (1026.12(a));
  • liability tests for businesses with fewer than 10 cards and with 10 or more;
  • platform-wide merchant blocks traced to the network rule exception each one uses;
  • reconciliation between the platform ledger, processor settlement, and the bank's programme accounts.

European Union

An EU platform issues cards as an e-money or payment institution, or runs the programme for a licensed issuer. Both institution types are in scope of DORA (Regulation (EU) 2022/2554, Article 2(1)(b) and (d)), which requires entities other than microenterprises to test ICT systems supporting critical or important functions at least yearly (Article 24(6)). The competent authority can request:

  • the RTS Article 3 audit report on SCA measures, which Article 3(1) requires to be periodically tested;
  • test evidence that the Article 17 exemption indicator appears only on the dedicated corporate process the authority assessed;
  • card category identification results per BIN range for Article 10(5) of Regulation (EU) 2015/751;
  • DORA test results for authorisation, spend control, and processor failover.

Spend management test scenarios

  • Card controls per message type. Merchant category blocks, limits, and country rules on authorisations, incremental authorisations, reversals, refunds, and force-posted clearing, with the spend counter checked after each.
  • Decline reasons. Each control returns its configured decline code, and a transaction the issuer has determined illegal returns code 93 on Visa (ID# 0029326).
  • Approval workflows. Routing by amount, department, and cost centre; an approver on leave, an approver who is also the requester, and a request edited after approval.
  • Card issuance and offboarding. An HR sync proposes a card that issues only after the administrator requests it; a departed employee's frozen card declines, the seat drops from the next invoice, and recurring vendor charges move to a named owner.
  • Receipt matching. Matches on amount, date, and merchant name with tips, split payments, foreign currency receipts, and one receipt for two transactions.
  • Accounting sync. Authorisation, cleared amount update, refund as a credit, and FX difference posted to the ERP; a retried webhook creates no duplicate journal entry.
  • Lost card liability. Charges before and after the report, billed per card count, with nothing billed to an employee beyond Regulation Z limits.
  • Interchange posting. Processor settlement interchange matches the ledger per transaction, refunds reverse it, and any share passed to the business uses settled amounts.

Integrations and protocols to cover

  • Issuer processor messages. ISO 8583 authorisation, incremental, advice, and reversal messages, and real-time authorisation webhooks with stand-in behaviour when the platform endpoint times out.
  • Clearing files. Network clearing records from the processor, reconciled against authorisations.
  • Virtual card display and tokens. Card number and security code display in the app, and push provisioning to mobile wallets. Card numbers shown in the app are cardholder data in PCI DSS scope; see how we handle cardholder data and PCI DSS.
  • 3-D Secure access control server. Challenge flows and out-of-band approval inside the app.
  • Accounting and ERP APIs. Journal entry, bill, and vendor endpoints, chart of accounts and tax code mapping, and OAuth token refresh.
  • HR and identity systems. HR employee feeds and SCIM provisioning that create, change, and remove cardholders and approvers.
  • Business onboarding. KYB vendor APIs for registry lookups, beneficial owner capture, and sanctions screening.
  • Repayment rails. Nacha CCD debits from the business account with return codes in the US, and SEPA Direct Debit business-to-business collections as ISO 20022 pain.008 in the EU.

Sample deliverable

Sample, synthetic data

test evidence packTest evidence pack: card payments and account access release
Test evidence pack: card payments and account access release
Control or requirementTest case IDsRun dateResultEvidence fileReviewer role
PCI DSS v4.0.1 3.3.1: the card verification code is not stored after authorisationTC-PCI-031, TC-PCI-032, TC-PCI-033, TC-PCI-0342026-09-08Passed: 4 of 4 test cases, no card verification code found in databases, logs, or queuesEP-01_pci-3.3.1_data-store-search.csvSecurity test lead
PCI DSS v4.0.1 3.4.1: a displayed PAN shows at most the BIN and the last four digitsTC-PCI-040, TC-PCI-041, TC-PCI-0422026-09-10Passed on retest: 3 of 3 test cases after the fix for defect DEF-118 (full PAN on the support detail view)EP-02_pci-3.4.1_masking-per-role_retest.pdfQA lead
PCI DSS v4.0.1 6.2.4: the refund API rejects a refund on a payment that another account ownsTC-SEC-210, TC-SEC-2112026-09-09Passed: 2 of 2 test cases, each cross-account refund request returned HTTP 404EP-03_pci-6.2.4_refund-object-authorisation.pdfSecurity test lead
SOC 2 CC6.2: sessions and API tokens of a deactivated user are rejectedTC-ACC-015, TC-ACC-016, TC-ACC-0172026-09-09Passed: 3 of 3 test cases, each request after deactivation returned HTTP 401EP-04_soc2-cc6.2_deprovisioning-log.csvQA lead
SOC 2 CC8.1: every change in the release ran the regression suite before productionRUN-REG-0907, RUN-REG-09102026-09-10Passed: 27 of 27 change tickets link to a green CI runEP-05_soc2-cc8.1_ci-runs-per-change.csvTest automation lead
PSD2 RTS Article 4(3)(b): access is blocked after five consecutive failed authentication attemptsTC-SCA-007, TC-SCA-008, TC-SCA-009, TC-SCA-0102026-09-10Failed: 3 of 4 test cases passed; the app resets the attempt counter on a new session (defect DEF-131, release blocker)EP-06_rts-art4-3b_lockout-per-channel.pdfQA lead
PSD2 RTS Article 5(1): the payment executes only with the amount and payee shown at authenticationTC-SCA-020, TC-SCA-021, TC-SCA-0222026-09-08Passed: 3 of 3 test cases, a changed payee after authentication invalidated the authentication codeEP-07_rts-art5-1_dynamic-linking.csvPayments QA engineer
PSD2 RTS Article 10a: account information access through a third-party provider requires SCA again after 180 daysTC-AIS-004, TC-AIS-005, TC-AIS-0062026-09-09Passed: 3 of 3 test cases, access allowed on day 179 and refused on day 181 without a new SCAEP-08_rts-art10a_access-decisions.csvPayments QA engineer

Test case IDs, defect IDs, run dates, and evidence file names belong to a fictional release; PAN checks used scheme test card numbers, and no real account, customer, or person appears.

Questions

What is spend management software?

Spend management software lets a business issue corporate cards to employees, set limits and merchant rules per card, route purchase approvals, collect receipts, and sync each card transaction to the accounting system. Many spend management providers earn card interchange through an issuing bank programme and charge the business a subscription per user.

How do corporate credit cards work?

A corporate credit card is issued to an employee on a card programme opened by a business. The issuer sets a credit limit for the business, and the business sets spending limits and merchant rules per card. The business repays a company liability card, and the employee repays an individual liability card, often with reimbursement from the business.

What is credit card reconciliation?

Credit card reconciliation is the check that every transaction on a card statement matches a ledger entry at the same amount, with a receipt and an expense category. Credit card reconciliation finds duplicate entries, missing receipts, refunds booked as expenses, and differences between authorised and cleared amounts before the month-end close.

Scope your spend management testing

Send your issuing model, card processor, and connected accounting systems, and we return a test scope with the evidence each regulated card flow needs.

Scope your testing