SUBMITTBY PARADISEUTILITIES
DOCUMENTATION

Billing & licensing

Submitt keeps checkout and subscription management inside the Submitt website while Stripe securely processes card details, recurring invoices and payment authentication in the background.

Plans, subscriptions and server slots

Each checkout creates an independent recurring Submitt subscription. A customer can own multiple subscriptions at the same time—for example, five separate Premium 1 subscriptions, two Premium 1 subscriptions plus one Premium 3 subscription, or any other supported combination. Each subscription provides its own one- or three-server slot pool, renews independently, and can be upgraded, downgraded, resumed or canceled without changing the customer's other subscriptions.

Premium uses the official Submitt Discord bot and standard branding. White Label keeps the same core platform features but runs Discord-facing operations through a customer-owned bot application and unlocks the additional per-server branding controls. Ticket panels, application panels and normal workflow usage are not limited by a panel-count quota.

Embedded checkout

When you choose a plan, Stripe Elements renders the secure payment fields directly within Submitt. The website never needs to receive raw card numbers. Promotion codes can be applied or removed before confirmation, and the displayed totals come from Stripe's checkout state.

If your bank requires 3D Secure or another authentication step, Stripe can request it during payment. Returning from authentication should resume the same checkout attempt instead of creating a second subscription.

Automatic tax

Stripe Automatic Tax is enabled directly by Submitt for checkout and subscription plan changes. Customers do not need a separate tax toggle. The actual tax calculation and collection depend on the Stripe account's Tax configuration, registrations and the customer's billing location.

Live Stripe pricing

Stripe is the runtime source of truth for Submitt plan pricing. The configured STRIPE_PRICE_* values are permanent anchors used only to identify each plan's Stripe Product. Submitt discovers the newest active monthly Price on that Product, caches it briefly, and uses it for pricing pages, checkout, and plan changes.

Creating a new active monthly Price in Stripe therefore does not require a Render redeploy or environment-variable change. Existing subscribers can remain on their historical Stripe Price while new checkouts use the newest active Price. For explicit selection when several active monthly Prices exist, set submitt_plan_key metadata to the Submitt plan key on the desired Price or transfer the anchor Price's lookup key to the replacement Price.

Subscription provisioning

The browser success screen is informational. Submitt grants entitlement only after Stripe's verified billing events confirm the correct customer, plan/Price ID, active subscription and paid initial invoice. This protects against interrupted redirects or manually opening a success URL.

Server-slot management

After subscription activation, use the server selector to decide which paid subscription supplies the license for each Discord community. If several subscriptions have unused capacity, Submitt lets the billing owner choose the exact license pool during assignment. Installing a bot does not by itself consume a paid slot.

Releasing a server only removes that server-to-subscription assignment. It does not cancel the Stripe subscription, stop recurring billing, or delete the server's stored Tickets, Applications, settings, transcripts or history. The released paid slot simply becomes available for another server.

If a server has no active assigned license, Submitt freezes licensed functionality for that server: Ticket/Application buttons, menus and modals, slash commands, Reaction Roles, moderation automation and other licensed bot workflows stop processing until a license is assigned again. Existing Discord channels and stored Submitt configuration remain intact.

Changing your payment method

Open Dashboard → Subscription → Change payment method. The new method is collected securely through Stripe Elements and, after confirmation, becomes the customer default and is applied to every non-terminal Submitt subscription on that Stripe customer so future renewals use the updated card.

Upgrading

Capability upgrades—such as Premium to White Label or one server to three servers—may create an immediate prorated amount. Submitt uses Stripe's payment-gated subscription update behavior so the higher entitlement is not granted unless the required upgrade payment succeeds.

Downgrading

Changes that reduce server capacity or remove White Label are scheduled for the next renewal rather than stripping features you already paid for during the current billing period.

Server-limit reductions require owner selection first. If more servers are licensed than the target plan allows, Submitt refuses to schedule the downgrade until the subscription owner releases enough server slots. Submitt never chooses which communities to disable automatically. If Stripe is changed outside Submitt and creates an over-limit state, existing links are preserved so the owner can choose what to release, but Discord runtime actions, White Label routing/branding, and community-setting mutations pause until the subscription is back within its server limit.

White Label → Premium requires the official Submitt bot as a standby. Install the official bot on every affected White Label server before scheduling the downgrade. It remains passive while the custom bot is active. At the billing boundary, Submitt retires custom-bot launcher messages, republishes them through the official bot and switches the active identity without running both systems at once. An externally forced plan change without a standby receives a temporary handoff window instead of an immediate bot outage.

Cancel and resume

Cancellation is managed per subscription. Scheduling cancellation on one Premium 1 license does not cancel another Premium 1, Premium 3 or White Label subscription on the same Submitt account. Until the selected subscription reaches the end of its current paid period, its assigned servers remain entitled under the normal billing rules. If cancellation has not yet taken effect, use Resume on that specific subscription to restore automatic renewal.

Invoices

Recent Stripe invoices appear directly in Submitt. Where Stripe provides an invoice PDF, the dashboard exposes a download action without requiring the customer to open a separate Stripe portal.

Payment failures and grace behavior

If a renewal fails, Submitt synchronizes that Stripe subscription's status and can allow the configured past-due grace behavior. Other independent subscriptions on the same account are not disabled merely because one subscription needs payment attention. Customers may still purchase additional subscriptions; each Stripe subscription keeps its own billing and entitlement state.

Discord renewal notifications

For recurring renewal invoices, the Submitt bot DMs the owner of each currently licensed Discord server when Stripe confirms the renewal payment or reports that the renewal could not be completed. Unsuccessful-payment notices include a Contact Support button that opens ParadiseUtilities Support. Billing-method changes continue to be handled from the Submitt dashboard.

Promotion codes

Promotion codes are evaluated by Stripe. Customer-restricted, first-time-customer or usage-limited codes can still be rejected by Stripe even when the text is entered correctly. Submitt uses the customer's persistent Stripe Customer record so eligibility is evaluated consistently across checkout attempts.

Billing refresh

If the dashboard appears behind a Stripe change, use Refresh billing. Webhooks remain authoritative, but manual refresh is useful after bank authentication, a payment-method update or a recently resolved payment failure.