SaaS products Ledgerly Integrations
Integrations · Ledgerly
Connect external services for this app. Secrets are stored encrypted and never shown.
| Integration | Type | Status | Secret | |
|---|---|---|---|---|
| Stripe (payments) | Payment | Connected | Secret set | |
| SendGrid | Connected | Secret set | ||
| Slack alerts | Webhook | Needs attention | No secret | |
| Segment | Analytics | Disabled | Secret set |
About this page
Third-party services wired into this product, each with its status, a last-test result, and retry behavior. Secrets show only as “configured”, and error details are redacted — helpful enough to fix, never leaking credentials.
Behind this page/apps/:saasAppId/integrations · CanManageIntegrations
Retrieve
sp_Builder_ListIntegrations returns type, name, status, and a "secret configured" flag — the EncryptedSecret is omitted.Save
Add/edit →sp_Builder_UpsertIntegration; disable is the same proc with @IsActive=0. Test is an app-tier call (proc pending).Success
- Secrets never leave the server.
- Test returns a redacted result with timeout/retry.
- List shows only whether a secret is set.
CLI handoff
Implement this scaffold from the structured contract, then remove hard-coded preview rows. The source of truth is CLI Handoff and admin-cli-manifest.json.
Page IDapp-integrations
Route/apps/:saasAppId/integrations
AccessCanManageIntegrations
Statusworker-integration-required
Server-inject identity and scope values; never trust browser-supplied account, app, tenant, user, entitlement, price, or permission identifiers. Preserve the loading, empty, forbidden, failed, retrying, and completed states shown by the preview.