Supergood | Silverfin API
Programmatically access Silverfin client files, engagement working papers, trial balances, checklists, and audit adjustments with a stable REST API. Supergood builds and operates production-grade, unofficial Silverfin integrations so your team can automate audit workflows and add AI without heavy custom engineering.
Plain English: Silverfin is an accounting and engagement platform used by firms to centralize client financial data, standardize working papers, and manage period-end workflows and compliance. An unofficial API lets you pull clients, engagements, periods, charts of accounts, trial balances and transactions, working papers, checklists, approvals, and documents—and push audit adjustments, sign-offs, notes, and evidence back into Silverfin.
For a tech company integrating with Silverfin, this means you can ingest real-time client and period data to power audit automation (risk scoring, anomaly detection, sample selection), sync proposed adjustments to ERP/accounting (e.g., QuickBooks, Xero, Sage, Exact Online), orchestrate checklists and approvals from your product, attach evidence and tie-outs, and keep stakeholder systems (GRC, analytics, document management) in lockstep. You can also drive client request lists, standardize narratives and controls testing, and track completion with audit-ready logs.
What is Silverfin?
Silverfin (https://silverfin.com/) is a cloud platform for accounting firms that unifies client ledger data, period management, and working papers into standardized, collaborative workflows. Firms use Silverfin to sync trial balances and charts of accounts from underlying ledgers, perform reconciliations, create and approve adjustments, manage checklists and sign-offs, compile financial statements and regulatory reports, and collaborate with clients and internal teams—all within an audit- and compliance-friendly environment.
Core product areas include:
- Data Hub & Ledger Connectivity (chart of accounts, trial balances, transactions, mappings)
- Working Papers & Engagement Management (periods, checklists, tasks, sign-offs, references)
- Adjustments & Reconciliations (journal entries, reclassifications, accruals/deferrals)
- Compliance & Reporting (financial statements, notes, tax/VAT workflows, templates)
- Collaboration (comments, annotations, request lists, document management)
- Analytics & Insights (variance analysis, consolidation, KPI dashboards)
Common data entities:
- Firms, Users, Roles/Permissions (partner, manager, staff, client contact)
- Clients (metadata, industries, ledger systems, jurisdictions)
- Engagements (file types such as audit, review, compilation) and Periods (monthly/quarterly/year-end)
- Chart of Accounts and Account Groups (mapping to reporting frameworks)
- Trial Balances (unadjusted/adjusted, currency, materiality, assertions)
- Journal Entries/Adjustments (type, lines, references, approvals)
- Working Papers (templates, sections, statuses, sign-offs, checklists)
- Documents & Evidence (attachments, links, versioning)
- Tasks, Notes, Comments (workflow tracking, collaboration)
The Silverfin Integration Challenge
Accounting firms rely on Silverfin day-to-day, but turning portal-first workflows into API-driven automation introduces complexity:
- Role-aware access: Staff roles, manager/partner approvals, and client visibility differ across modules
- Period-centric data: Trial balances, adjustments, and working papers are scoped by engagement and period
- Template-driven working papers: Custom firm templates and mappings require normalized responses
- Ledger variance: Data ingested from different GLs (Xero, QuickBooks, Sage, Exact) must be harmonized
- Authentication complexity: SSO/MFA and session lifecycles complicate headless automation
- Audit lineage: Evidence, references, and sign-offs must retain context and time-stamped trails
How Supergood Creates Silverfin APIs
Supergood reverse-engineers authenticated browser flows and network interactions to deliver a resilient API endpoint layer for your Silverfin tenant.
- Handles username/password, SSO/OAuth, and MFA (SMS, email, TOTP) securely
- Maintains session continuity with automated refresh and change detection
- Normalizes responses so you can integrate once and rely on consistent objects across clients, periods, and working papers
- Aligns with firm entitlements and role-based permissions to ensure compliant access
Use Cases
Client & Engagement Data Sync
- Mirror clients, engagements, and periods into your internal systems
- Keep firm-wide charts of accounts and trial balances current for analytics
- Standardize metadata (industries, currencies, tax jurisdictions) for multi-tenant operations
Trial Balance & Adjustment Automation
- Pull unadjusted and adjusted trial balances with account groups and mappings
- Post proposed audit adjustments (reclassifications, accruals/deferrals) from your product
- Track approval status and reconcile back to ledger systems (e.g., Xero, QuickBooks, Sage, Exact Online)
Working Papers, Checklists, and Evidence
- Ingest checklists, tasks, and sign-offs into your orchestration tools
- Attach documents, tie-outs, and references programmatically
- Drive completion status and SLA alerts while retaining audit-ready logs
AI-Assisted Audit
- Run anomaly detection, risk scoring, and materiality analysis on normalized trial balance and transaction feeds
- Automate sample selection and stratification for tests of details
- Generate narratives and suggested procedures from templates, escalate exceptions to managers
Compliance & Reporting
- Populate statement notes, tax/VAT workflows, and regulatory reports
- Map accounts to IFRS/GAAP groupings consistently across clients
- Deliver consolidated dashboards and audit status to stakeholders
Available Endpoints
Authentication
POST /sessions: Establish a session using credentials. Supergood manages MFA (SMS, email, TOTP) and SSO/OAuth when enabled. Returns a short-lived auth token maintained by the platform.
curl --request POST \
--url https://api.supergood.ai/integrations/<integration_id>/sessions \
--header 'Authorization: Basic <Base64 encoded token>' \
--header 'Content-Type: application/json' \
--data '{
"username": "[email protected]",
"password": "<password>",
"mfa": { "type": "totp", "code": "123456" }
}'
Example response
{
"authToken": "eyJhbGciOi...",
"expiresIn": 3600,
"user": {
"id": "u_sf_2e19c4",
"name": "Audit Manager",
"firmId": "firm_1a92f0",
"entitlements": ["clients", "engagements", "periods", "trial_balance", "working_papers", "adjustments"]
}
}
POST /sessions/refresh: Refresh an existing token to keep sessions uninterrupted.
Clients
GET /clients: List clients with filters and summary details.
Query parameters
- firmId: string
- status: active | archived | prospect
- ledgerSystem: xero | quickbooks | sage | exact | other
- updatedFrom, updatedTo: ISO 8601 timestamps
- page, pageSize: integers for pagination
Example response
{
"items": [
{
"clientId": "cl_8b13f2",
"name": "Northstar Manufacturing Ltd",
"registrationNumber": "GB10293847",
"industry": "Manufacturing",
"ledgerSystem": "xero",
"currency": "GBP",
"taxJurisdiction": "UK",
"status": "active",
"primaryContact": {"name": "Sam Patel", "email": "[email protected]"},
"currentPeriodId": "per_2025_y1",
"updatedAt": "2026-01-20T13:45:00Z"
}
],
"page": 1,
"pageSize": 50,
"total": 1
}
Trial Balance
GET /clients/{clientId}/periods/{periodId}/trial-balance: Retrieve trial balance lines with mappings and adjustment context.
Query parameters
- view: unadjusted | adjusted (default: adjusted)
- includeAdjustments: boolean (default: true)
- includeGroups: boolean (default: true)
- materialityThreshold: number (optional, currency units)
Example response
{
"clientId": "cl_8b13f2",
"periodId": "per_2025_y1",
"currency": "GBP",
"view": "adjusted",
"accounts": [
{
"accountId": "acc_4000",
"code": "4000",
"name": "Revenue",
"type": "income",
"group": "Income",
"openingBalance": 0.00,
"periodMovements": 1250000.00,
"unadjustedEndingBalance": 1250000.00,
"adjustmentsTotal": -15000.00,
"adjustedEndingBalance": 1235000.00,
"material": true,
"assertions": ["occurrence", "cutoff"],
"adjustments": [
{
"adjustmentId": "adj_51af80",
"type": "reclassification",
"description": "Reclass promotional rebates",
"amount": -15000.00,
"status": "approved",
"postedAt": "2026-01-21T11:20:44Z"
}
]
}
],
"generatedAt": "2026-01-21T12:00:00Z"
}
Adjustments
POST /clients/{clientId}/periods/{periodId}/adjustments: Create an audit adjustment (journal entry) with multiple lines and approval metadata.
curl --request POST \
--url https://api.supergood.ai/integrations/<integration_id>/clients/cl_8b13f2/periods/per_2025_y1/adjustments \
--header 'Authorization: Bearer <authToken>' \
--header 'Content-Type: application/json' \
--data '{
"type": "accrual",
"description": "Year-end accrual for unpaid utilities",
"reference": "AUD-UTIL-2025-04",
"date": "2025-12-31",
"entries": [
{"accountId": "acc_6200", "debit": 8500.00, "credit": 0.00, "memo": "Utilities expense"},
{"accountId": "acc_2205", "debit": 0.00, "credit": 8500.00, "memo": "Accrued liabilities"}
],
"proposedByUserId": "u_sf_2e19c4",
"attachments": [
{"fileName": "utility_statement_dec2025.pdf", "uploadToken": "upl_7fa223"}
],
"requiresApproval": true
}'
Example response
{
"adjustmentId": "adj_7c3d21",
"status": "pending_review",
"totalDebit": 8500.00,
"totalCredit": 8500.00,
"createdAt": "2026-01-22T08:15:12Z"
}
Working Papers
PATCH /working-papers/{workingPaperId}: Update working paper status, add sign-offs, and append notes.
curl --request PATCH \
--url https://api.supergood.ai/integrations/<integration_id>/working-papers/wp_90e412 \
--header 'Authorization: Bearer <authToken>' \
--header 'Content-Type: application/json' \
--data '{
"status": "in_review",
"signOffs": [
{"role": "prepared_by", "userId": "u_sf_9ab441", "timestamp": "2026-01-21T10:03:11Z"}
],
"notes": [
{"authorUserId": "u_sf_2e19c4", "text": "Please verify supplier confirmation in attachments.", "timestamp": "2026-01-21T10:05:00Z"}
]
}'
Example response
{
"workingPaperId": "wp_90e412",
"status": "in_review",
"signOffs": [
{"role": "prepared_by", "userId": "u_sf_9ab441", "timestamp": "2026-01-21T10:03:11Z"}
],
"updatedAt": "2026-01-21T10:05:00Z"
}
Technical Specifications
- Authentication: Username/password with MFA (SMS, email, TOTP) and SSO/OAuth where enabled; supports service accounts or firm-managed credentials
- Response format: JSON with consistent resource schemas and pagination across modules
- Rate limits: Tuned for enterprise throughput while honoring firm entitlements and usage controls
- Session management: Automatic reauth and cookie/session rotation with health checks
- Data freshness: Near real-time retrieval of clients, periods, trial balances, working papers, and adjustments
- Security: Encrypted transport, scoped tokens, and audit logging; respects Silverfin role-based permissions
- Webhooks: Optional asynchronous delivery for long-running workflows (e.g., approvals, working paper status changes)
Performance Characteristics
- Latency: Sub-second responses for list/detail queries under normal load
- Throughput: Designed for high-volume client and trial balance sync with adjustment posting
- Reliability: Retry logic, backoff, and idempotency keys minimize duplicate actions
- Adaptation: Continuous monitoring for UI/API changes with rapid adapter updates
Getting Started
- Schedule Integration Assessment
Book a 30-minute session to confirm your modules, licensing, and authentication model.
- Supergood Builds and Validates Your API
We deliver a hardened Silverfin adapter tailored to your workflows and entitlements.
- Deploy with Monitoring
Go live with continuous monitoring and automatic adjustments as Silverfin evolves.
Frequently Asked Questions
Q: Which Silverfin modules can this integration cover?
Supergood supports workflows across commonly used modules such as Data Hub (trial balances, chart of accounts), Working Papers (checklists, tasks, sign-offs), Adjustments (journal entries), and Compliance/Reporting (templates, statements), subject to your licensing and entitlements. We scope coverage during integration assessment.
Q: How are MFA and SSO handled for automation?
We support username/password + MFA (SMS, email, TOTP) and can operate behind SSO/OAuth when enabled. Sessions are refreshed automatically with secure challenge handling.
Q: Can you sync audit adjustments back to our accounting system?
Yes. We can normalize adjustments and journal lines to match your ERP/accounting schema (e.g., account codes, tax handling) and deliver updates via webhooks or polling while complying with rate and permission constraints. We commonly integrate with Xero, QuickBooks Online, Sage, and Exact Online.
Q: Are working paper sign-offs and evidence attachments supported?
Yes. We support uploading attachments via signed uploads with checksum validation and time-limited URLs, updating sign-off states for roles (prepared by, reviewed by, partner), and retaining timestamps for audit trails.
Q: How can we add AI to our audit using this API?
By standardizing client, period, and trial balance data, you can run anomaly detection, risk scoring, and materiality logic; auto-generate sample selections; draft narratives and controls testing steps; and flag high-risk accounts for manager review.
Related Integrations
Xero API - Programmatically access Xero with Supergood
QuickBooks Online API - Programmatically access QuickBooks Online with Supergood
Exact Online API - Programmatically access Exact Online with Supergood
Ready to automate your Silverfin workflows?
Supergood can have your Silverfin integration live in days with no ongoing engineering maintenance.