How I would investigate money-movement tickets across fiat and stablecoin rails, and a working investigator built from the public docs.
Payments launched as a PSP in February and Beam brought stablecoins in-house. Support now covers the whole flow of funds: onboarding, rails, settlement and reconciliation.
Late ACH returns, settlement timing across cutoffs and holidays, stablecoin unit and network confusion, webhook ordering, and reconciliation exceptions.
An investigator that checks tickets against the documented lifecycle and enums, reads settlement from chain, shows live rail windows, reconciles BAI2 and verifies webhook signatures.
| Takeaway | Why it matters for support |
|---|---|
| "Completed" is an intermediate truth | ACH can return up to 60 days later, and completed does not imply reconciled. Replies need to say which state is final. |
| Units cause the scariest stablecoin tickets | Amounts use a 6-decimal smallest unit. 100000 is 0.10 USDC. One digit decides whether a customer panics. |
| Event order is documented as unordered | Return and payment order webhooks arrive in any order. Customers who drive state from events file bugs that are expected behaviour. |
| Route decisions, own the investigation | Risk, compliance and commercial questions go to owners; the evidence packet that goes with them is support's job. |
A payment-operations platform that became a payments provider. Each product line adds a class of ticket.
| Area | What is public | Support read |
|---|---|---|
| Payments (Feb 2026) | Integrated PSP: ACH, wire, RTP and FedNow, push-to-card, stablecoins, built-in KYC and KYB. Partners include Paxos, the Circle Alliance Program and Global Dollar Network. | Onboarding holds and rail behaviour now reach support directly. |
| Stablecoins and Beam | Beam acquired October 2025 (all stock, reported about $40M). Docs support USDP, USDG, USDC, PYUSD and USDT across Ethereum, Solana, Base, Arbitrum One, Tron (coming soon), Polygon PoS and Stellar. | Onchain settlement, address screening and unit questions join the fiat queue. |
| Ledgers and Reconciliation | Double-entry Ledgers, expected payments, reconciliation rules (one to one, one to many, many to one), BAI2 import (early access). | Exceptions and "why is this unreconciled" are daily work. |
| Platform | REST API with Basic auth, idempotency keys (24-hour replay), cursor pagination, HMAC-signed webhooks with at-least-once delivery, cell-based infrastructure on the status page. | Integration tickets need evidence: request IDs, keys, headers, cell. |
| Support terms | Public SLA: Monday to Friday 6am to 6pm PT; P0 under 2 business hours, P1 under 4, P2 under 8, P3 under 2 business days; 99.9% uptime. The JD adds a 24/7 rota for premium customers. | Severity discipline directly drives SLA attainment. |
| Company | Founded 2018. Matt Marcus became CEO in July 2025. Bank partners named publicly include JPMorgan Chase, Bank of America, Cross River, PNC, U.S. Bank and Wells Fargo. | Multi-bank means cutoffs and file formats differ per account. |
Inferred from the JD, the docs and the status history. Owner is where the decision sits once support has the evidence.
| Category | Typical ask | First check | Decision owner |
|---|---|---|---|
| Returns and rejections | "Why did this debit come back?" | Return code category (unauthorized or administrative), return window, threshold exposure, proof of authorization. | Support; Risk for unauthorized patterns |
| Settlement timing | "Same day, but not settled" | Priority, effective date against the Fed calendar, processing window caught, Same Day ACH $1M cap. | Support |
| Instant payment limits | "RTP keeps failing" | Future-dated effective date (invalid), $10M network cap, receiving bank limit. | Support; commercial for limit changes |
| Stablecoins | "Recipient got almost nothing" | Smallest-unit amount, currency and network support, address family, onchain finality. | Support; Compliance for screening holds |
| Reconciliation | "Wire arrived but unreconciled" | Expected payment bounds, date window, type and direction, bank report arrival. | Support; Bank operations for missing reports |
| Onboarding | "Legal entity stuck pending" | Required fields, document requests, status history. | Compliance |
| API and webhooks | "Invalid signature", "409", "missing records" | Raw-body HMAC, idempotency scope, pagination until no X-After-Cursor. | Support; Engineering for 5xx |
| Incidents | "Is something down?" | Status page, affected cell, time window, customer impact. | Incident commander |
Buyers compare rails and price; they stay for how fast problems get explained. The support angle is where each model puts the operational burden.
| Company | Model | Gap vs Modern Treasury | Support angle |
|---|---|---|---|
| Modern Treasury | Multi-bank payment operations, Ledgers, Reconciliation, now a PSP with stablecoins. | Benchmark. | Many banks and rails means many cutoffs, formats and failure notices to explain. |
| Stripe Treasury + Bridge | Embedded finance inside Stripe; Bridge (acquired 2024) for stablecoins. | Tied to the Stripe ecosystem. | Strongest stablecoin rival; wins on distribution. |
| Increase | API-first bank with its own Fed connectivity. | One bank; no bring-your-own-bank. | Fewer counterparties to chase, less flexibility for customers. |
| Column | Nationally chartered developer bank. | You bank with Column; thinner ledgering. | Direct bank answers; reconciliation left to the customer. |
| Moov | Full-stack money movement platform. | Lighter on large-bank and enterprise reconciliation (my assessment). | Closest like-for-like comparison in deals. |
| Orum, Dwolla | Instant payment and ACH APIs. | Mostly rails; little ledgering or reconciliation. | Customers outgrow them when reconciliation hurts. |
| Treasury Prime, Unit | BaaS middleware across partner banks. | Middleware model under scrutiny after Synapse. | Reconciled ledgers are the trust argument MT makes. |
| Formance | Open-source ledger. | Self-hosted; the customer runs operations. | No vendor support queue at all. |
Encoding the docs into rules forces precise reading. Three places where a customer following the docs could reach the wrong conclusion. Each takes a small doc change.
| Finding | Evidence | Ticket it prevents |
|---|---|---|
| Stablecoin networks: docs vs API enum | The stablecoin docs list PYUSD on Arbitrum One and Stellar. The public OpenAPI spec's payment order subtype enum accepts base, ethereum, polygon, solana only. | "Your docs say PYUSD on Arbitrum is supported but the API rejects it." |
| Payout example amount | The stablecoin payout guide says 10000000 = 10.00 USDC, next to an example payment order with amount: 100000, which is 0.10 USDC. | A copied example that sends 0.10 USDC to production. |
| USDP decimals | The payment order docs name USDC, USDG, USDT and PYUSD as 6-decimal. Read on chain, USDP has 18 decimals on Ethereum and 6 on Solana. | Reconciliation scripts comparing MT amounts with raw Ethereum USDP values. |
Checked 14 September 2026 against docs.moderntreasury.com, github.com/Modern-Treasury/modern-treasury-openapi and token contracts read over public RPC. The sample tickets in the demo reproduce each one.
| JD duty | How I would do it | Detailed in |
|---|---|---|
| Deep expertise in money movement and product dependencies | Map each rail's lifecycle, cutoffs and failure notices to the objects they touch (payment order, return, transaction, expected payment, ledger transaction). | §01, §02 |
| Resolve issues within SLAs | Severity set on customer impact at intake; first response states what is known, what is being checked and when the next update comes. | §05 |
| Payment limits, rejections, KYC and KYB, settlement timing, rail behaviour; route risk, compliance, commercial | Playbook per ticket type with a named decision owner and an evidence packet handed over with each route. | §06 |
| 24/7 incident response for premium customers | Confirm scope by cell and time window, post customer updates on a fixed cadence, record the timeline for the retrospective. | §05 |
| Root cause with Engineering and Product | File reproductions with object IDs, request IDs and exact payloads; track recurrence and push doc or product fixes. | ★, §06 |
| Bank and network reporting changes, manual reconciliation, recon logic feedback | Validate file integrity first, then match; turn repeated manual matches into proposed reconciliation rule changes. | §06 |
| Policies, procedures, performance standards | Macros and playbooks with owners and review dates; SLA and reopen-rate tracked per category. | §08 |
| Data-driven trend reporting | Weekly tag analysis in SQL: volume by rail, category and customer, top recurring causes, proposed fix per cause. | §07 |
| AI tools for investigation and repeatable workflows | Deterministic checks for facts, AI for synthesis and drafts, always grounded on the checks' output. | §07 |
Response targets are the public SLA. The examples are how I would classify at intake.
| Level | Response | Examples | First update covers |
|---|---|---|---|
| P0 | Under 2 business hours; 24/7 for premium | Payments failing across a customer or cell; funds sent to the wrong destination; platform errors on payment order creation. | Scope, start time, what is paused, next update time. |
| P1 | Under 4 business hours | A payroll batch returned; incoming transactions delayed; unauthorized-debit return spike. | Affected IDs, rail state, owner engaged. |
| P2 | Under 8 business hours | Single payment returned or rejected; reconciliation exception; webhook signature failures. | Findings so far, customer action if any. |
| P3 | Under 2 business days | How-to, docs questions, feature requests. | Answer with doc links, or a tracked request. |
Each one runs in the demo against a sample ticket.
| Ticket | Checks, in order | What the customer hears | Route |
|---|---|---|---|
| ACH debit returned | Return code and category; return window; threshold exposure over 60 days; proof of authorization on file. | Unauthorized: debits to that account are restricted while we investigate. Administrative: collect corrected details, retry once. | Risk for unauthorized codes (R05, R07, R10, R11, R29, R51) |
| Same day not settled | Priority high; effective date a banking day; processing window caught; amount under $1M. | Which window it caught and when it settles, with the holiday or cap stated if one applies. | None |
| Stablecoin payout "missing" | Amount in smallest unit; currency and network supported; address family; transaction finality and onchain amount. | The onchain facts with an explorer link, and the corrected amount if units were the issue. | Compliance if screening held it |
| Webhook "bug" | Raw-body HMAC; X-Webhook-ID dedupe; documented event ordering; 5-second response. | State from the latest object; handlers idempotent; verify before parsing. | Engineering only if delivery itself fails |
| Unreconciled transaction | Bank file integrity; expected payment bounds and date window; strategy (one to many for batches). | Why it did not match and whether to adjust bounds, rules or reconcile manually. | Bank operations if the report is late or wrong |
| API 409 or 422 | Idempotency key reuse and scope; payload against the spec; request ID and timestamp. | Retry with the same key, or the exact parameter to fix. | Engineering for repeated 5xx |
Facts come from deterministic checks; the model writes from those facts. That keeps drafts fast and auditable.
| Workflow | How it works | Guardrail |
|---|---|---|
| Ticket investigation | Parse the object, run rule checks (lifecycle, enums, codes, calendar, units), list findings with doc links. | Every finding cites its source. |
| Reply drafting | Model receives only findings and the customer message; outputs a Slack reply and an internal note. | No invented IDs, dates or promises; human sends. |
| Queue synthesis | Weekly clustering of tickets by cause with counts and example IDs, drafted into a trend note for Product. | Counts from SQL, prose from the model. |
| Docs drift watch | Diff the OpenAPI enums and docs pages on each release; flag mismatches like the network finding above. | Output is a ticket to the docs owner. |
| Macro maintenance | Suggest macro edits when replies to the same category keep being rewritten. | Owner approves each change. |
Built from the public job posting (2026), Modern Treasury's public docs and OpenAPI spec, press releases, the public status page and SLA, Federal Reserve schedules and onchain reads over public RPC on 2026-09-14. Company figures are labelled as company figures. The demo is my own tool; its sample tickets use invented IDs in documented shapes. Unsolicited interview homework; happy to walk through any section.
Payments launch: press release, Feb 2026
Beam: press release · Fortune
Stablecoins: docs · payout guide
Returns: returns guide · return codes
Processing windows: docs · Webhooks: verification
OpenAPI: modern-treasury-openapi
SLA: service level agreement · Status: status page
Leadership: founders update, Jul 2025
Fed: holiday schedule · FedACH schedule
Competitors: Increase vs Column · Formance
Independent support homework for the Modern Treasury Technical Support Specialist role · 2026 · edwardtay.com