Build
Review confirmed payments
Give billing teams a searchable cash ledger without maintaining a second payment database.
Use the shared payment-review page
React 0.50.0 adds Payment review to ConnectedBillingWorkspace. It includes received-date quick ranges, search, pagination, confirmed-cash totals, patient counts, and a current-page CSV export. Choose initialView="payments" to open it first, or let users choose the tab.
import { ConnectedBillingWorkspace } from "@mindbill/react";
<ConnectedBillingWorkspace
sessionEndpoint="/api/mindbill/session"
initialView="payments"
appearance={{ preset: "mindbill" }}
style={{ height: "calc(100dvh - 96px)", minHeight: 0 }}
/>The workspace opens a selected bill in place using its built-in navigation. Use the standalone component if your app owns bill navigation:
import { ConnectedPaymentReview } from "@mindbill/react";
<ConnectedPaymentReview
sessionEndpoint="/api/mindbill/session"
initialQuery={{ pageSize: 50 }}
onSelectBill={(billId) => openAuthorizedBill(billId)}
// Optional: your existing authorized payment-posting flow.
onPostPayment={() => openPaymentEntry()}
/>openAuthorizedBill and openPaymentEntry are host callbacks, not MindBill exports. The optional onPostPayment callback exposes your existing payment-entry flow; without it, no page-level post-payment button appears. The workspace also accepts this callback.
Confirmed cash, not an expected reimbursement
Each row is one confirmed payment-ledger entry, with the bill, patient, date of service, received and posted dates, method, source, check or trace number, and amount. A bill can have several payment rows. Pending EOR or 835 amounts are not confirmed cash, and historical legacy payment entries are excluded.
Summary cards cover every matching entry, not just the current page. CSV export contains the visible page only. A unique-patient count is not a bill count. Use the bill lifecycle to review expected payments, explanations of review, adjustments, and remaining balances.
Reuse your existing organization-wide session
GET /partner/v2/reports/payments requires bills:read. Browser callers need an organization-wide session; a single-bill session cannot enumerate practice payments. The credential fixes the organization, partner, and sandbox or live environment.
Supported query parameters are q, receivedFrom, receivedTo, renderingProviderId, page (default 1), and pageSize (default 50, maximum 250). Date filters use YYYY-MM-DD. The SDK's getPaymentReview method on createBillingOperationsClient accepts the same filters.
The response is { data: { items, total, page, pageSize, summary: { postedTotal, entryCount, uniquePatients } } }. Invalid filters return a validation error rather than an unfiltered report. Report responses are private and not cached.