Private beta
TD SYNNEX StreamOne Ion support is doc-validated against docs.streamone.cloud but awaiting first-customer onboarding to confirm a real reseller tenant syncs cleanly. Email support to opt in.
Email support@mspvectis.com to request access. The setup steps below describe the intended self-serve flow once the connector exits beta.
What Vectis does with TD SYNNEX
- Syncs customers and subscriptions from your StreamOne Ion account into
customersandlicense_subscriptions. Customers are fuzzy-matched to PSA rows so license data hangs off the canonical customer hub. - Weekly usage snapshots land in
license_usageso seat-count drift is detected on week-scale cadence — same Money Found signal Pax8 + Sherweb + Ingram produce. - Coexists with Pax8 + Sherweb + Ingram Micro. Subscriptions are vendor-tagged (
vendor='synnex'), so leakage + margin + drift detection work identically whether your MSP uses one distributor or all four. - Read-only. Vectis never writes back to SYNNEX — subscription changes always go through StreamOne or your billing flow, not Vectis.
What you’ll need
- Client ID and Client Secret from StreamOne Ion (Settings → Users → Edit user → OAuth credentials)
- Refresh Token — long-lived (32 days), minted in the same OAuth credentials panel
- Account ID — your reseller account id, shown in the OAuth credentials panel and used in every API URL (
/api/v3/accounts/<accountId>/...)
1. Mint API credentials
- Sign in to StreamOne Ion as a reseller admin.
- Open Settings → Users, click Edit on your service account.
- Open OAuth credentials → Request New Credentials. Label the credential “Vectis”.
- Copy the client ID, client secret, and refresh token. The refresh token is shown only once; if you lose it, rotate and regenerate.
- Note your Account ID from the same panel.
2. Paste credentials into Vectis
- Go to Admin → Integrations and click Configure on TD SYNNEX.
- Paste the client ID, client secret, refresh token, and account ID.
- Click Test. You’ll see “Connected to TD SYNNEX — N customers visible” within a few seconds.
- Click Save, then trigger an initial sync.
3. What appears where
- Customer hub → Licensing section: per-SKU rollups, cost vs. revenue margins, uncontracted-seat counts. SYNNEX, Pax8, Sherweb, and Ingram subscriptions render identically in the same table — the vendor column disambiguates.
- Licensing-leakage dashboard preset: every customer with uncontracted SYNNEX seats or below-margin SKUs surfaces here.
- Weekly Money Found digest: seat-growth findings + licensing drift events surface in the Monday email.
- QBR report: Licensing section vendor label is “TD SYNNEX”, “Pax8”, “Sherweb”, “Ingram Micro”, or “Mixed” depending on which distributor(s) the customer uses.
Common errors
401 Unauthorized — Client ID, secret, or refresh token is wrong, or the refresh token has been revoked / expired (32-day TTL). Rotate from StreamOne Ion and re-paste.
403 Forbidden — The OAuth client doesn’t have access to the supplied account, or the user the credentials belong to is missing permissions on customers / subscriptions.
404 on /api/v3/accounts/<id>/customers — Account ID is wrong. Verify the value in the OAuth credentials panel.
429 Too Many Requests — StreamOne rate limits at ~30 req/min per OAuth client (strictest of our four distributors). The ETL paces below that; if you see 429s, another tool is sharing the credential — mint a dedicated one for Vectis.