Legal
Privacy Policy
What personal data ResellerHQ collects, why, who receives it, how long it is kept, and the rights you have.
ResellerHQ is a platform that lets resellers sell domains, phone numbers and Google mailboxes to their own customers, under their own brand. This policy explains what personal data we collect, why, who receives it, how long we keep it, and the rights you have.
ResellerHQ is a product of Magnitude Labs Inc ("ResellerHQ", "we", "us"). For anything about privacy, email privacy@resellerhq.com.
Who this policy covers, and our role
We handle personal data in two roles, and different rules apply to each.
| Whose data | Our role | What applies |
|---|---|---|
| Visitors to resellerhq.com, and the people who sign up for and use a reseller account | Controller: we decide why and how the data is used | This policy |
| A reseller's own customers, and the people who use the domains, numbers and mailboxes a reseller buys for them | Processor: we act only on the reseller's instructions | The reseller's own privacy policy, and our Data Processing Agreement with the reseller |
If you bought something from a company that uses ResellerHQ, that company is responsible for your data. Its customer portal links to its own privacy policy. Send requests about your data to that company; we help it answer them.
What we collect
When you visit our website
- Attribution cookies. Two first-party cookies,
rhq_attribution_firstandrhq_attribution_last, record the page you landed on and the campaign link that brought you, for up to 90 days. They are only ever sent to our own servers. - Analytics, only with your consent. If you accept the cookie banner, PostHog records page views, session replays and feature flags on the marketing site, blog, docs and the sign-up and sign-in pages. Every input on a recorded page is masked. If you reject the banner, the PostHog script never loads. "Cookie settings" in the footer changes your choice at any time.
- Server logs. Our servers log each request (IP address, browser, the page asked for, the time) to keep the service running and secure.
- Bot protection. Some forms use Cloudflare Turnstile to tell people from bots.
When you create and use a reseller account
- Account details: your name, email address, password (stored only as a one-way hash) or the sign-in provider you chose (Google, GitHub or Microsoft), passkeys and two-step verification settings.
- Billing details: your company's legal name, address, tax ID and billing email, and your wallet balance and its history. Card payments for wallet top-ups are handled by Stripe; we never see or store your full card number.
- What you do in the account: orders, invoices, price lists, API keys (we keep only a hash, never the key itself), the activity trail of changes, and the AI assistant or MCP client you connected, if any.
- Product analytics, only with your consent. If you accept the cookie banner, PostHog records how you use the dashboard. All text is masked by default: amounts, balances, customer names, addresses, domains, phone numbers, API keys and anything you type are never recorded. You can turn this off in Settings → Session recording.
- Messages with us: emails and support conversations.
When you set a password, we check it against a public list of breached passwords by sending only the first five characters of its hash. The password itself never leaves our servers.
What resellers put into ResellerHQ about their customers
On a reseller's behalf, and only as its processor, we hold:
- Customer records: name, email, billing address, tax ID and the reseller's own reference.
- Domain contacts: the registrant, admin, tech and billing contact (name, organisation, email, phone, postal address). Domain registration rules require these to be passed to the registrar and the registry for each name.
- Phone numbers: the numbers rented, and the SMS messages they receive (sender and text). Calls arrive as text transcripts.
- Mailboxes: each mailbox's first and last name, email address and setup status, and its sign-in details (password, app password and two-step verification secret), which we keep encrypted. We do not read the contents of mailboxes; Google hosts them.
Why we use it
| Purpose | Legal basis |
|---|---|
| Providing the service: your account, and buying and managing domains, numbers and mailboxes | Performing our contract with you |
| Billing, invoices, tax records and fraud prevention | Contract; legal obligation; legitimate interests |
| Security: sign-in protection, breached-password checks, bot protection, logs | Legitimate interests in keeping accounts and the service safe |
| Service emails: confirmations, receipts, security alerts, renewal notices | Contract |
| Knowing which campaigns bring sign-ups (attribution cookies) | Legitimate interests |
| Product analytics and session replay (PostHog) | Consent, which you can withdraw at any time |
| Processing a reseller's customer data | The reseller's instructions, under our DPA |
We do not sell personal data, share it with data brokers, or use it for advertising. We never use a reseller's customer data for our own purposes.
Who receives it
We use a small number of service providers ("subprocessors"), each of which receives only what it needs for its job. Their categories, what each receives and where they are, are listed at resellerhq.com/legal/subprocessors. Customers who have accepted our DPA can ask for the names. We tell resellers before we add a new one.
We also share data:
- with domain registries, and the public WHOIS/RDAP record, where registration rules require it (WHOIS privacy keeps contact details off the public record where the domain ending allows it);
- with Google, which hosts the mailboxes you order;
- with the AI assistant or MCP client you connect to your account (for example ChatGPT), for the request you make through it;
- when the law requires it, or to protect our rights, our users or the public;
- with a buyer or successor if ResellerHQ is sold or merged, under the same protections.
Where your data is stored
Our servers are in the United States (Michigan). Some service providers process data in other countries, as listed on the subprocessors page. When we transfer personal data out of the European Economic Area, the UK or Switzerland, we use the European Commission's Standard Contractual Clauses (with the UK Addendum where needed), or rely on the EU–US Data Privacy Framework where the provider is certified.
How long we keep it
| Data | Kept for |
|---|---|
| Account and customer records, orders, domains, numbers, mailboxes | Until you ask us to delete them, or delete them yourself. We then delete them within 30 days |
| Mailbox sign-in details | Erased when the mailbox's domain is deleted from the account |
| Invoices and payment records | As long as tax and accounting law requires, even after the rest is deleted |
| Request logs and traces | 15 days |
| Database backups (encrypted) | Daily copies for 35 days and one monthly copy for 400 days |
| Attribution cookies | 90 days |
A deleted record stays in encrypted backups until that backup expires, and is never restored except to recover from a disaster.
How we protect it
Data travels over HTTPS only. Mailbox sign-in details are encrypted at rest. Backups are encrypted before they leave our database servers, so our backup storage provider only ever holds encrypted files. Staff accounts require two-step verification, and only a few named people can reach our servers. Customers can ask for our full security measures at security@resellerhq.com.
Your rights
Depending on where you live (for example under the GDPR, the UK GDPR or the CCPA), you can ask us to: see the data we hold about you; correct it; delete it; restrict or object to how we use it; and receive it in a portable format. You can withdraw consent to analytics at any time through "Cookie settings". You can also complain to your data protection authority.
To use these rights, email privacy@resellerhq.com. We answer within one month. If a reseller gave us your data, we pass your request to that reseller, because it decides what happens to the data.
California residents: we do not sell or "share" personal information as the CCPA defines those words, and we do not use sensitive personal information to infer anything about you.
Children
ResellerHQ is a business service, not meant for anyone under 18. We do not knowingly collect children's data.
Security issues
Report a vulnerability or a suspected breach to security@resellerhq.com.
Changes to this policy
If we make a material change, we update the effective date and email account owners before it takes effect. Earlier versions are available on request.
Contact
Magnitude Labs Inc. Email: privacy@resellerhq.com.
Adapted from the Basecamp open-source policies (github.com/basecamp/policies), licensed CC BY 4.0.
The ChatGPT and MCP plugin
Connecting an assistant to ResellerHQ (an OAuth sign-in, or an API key pasted into an MCP client) gives it a set of tools, each scoped to your own account. Every field below is what one of those tools can return or take in, grouped by what the tools do. Nothing here is collected beyond what the tool itself needs to answer the call it was given.
Account and wallet
Tools: get_account, get_wallet
Returns: your account name, environment (sandbox or live), status, which product lines are open, your wallet's available and held balance and its recent movements, and the billing defaults a new invoice falls back to (legal name, address, tax id, billing email).
Why: So an assistant can check there is enough in the wallet before it previews a purchase, and can fill an invoice's defaults correctly.
Who receives it: The assistant and the host you are using (ChatGPT, or another MCP client), for the one request that asked. ResellerHQ's own servers see it to serve the call, the same as any other API request to your account. Nobody else.
Kept for: This is a live read of your own account's existing records; ResellerHQ stores nothing extra because a tool was called. The call itself - which tool, whether it succeeded, how long it took - is logged the same as every other API request; the fields it returned are never written to that log.
Customers
Tools: list_customers, get_customer, create_customer, update_customer, assign_price_list
Returns or takes in: a customer's email, name and billing address, your own reference for them, their tax id, and which price list they are on.
Why: To look a customer up before quoting, buying or invoicing for them, and to record one you add through the assistant.
Who receives it: The assistant and host, for that one call; ResellerHQ's own servers to serve it. Nobody else - a customer's details are never sold, shared with a data broker, or forwarded anywhere outside your account.
Kept for: As long as the customer record itself exists in your account, exactly as it does today through the dashboard and the REST API. Marked as untrusted text in the tool's own result, since a customer chose those words, not you.
Your controls: Change or remove a customer's details from the dashboard or the API; both change what the plugin reads immediately, since it reads the same record.
Domains
Tools: search_domains, list_domains, get_domain, prepare_domain_registration, prepare_domain_renewal, confirm_purchase, update_domain
Returns or takes in: domain names, their status and nameservers, and the registrant/admin/tech/billing contact on file - name, organization, email, phone, address, city, state, postal code and country.
Why: To check availability and price before registering, to show what you already hold, and to change a domain's nameservers, lock or contacts when you ask the assistant to.
Who receives it: The assistant and host, for that one call; ResellerHQ's own servers, and the domain registry when a name is actually checked or registered - the same registrar call the dashboard makes. Nobody else.
Kept for: As long as the domain is registered through your account. Every contact field is marked as untrusted text in the tool's own result, since it was written by whoever set the contact, not by you.
Your controls: Change a domain's contacts or nameservers from the dashboard, the API, or the assistant itself; WHOIS privacy, where the ending offers it, keeps the contact off the public WHOIS record the same way it does today.
Phone numbers
Tools: find_numbers, list_numbers, get_number, read_messages, prepare_number_purchase, prepare_number_renewal, confirm_purchase, cancel_number
Returns: the numbers you hold, their status and rental details, and the SMS they have received - the sender and the message body.
Why: To buy, renew or cancel a rental, and to read messages a customer or a verification service sent to a number you hold.
Who receives it: The assistant and host, for that one call; ResellerHQ's own servers, and the carrier that routes the number. Nobody else.
Kept for: As long as the rental and its messages exist in your account, the same retention the dashboard shows them under. Every message's sender and body are marked as untrusted text, since whoever texted the number wrote them, not you - an assistant is told to treat that text as data to report, never as instructions to follow.
Your controls: Cancel a rental shortly after buying it, from the dashboard, the API or the assistant, and nothing further is charged or received.
Mailbox licences
Tools: list_licence_plans, list_licences, get_licence, list_licence_users
Returns or takes in: which plans are on offer, the licences you hold - plan, vendor, domain, seat count and status - each mailbox on a licence, with its first and last name, email address and provisioning status, and, when you buy licences, the admin mailbox's email and the organisation name set on the vendor account. Nothing about any mailbox's own contents.
Why: To buy mailbox licences on a domain, change a seat count, or see who the seats on a licence belong to, when you ask the assistant to.
Who receives it: The assistant and host, for that one call; ResellerHQ's own servers, and the mailbox vendor (Google or Microsoft) when seats are actually provisioned - the same provisioning call the dashboard makes. Nobody else.
Kept for: As long as the licence exists in your account.
Mailboxes
Tools: get_mailbox_price, connect_mailbox_domain, list_mailbox_domains, get_mailbox_domain, list_mailboxes, get_mailbox, get_mailbox_credentials, delete_mailbox_domain, prepare_mailbox_order
Returns or takes in: the domains you have connected for mailboxes - domain, nameservers and status - and each mailbox on them, with its first and last name, email address and setup status. When you ask for them, a mailbox's sign-in details: its password, app password and two-step verification secret. Nothing about any mailbox's own contents.
Why: To connect a domain, order mailboxes on it, hand over their sign-in details or delete them, when you ask the assistant to.
Who receives it: The assistant and host, for that one call; ResellerHQ's own servers, where sign-in details are kept encrypted; and, when mailboxes are actually set up, the provider that sets them up for us and Google, which hosts them - the same calls the dashboard makes. Nobody else.
Kept for: As long as the domain is connected in your account. Sign-in details are erased when it is deleted.
Sending tools
Tools: list_sequencer_platforms, list_sequencer_connections, get_sequencer_connection, export_mailboxes_to_sequencer, list_sequencer_exports, get_sequencer_export, retry_sequencer_exports, remove_sequencer_export
Returns or takes in: the accounts you have connected at sending tools such as Instantly, Smartlead, EmailBison and SendKit - their name, tool, workspace and settings - and each mailbox exported to them, with its email address and where the export has got to. Never an account's API key or password: connecting one is not something the assistant can do.
Why: To put mailboxes into a sending tool, follow them there, retry a failed one or take one out again, when you ask the assistant to.
Who receives it: The assistant and host, for that one call; ResellerHQ's own servers; and, when a mailbox is exported, the provider that sets it up for us and the sending tool you connected - the same calls the dashboard makes. Nobody else.
Kept for: As long as the connection exists in your account. Removing a connection forgets its keys.
Sales, invoices, orders and price lists
Tools: quote, list_sales, sales_summary, list_orders, get_order, list_invoices, get_invoice, create_invoice, issue_invoice, mark_invoice_paid, void_invoice, share_invoice, create_price_list, update_price_list
Returns or takes in: what a customer is quoted or charged, your margin, invoice line items and totals, a note shown on an invoice, the price rules a price list is built from, and an order's own status and dates -list_orders and get_order return the same domain, number or licence order details already covered above, not a new category. share_invoice creates a public, read-only link to one invoice.
Why: To price something for a named customer, bill them for what they bought, and record that they paid - ResellerHQ takes no payment itself; you collect it however you already do and record that here.
Who receives it: The assistant and host, for that one call; ResellerHQ's own servers. A shared invoice's link is readable by anyone holding it, exactly as the dashboard's own "share" feature already makes it. Nobody else.
Kept for: As long as the sale, invoice or price list exists in your account. An invoice's own note is marked as untrusted text.
No payment data: No card number, bank detail or payment-processor credential is ever read or written through this surface - only the wholesale cost, the price charged, and the resulting order or invoice id, the same figures the dashboard already shows you.
Docs
Tools: search_docs
Returns: the matching page from ResellerHQ's own public docs site, as Markdown.
Why: So an assistant can answer a question from the docs instead of guessing.
Who receives it: The assistant and host, for that one call. The docs are public pages with no personal data in them; nothing about your account is sent to fetch them.
Kept for: Not applicable - no account data is involved.
Every tool call is logged the same way any other API request is - which tool, the outcome and how long it took, against the account and the key or connection that made it - never the arguments sent or the data returned. A tool that changes your account (a purchase, an edit) additionally writes one line to your account's own activity trail, visible in the dashboard, the same as a change made there directly.