Developer Agreement
The agreement every marketplace plugin developer accepts before publishing or monetizing a plugin. Questions? Contactez-nous directement.
1. Acceptance & Eligibility
You accept this agreement by checking the acceptance box in the developer portal. You must accept before creating a plugin listing, submitting a plugin version for publication, connecting a payout account or offering paid plans.
- Age: You must be at least 18 years old, or the age of majority in your jurisdiction, whichever is older. The 13+ minimum in our Terms of Service is not sufficient to be a developer.
- Authority: If you accept on behalf of a company or other entity, you represent that you have authority to bind that entity, and “you” means that entity.
- Independent contractor: You are an independent contractor. This agreement does not create any employment, agency, partnership or joint venture relationship. Neither party may bind the other. You are solely responsible for your own taxes, insurance and business expenses.
2. Relationship to Other Terms
The Terms of Service and Privacy Policy apply to your use of YourBot generally. For plugin development, publication, monetization and payouts, this agreement controls if there is a conflict. Receiving payouts additionally requires you to complete Stripe onboarding and agree to the Stripe Connected Account Agreement. Because every plugin runs on Discord through YourBot, you must also comply with Discord’s Developer Policy and Terms of Service.
3. Your Plugin & Licenses
3.1 You Own Your Plugin
You retain all ownership and intellectual property rights in your plugin code and your listing content. Nothing in this agreement transfers ownership to us.
3.2 License You Grant Us
You grant EmberStream a non-exclusive, worldwide, royalty-free license (subject to the revenue share in Section 8) to host, store, reproduce, execute in our sandboxed runtime, distribute, publicly display and promote your plugin and your listing content (including your plugin name, logo, descriptions and screenshots), and to make technical modifications strictly necessary for security, sandboxing or compatibility. This license lasts while your plugin is listed, plus the wind-down period in Section 14. Unlike a traditional app store, YourBot actually runs your plugin on our infrastructure, and this license covers that execution.
3.3 End Users License From You
Server administrators and members license your plugin from you, not from us. We are the distributor and runtime host. Unless you provide your own end-user terms, you grant each installing server and its members a non-exclusive, non-transferable right to use your plugin through the platform for as long as their install or entitlement is active. Any terms you offer end users must not conflict with our Terms of Service or reduce protections we provide to users.
3.4 SDK
The YourBot SDK (yourbot-sdk) is open source under the MIT License, and nothing in this agreement restricts the rights that license grants you in the SDK code itself. Access to the platform services (the marketplace, publishing pipeline, sandbox runtime, APIs and payout rails) is a separate, limited, revocable grant under this agreement.
4. Publishing & Review
- Automated validation: Every uploaded version passes through automated safety validation and static analysis. Submissions containing disallowed code patterns are rejected automatically. We may run automated security analysis on all submitted code.
- Review: Submissions enter our review queue. We may approve, reject or require changes at our discretion, and we provide a reason when we reject. We may waive or expedite review for developers we designate as trusted. Approval is not an endorsement, certification or warranty of your plugin.
- Every version: Each plugin version, including updates, is subject to review before publication. Review targets shown in the portal are estimates, not guarantees.
- Repository access: Plugins built from private repositories must grant us read access sufficient to review the source.
- Auto-updates: Publishing a version deploys it automatically to servers that opted in to auto-updates. Versions that request new capabilities or proxy domains are not auto-deployed; affected server owners must consent first. Version responsibly and describe changes accurately.
- Delisting: You may retract a pending version at any time and delist a published plugin from its Settings page at any time. Delisting stops new installs; existing installs keep running until removed by the server or wound down under Section 14. You can relist from Settings while an approved version exists.
5. Capabilities, Sandbox & Technical Rules
- Accurate declarations: You must accurately declare all capabilities and outbound proxy domains your plugin uses. We also derive capabilities from your code, and the derived set controls. Capability grants are enforced and audited at runtime.
- No circumvention: You must not attempt to escape, probe or circumvent the sandbox, the egress proxy, rate limits, quotas or any security control, and you must not obfuscate code to evade review or scanning. Any such attempt is a material breach.
- Operational limits: Runtime quotas (event rates, action rates, storage, compute) are operational limits documented in the developer docs. We may adjust them to protect platform stability.
- Names and IDs: Plugin IDs are permanent. We may refuse or reclaim plugin IDs, names or command names that impersonate YourBot or built-in features, infringe third-party rights or conflict with platform functionality. Command names reserved by the platform are unavailable, and command-name conflicts between marketplace plugins resolve in favor of the plugin installed first on a given server.
6. Content & Conduct
Your plugin, listing and developer conduct must not involve:
- Illegal content or activity, or content that violates Discord’s policies.
- Malware, backdoors, miners or any code that harms or deceives users or servers.
- Misleading listings, fake reviews, undisclosed functionality or misrepresentation of what data your plugin collects.
- Collecting or using user data beyond what your declared capabilities and Section 7 allow.
- Sexual content involving minors (zero tolerance; reported to authorities), harassment or hate.
- Impersonating EmberStream, YourBot staff or other developers, or claiming affiliation you do not have.
- Circumventing platform billing for functionality sold through the marketplace.
Content standards are enforced through review and the enforcement powers in Section 12.
7. User Data & Privacy
- Consent modes: Server owners choose a privacy mode per install. The default provides your plugin metadata only; message content is available only where the server owner explicitly allows it. Your plugin receives only what the installing server consented to.
- Purpose limitation: Use data received through the platform solely to provide your plugin’s declared functionality. Do not sell user data or use it for advertising or profiling. Do not attempt to identify or deanonymize users and do not retain data beyond what functionality requires.
- Deletion: Delete user data your plugin holds when a server uninstalls it and on a verified deletion request, except where retention is legally required.
- Survival: Your obligations in this section survive termination of this agreement for as long as you hold data received through the platform.
- Off-platform data: If your plugin transmits personal data to your own or third-party systems (through approved proxy domains), you must describe that in your listing, publish a privacy notice and comply with applicable privacy laws. You are the responsible party for data you take off-platform.
- Platform storage: Plugin data (key-value, SQL, secrets, metrics) is stored on our infrastructure, isolated per plugin and per server. We may access or delete it to operate the service, investigate abuse or comply with law.
- Egress visibility: All outbound HTTP from your plugin flows through our proxy and may be inspected for security. Report any security incident involving user data to legal@emberstreamstudio.com without undue delay.
8. Monetization, Fees & Payouts
8.1 Prerequisites
Offering paid plans requires a connected Stripe Express account with charges enabled, acceptance of the Stripe Connected Account Agreement and any tax documentation we or Stripe request. EmberStream is the merchant of record for marketplace sales: we create the charge and your share is transferred to your Stripe account at charge time. All prices and fees are denominated in US dollars.
8.2 Revenue Share
The platform fee applies to the amount actually charged to the buyer (after any discounts, coupons or sales you configure). The current fee schedule is based on the total amounts transferred to your Stripe account (your share of sales) less amounts reversed, over the trailing 30 days:
- Platform fee 30% (you keep 70%) as the default tier.
- Platform fee 25% (you keep 75%) from $1,000 trailing 30-day volume.
- Platform fee 20% (you keep 80%) from $5,000.
- Platform fee 15% (you keep 85%) from $10,000.
Your tier is evaluated continuously and can move down as well as up. Subscription renewals are billed at your current tier as we re-sync it (at least hourly), not the tier at signup. Free plugins keep 100% (no charge, no fee). Stripe’s payment processing fees come out of our portion, not yours. We may change the fee schedule with at least 30 days notice; changes apply to charges after the notice period.
8.3 Pricing
You set your prices subject to platform limits shown in the portal (currently a $3.00 minimum per paid plan, up to 5 plans per plugin and subscription trials up to 14 days; we may change these). Nothing is charged during a free trial and no earnings accrue until the first paid invoice.
8.4 Payouts
Payouts are automatic on Stripe’s payout schedule, subject to a rolling hold period we configure (currently about 30 days). We do not process manual payout requests and we do not hold your funds in escrow: after a sale, funds sit in your Stripe account balance during the hold, then Stripe pays your bank. Exact bank arrival dates are set by Stripe, dashboard figures are informational estimates and payouts may be delayed by Stripe verification or compliance holds. You must keep your Stripe account connected and in good standing while you have paid plans, active subscriptions or pending payouts; we may block disconnection until those obligations settle. We may correct errors and recover overpayments by offsetting future payouts or reversing transfers.
9. Refunds, Chargebacks & Clawbacks
- Refund process: Buyers request refunds through the process in our Terms of Service. You agree to review refund requests for your plugins promptly and in good faith. Requests you do not answer within 7 days are escalated to our staff for decision, and staff may review any request, including ones you deny. Staff decisions are final.
- Clawback: When a charge is refunded, in whole or in part, we reverse the portion of that charge previously transferred to you. A full refund revokes the buyer’s entitlement to your plugin.
- Chargebacks: Disputed and charged-back amounts are likewise reversed from your share. As merchant of record we manage disputes, and we may pass through dispute fees attributable to your plugin.
- Negative balances: If reversals exceed your available balance, your Stripe balance may go negative and you must repay the shortfall. We may offset amounts you owe against future payouts, and we may pause payouts during a fraud or dispute investigation.
10. Taxes
You are solely responsible for your own taxes on marketplace earnings. Where required by law, we or Stripe may issue information returns (for example IRS Form 1099-K) for your account. You must provide accurate taxpayer information (such as IRS Form W-9 or W-8 series) when requested through Stripe and keep it current; we may suspend payouts until valid tax documentation is on file. You consent to electronic delivery of tax forms and related notices through the Stripe Express dashboard and the email associated with your account. If we are required by law to collect or withhold taxes on any transaction, we may do so.
11. Support
If you offer paid plans, you must provide reasonable support to your customers, keep a working support contact in your listing and respond to refund requests and platform inquiries within a reasonable time. Persistent failure to support paying customers is grounds for enforcement under Section 12.
12. Enforcement, Suspension & Takedown
Depending on severity, we may: reject a version; delist your plugin (stops new installs, existing installs keep running); suspend your plugin, which immediately halts it in every server where it is installed (used for security, legal or user-harm issues, and may happen without prior notice); permanently ban your plugin; restrict, suspend or terminate your publishing rights or account; or pause payouts pending investigation.
- We make reasonable efforts to notify you of enforcement, with a reason, at your registered contact points.
- You may appeal enforcement decisions by contacting legal@emberstreamstudio.com.
- Reinstatement after a suspension restores marketplace visibility but does not automatically re-enable your plugin in servers; server owners must re-enable it.
- If enforcement leaves buyers with active subscriptions to a plugin that can no longer run, we may cancel and refund those subscriptions and reverse the associated amounts from your share.
13. Copyright & IP Complaints
We handle copyright complaints as described in Section 12.1 of the Terms of Service. We may remove listings or versions in response to a valid notice, you may submit a counter-notice and we terminate repeat infringers.
14. Term, Termination & Wind-Down
This agreement runs until terminated. You may stop publishing at any time; either party may terminate this agreement, and we may terminate immediately for material breach. A plugin with active paid subscriptions cannot simply be deleted: you must wind it down first.
Wind-down: After delisting or termination, we may continue hosting and executing the last approved version of your plugin for existing paying subscribers until the end of their then-current billing periods, or we may cancel and refund the remaining subscriptions and net those refunds against amounts owed to you. Final payouts remain subject to the holds, reversals and offsets in Sections 8 and 9.
15. Your Representations & Warranties
You represent and warrant that: you have all rights necessary to grant the licenses in Section 3; your plugin and listing do not infringe any third-party rights; your plugin contains no malicious code and makes no attempt to circumvent the sandbox or platform security; you comply with applicable law, this agreement, our policies and Discord’s terms; your listing and capability declarations are accurate and not misleading; and the identity, payout and tax information you provide is accurate and kept current.
16. Indemnification
You will indemnify, defend and hold harmless EmberStream Studio LLC and its officers, employees and agents from any third-party claims, damages and expenses (including reasonable legal fees) arising from your plugin, your breach of this agreement or applicable law, your infringement of third-party rights or your handling of user data. We will give you prompt notice of any such claim; we may participate in or assume control of the defense, and you may not settle any claim without our prior written consent.
17. Disclaimers & Limitation of Liability
THE MARKETPLACE AND DEVELOPER SERVICES ARE PROVIDED “AS IS.” WE DO NOT GUARANTEE SALES, PLACEMENT, REVIEW TURNAROUND OR UNINTERRUPTED OPERATION. NEITHER PARTY IS LIABLE FOR INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL OR PUNITIVE DAMAGES. OUR TOTAL AGGREGATE LIABILITY TO YOU UNDER THIS AGREEMENT IS CAPPED AT THE GREATER OF (A) THE PLATFORM FEES WE RETAINED FROM SALES OF YOUR PLUGINS IN THE TWELVE (12) MONTHS PRECEDING THE CLAIM, OR (B) ONE HUNDRED US DOLLARS ($100.00). This cap does not apply to your indemnification obligations, your misuse of user data, infringement of intellectual property rights or our obligation to pay you amounts properly earned.
18. Sanctions & Export Compliance
You represent that you are not located in a country or region subject to comprehensive US sanctions, are not listed on any US government restricted-party list and will not use the marketplace in violation of US export controls or sanctions laws. Breach of this section permits immediate termination without a cure period, and payouts may be blocked or held where the law requires.
19. Changes to This Agreement
We may update this agreement. For material changes we will give at least 30 days advance notice through the developer portal, email or our Discord community, and you must accept the new version before continuing to publish new versions or create paid plans. Non-material changes take effect when posted. Changes do not apply retroactively to sales already completed. Each version of this agreement is identified by the version date at the top, and we keep a record of the version you accepted.
20. Governing Law & Disputes
This agreement is governed by the laws of the State of Michigan and applicable US federal law, without regard to conflict-of-law principles. Disputes arising out of or relating to this agreement are resolved under Section 19 of the Terms of Service (informal resolution, then binding arbitration, with the class action waiver, small-claims option and opt-out right described there), which applies to this agreement with the necessary changes, except that arbitration is administered under the AAA Commercial Arbitration Rules, or the AAA Consumer Arbitration Rules where you qualify as a consumer under them. For disputes under this agreement, the 30-day arbitration opt-out period in Section 19.5 of the Terms of Service runs from the date you first accept this agreement.
21. General
We may send notices to you by email, the developer portal, the dashboard or our Discord community, and you consent to receive them electronically; legal notices to us go to legal@emberstreamstudio.com. You may not assign this agreement without our written consent; we may assign it to an affiliate or successor. If a provision is unenforceable, it is modified to the minimum extent necessary and the rest stands. Failure to enforce is not waiver. Neither party is liable for delays caused by events beyond its reasonable control. This agreement, together with the Terms of Service and Privacy Policy, is the entire agreement for its subject matter. Sections 3.2 (for the wind-down period), 6, 7, 9, 10 and 14 through 21 survive termination.