AI Rule Engine Docs
Go to App

Partner Program

The partner program lets another business earn from bringing customers to the platform. A referral partner shares a link and earns a commission on what the customers it refers pay. A white-label partner resells the product under its own brand, pays a wholesale price for each customer it manages, and bills those customers itself.

Hidden until applications open

The program ships switched off. Until a super-admin opens applications, the Partner Program page says that applications are closed, and nothing about the program appears in an organization’s menus. An organization that already has a partner record always keeps its Partner Portal entry.

How it works

A partner is an organization. The organization’s Owners and Admins are its partner staff and run the partnership from the Partner Portal, which they open from the organization’s Administration menu. There is no separate partner role, and members with other roles cannot open the portal. An organization can hold only one partner record.

Every partner is on one of two billing models, fixed when it is approved:

ReferralWholesale (white-label)
Who pays usThe customer, at list price, through its own checkoutThe partner, at list price less its discount, for each customer it manages
What the partner earnsA commission on each invoice the customer pays through Stripe, for a set number of monthsThe difference between the price it charges its customers and its wholesale price
Who chooses the planThe customerThe partner
The brand customers seeAI Rule EngineThe partner’s own, when its terms include white-label branding

Everything specific to reselling, from branding and custom domains to setting customers’ plans, is on the White-Label Reselling page.

Tiers

You apply for a tier. The program ships with two, and super-admins can change their numbers, add tiers of their own (including private ones for negotiated deals), and retire tiers:

Referral PartnerWhite-label Partner
Billing modelReferralWholesale
What you earn20% of every invoice paid through Stripe, for 12 months20% off list price for every customer you bill
Platform feeNone$2,500 / month
Plans you can sell-Free, Pro and Team; a super-admin can add Enterprise (see Plans and billing)
Managed customer limit-Unlimited
White-label brandingNoYes
Custom domainNoYes
Hide “Powered by”NoYes

On the apply page a wholesale tier is labelled Reseller, and each tier card lists what it includes.

Your terms are a copy, not a link

When you are approved, the tier’s numbers are copied into your own terms, which the Overview tab of the portal shows under Your terms. A later edit to the tier changes new approvals only. Your terms change only when a super-admin changes them for you.

Applying

Open the Partner Program page and choose Apply to become a partner, or open Administration -> Partner Program on your organization and choose Apply. You need to be signed in.

Owner only

Only an organization’s Owner can apply, because the partnership binds that organization to commercial terms. The form lists only organizations you own. If you own none, create one or ask your organization’s owner to apply.

The form has five parts:

  1. Organization - the organization that becomes the partner.
  2. Tier - one of the tiers open for applications. The final terms are confirmed when you are approved.
  3. Your referral link - the Link name in your link: 3 to 32 lowercase letters, digits and hyphens, starting and ending with a letter or digit, with no double hyphen. The form checks availability as you type and shows the full link. A few names, such as admin, www and support, are reserved.
  4. About your business - Display name (2 to 60 characters, public: customers see it in “Managed by” notices), Company name (2 to 100), Website (an https address), Country, Customers you expect to bring in your first year (1 to 5, 6 to 25, 26 to 100, or More than 100), and What does your business do? (20 to 2,000 characters of plain text).
  5. Terms - accept the partner program terms, at the version shown, on behalf of the organization.

An application is refused when:

  • The program terms changed while the form was open. Review and accept the current version.
  • The organization already has a partner record. The form links to its portal instead.
  • A partner manages the organization as one of its customers. That partner has to release it first.
  • You already have another application waiting for a decision. One application per person is reviewed at a time.
  • The link name is taken or reserved.

If an application is rejected, the portal shows the reason. You can apply again once the waiting period has passed (30 days unless a super-admin has changed it); an attempt before then says from which date you can. Applying again replaces the earlier application, the form starts from what you sent last time, and you may choose a different link name.

Statuses

StatusWhat it means
Pending reviewApplied and waiting for a decision. Nothing public exists yet.
ApprovedApproved with terms that carry a monthly fee, and waiting for you to pay the first one. See Approval and activation.
ActiveLive: your link attributes new organizations, your branding shows, and you can manage customers.
SuspendedStopped by a super-admin, or automatically when your fee subscription ended unpaid. The banner shows the reason.
RejectedThe application was declined, with a reason. You can apply again after the waiting period.
ClosedEnded for good. Your link name stays reserved so nobody else can take it over. Until a partnership is closed its organization cannot be deleted, because the fee and the plans of the customers it manages bill that organization.

What each status lets you do:

WhatAllowed while
Edit your profilePending, Approved, Active
Change your link namePending, Rejected
Edit branding, upload a logo, claim a custom domainApproved (nothing is public yet), Active
Your link attributes new organizationsActive
Customers and your domain see your brandActive, Suspended, unless a super-admin has taken your branding down
Your customers sign in on your custom domainActive, unless your branding has been taken down
Create and release customers, change their plans, transfer creditsActive
New commissionsEarned normally while Active, withheld while Suspended, none otherwise

Branding and custom domains apply to white-label partners, managing customers to wholesale partners, and commissions to referral partners. A suspension does not touch your customers: they keep their plans, their subscriptions and your branding. The Profile card on the Overview tab holds your display name, company, website, country, description and contact person, who must be a member of the partner organization. While you can still change your link name, a Link name card appears there too. After approval the name stays fixed, because it is printed on your marketing and saved in your customers’ bookmarks.

Before approval the portal shows only the overview. Afterwards it has a Customers tab, then Commissions on the referral model, Billing on the wholesale model or any tier with a fee, Branding when your terms include white-label branding, and Domain when they include a custom domain.

Approval and activation

A super-admin approves you onto a tier, sometimes with numbers adjusted for you, and the result becomes your terms. What happens next depends on the platform fee:

  • No fee. You are Active as soon as you are approved.
  • A fee. You are Approved, and the banner reads You are approved - activate to go live. Choose Set up billing, then on the Billing tab Add a card (saving it charges nothing) and Activate and pay. The first month’s fee is charged to the card on the spot, you go live the moment it succeeds, and the fee renews monthly. If the payment does not complete, nothing changes and you can try again.

A white-label partner can prepare its branding and claim its domain while Approved; none of it is public until the partnership is Active.

If a fee payment fails, the Billing tab shows Your platform fee payment failed with an Update card button, and Stripe retries. If the fee subscription ends unpaid, the partnership is suspended automatically. Restart fee subscription on the same tab starts it again, after which a super-admin can reinstate you. The tab also lists your organization’s recent invoices, each with a View link to the invoice.

Your link is https://app.ruleengine.ai/?ref= followed by your link name. The Overview tab shows it under Your referral link (Your sign-up link on the wholesale model) with a copy button. The ref part works on any page of the app, not only the home page, so you can link straight to a feature.

How a visit becomes a customer:

  • The link is remembered in the browser. When someone opens a link from an Active partner, the browser remembers the referral for the attribution window, 30 days unless a super-admin has changed it, and the ref part is removed from the address bar.
  • The last link followed wins, on that device. Following a newer partner link in the same browser replaces the older one. A referral is kept per browser: a link followed on a phone does nothing for an organization created later on a laptop. An expired referral is discarded.
  • Attribution happens only when an organization is created. Signing up alone attributes nothing. The first organization created in that browser while the referral is remembered is the one attributed, including one the app creates automatically, and the referral is used up either way.
  • The first attribution wins and stays. An organization belongs to at most one partner. Following another partner’s link later changes nothing, and an existing organization is never attributed by following a link. Only a super-admin can move or detach an organization.
  • A custom domain is not a sign-up page. Only people a white-label partner already serves can sign in on its custom domain, and new organizations are created on the standard address, so new customers come through the partner’s link or are created by the partner. See Signing in on a custom domain.

On the wholesale model the partner sets up and pays for its customers’ plans, so while such a referral is remembered, Create Organization shows no plans to choose. In their place it says the partner company sets up the organization’s plan and pays for it.

An organization becomes a managed customer only with its creator’s agreement. Before it is created, the person is shown, by the partner company’s name:

  • What the partner sees in its portal: the organization’s name, its plan and plan status, how many runs it uses each period, and how many members it has.
  • That the partner chooses the plan and pays for it, so the organization cannot buy plans or credits from us directly.
  • That the partner runs its own site, and that signing in there lets the partner see and change everything they can in the organizations it serves.
  • A choice of whether the organization’s members may sign in through the partner’s site, allowed or blocked. Its owners and admins can change it later on the organization page.

Agreeing creates the organization as the partner’s managed customer, on the Free plan until the partner chooses another. Continue without the partner keeps the form open with the plans back, because the organization will be a direct customer that buys its own: choose a plan and select Create Organization, and you are not asked again. Let the partner manage it instead puts the partner’s offer back. An organization created without the partner carries no referral, so the partner never hears of it. A referral partner’s link needs no such step and keeps the plans, because a referred customer pays us itself.

The organization is not attributed when:

  • The link name is not valid, or the partner is no longer Active.
  • It is the partner’s own organization.
  • The person creating it is a member of the partner organization, in any role. Partners cannot refer themselves.
  • A wholesale partner has reached the limit on how many customers it may manage.
  • It already belongs to a partner.
A refused referral never blocks the sign-up

Whatever happens to the referral, the organization is created exactly as normal. When the referral is refused, nothing on screen says so; the refusal is recorded in the new organization’s audit log. The partner is not told about refused sign-ups.

Referred and managed customers

A referral partner’s link produces Referred customers. A wholesale partner’s link and domain produce Managed customers, as do the customers it creates itself; see Managed customers. The Customers tab lists both, each with how it arrived (Referral link, Signed up on your domain, Created by you or Assigned by us), the date since when it has been yours, and its plan, with a warning such as Payment past due when the plan’s payment is in trouble.

ReferredManaged
NameMasked: the first character of the organization’s id, “...”, and its last four charactersThe organization’s name
FiguresEarned (commission so far) and Commission ends (Never for a lifetime window)Runs this period and Members
Who buys plans and creditsThe customer, itselfYou; see Plans and billing

A referred customer pays us directly and owes you nothing beyond the referral, so you never see its name, its members or its usage, here or in the commission ledger. A customer that is no longer yours stays in the list as history, marked Released. It shows the Free plan and no usage; a referred one keeps what it earned you.

Commissions

Referral partners earn on the Commissions tab. Each invoice a referred customer pays inside its commission window adds one row to your ledger.

  • The window. It starts when the organization is attributed to you and lasts for your terms’ commission months (12 on the default tier, or for the life of the customer when set to 0). It is fixed at attribution, and an invoice counts by the date it was paid.
  • The base. What the invoice actually collected, less tax. Every line counts, the plan, seats and add-ons alike, and any discount is already out. Credit purchases never earn commission.
  • Only Stripe invoices. Commission is earned only on revenue we bill through Stripe. A referred customer billed through the Azure Marketplace earns you nothing, until a manual way to record that revenue exists.
  • The amount. The base times your commission percentage, rounded down to the cent. The percentage in your terms at the time is stored on the row, so a later terms change never rewrites an earlier row.
  • The hold. A row is On hold for the hold period after it is recorded, 30 days unless a super-admin has changed it, so a refund inside that time costs nothing. The ledger shows the date it ends; after that the row is Payable.

The tiles at the top total your ledger:

TileWhat it counts
Payable nowPast the hold period; paid out in the next payout.
On holdBecomes payable once its hold period ends.
Paid to youSettled by a payout.
WithheldEarned while suspended or under review.

A row is Withheld instead of on hold when it is earned while your partnership is suspended, or when it looks like a self-referral: the customer organization’s owner is a member of your partner organization when the invoice is paid. A super-admin reviews withheld rows and either releases them, so they become payable once their hold ends, or voids them. A Void row is never paid.

Amounts are never edited. When a customer is refunded, Stripe issues a credit note against an invoice, or a customer disputes a payment with their bank and the funds are withdrawn, a new row with a negative amount, marked (refund), takes back the matching share of that invoice’s commission, never more than it earned. If the original row is still on hold, the negative row is payable alongside it. If it has already been paid, the negative row is payable at once and comes off your next payout.

When that money comes back - the refund fails or is canceled, the credit note is voided, or the dispute is won - another row gives back exactly what the negative row took, payable on the same terms.

Filter the ledger by Status (All rows, Payable now, On hold, Withheld, Paid or Void) and by the date a row was recorded, with From and To.

Exporting the ledger

Export CSV downloads the rows matching the current filters, up to 10,000 rows, with one line per row: commission id, when it was recorded and becomes payable, status and reason, the customer (masked, as on screen), the invoice number and Stripe invoice id, the service period, currency, base amount, rate, commission and the payout that settled it. Cells that a spreadsheet would run as a formula are neutralized.

Payouts

Payouts are manual. The money is sent outside the product, by bank transfer, PayPal, Wise, check, or another method agreed with you, and a super-admin records each payout with its reference. A payout settles every payable row up to a cutoff date, negative refund rows included, and marks those rows Paid. The Payouts section of the tab lists each one with its amount, method, reference, the date it was sent and how many rows it settled.

The program’s minimum payout ($50 by default) is advisory: it decides which partners the payout queue flags, and blocks nothing. No bank or tax details are stored in the product.

For super-admins

Platform administrators run the program from the Partner Program section of Admin, which has two cards. Partners & Applications carries a badge with the number of applications waiting, and a pill when items need attention: fees past due, lapsed custom domains, or withheld commissions. Program & Pricing holds the program settings and tiers.

Program & Pricing

Until the first save, the screen shows a Built-in defaults banner: nothing is stored, and the program runs on the defaults below.

The Program settings card:

  • Accept new applications (off by default) - opening needs at least one active public tier and a final terms version. Publish the partner terms at the terms address first.
  • Terms version (default 2026-10-draft) - 1 to 40 characters. Applicants accept this exact version, so changing it makes any application form that is already open ask for the current terms. A version containing “draft” cannot be opened: saving with applications on is refused until it names the final terms. While applications are closed, the program page shows no terms version at all.
  • Terms address (default https://www.ruleengine.ai/partners/terms) - https only.
  • Attribution window (default 30 days) - 1 to 180. How long a browser remembers a followed link.
  • Commission hold (default 30 days) - 0 to 120. The time from a commission being recorded to it becoming payable.
  • Minimum payout (default 50 USD) - 0 to 10,000. Advisory: flags partners owed at least this.
  • Reapply cooldown (default 30 days) - 0 to 365. How long a rejected applicant waits.

Tiers lists up to 20 tier templates. Add tier offers a Referral tier or a Wholesale tier, Edit opens the tier, the arrows reorder them, and Retire takes a tier out of use: partners already on it keep their terms, and it can no longer be chosen for a new approval. Restore brings it back. A tier that has never been saved shows Not saved and can be removed outright.

The tier dialog:

  • Name (1 to 60 characters), Id (2 to 32 lowercase letters, digits and hyphens, starting with a letter; fixed once saved, because partners may hold it) and Description (up to 500 characters, shown to applicants on public tiers).
  • Billing model: Referral or Wholesale.
  • Referral: Commission, 0 to 50% with up to two decimals, and Commission months, 0 to 120, where 0 pays for the life of the customer.
  • Wholesale: Wholesale discount, a whole percent from 0 to 60; Managed customer limit, blank for unlimited; and Plans the partner can sell, which always includes Free, because a released customer drops to it. The default White-label Partner tier leaves Enterprise out. Allow it only when a partner’s agreement covers it: a managed Enterprise customer is capped at the included 25 author seats with no add-ons, and dedicated installs are never white-labelled.
  • Platform fee, 0 to 100,000 USD a month. With 0, a partner goes live at approval.
  • Minimum active customers, 0 to 10,000. Advisory: the partner list flags partners below it.
  • Rights: White-label branding, Custom domain and Hide “Powered by”. The last two need white-label branding, and referral tiers carry none of them, because referred customers are direct customers.
  • Availability: Public lists the tier on the apply page with its numbers; a private tier can only be assigned by a super-admin. Active lets it be chosen for new approvals.

Load defaults replaces the form with the built-in settings and tiers without saving. Save program saves everything at once. If somebody else saved after you loaded the page, the save is refused with a Changed by someone else banner; your edits stay on screen, and Reload fetches the saved version so you can make them again.

The Price list reads the Stripe prices actually charged, for each saved tier, monthly and annual. A wholesale tier shows its discounted price with the list price struck through, and a plan without a configured price shows Not configured. A price that is configured but that Stripe could not be read for just now, after an expired API key or an outage, shows Unavailable instead, with Try again. Base plan prices are changed in Stripe and in a release, never on this screen.

Partners & Applications

The list has a tab per status (Applications, with a count, then Approved, Active, Suspended, Rejected and Closed), plus All and Payouts due, and a search over name, company and link name. Rows are flagged Fee past due, Payout due with the amount, or Below customer minimum. Payouts due lists every partner owed money now, most owed first, marked Above minimum or Below minimum, each with Record payout.

A partner’s page

The buttons at the top follow the partner’s status:

ButtonWhenWhat it does
ApprovePendingChoose any active tier, private ones included, and optionally Override the tier’s numbers for this partner: the commission and its months, or the wholesale discount and managed customer limit (or No managed customer limit), and the platform fee. A preview shows the resulting terms. With no fee the partner is live at once; otherwise it activates by paying the first fee.
RejectPendingNeeds a reason, which the applicant sees.
SuspendActiveNeeds a reason, which the partner sees. Stops partner-side changes, new attributions and sign-in on the partner’s custom domain; existing customers keep their plans, subscriptions and branding on the standard address; new commissions are withheld.
ReinstateSuspendedReturns the partner to Active. A partner whose terms carry a fee needs a running fee subscription first.
Change termsApproved, Active or SuspendedCopies a tier into the partner’s terms again, with optional overrides. Only tiers of the same billing model can be chosen: a change of model is a closure and a new application.
Close partnershipApproved, Active or SuspendedPermanent, with a reason. Refused while the partner still manages active customers, so release them first. The fee subscription is canceled, and the branding, domain and referral link stop working. The link name stays reserved.

The Branding card has its own action. Take down branding, offered whenever the partner has or may have a brand, whatever its status, is the answer to a brand that impersonates someone, which a suspension deliberately leaves in place. It needs a reason, which the partner sees. The brand stops showing at once everywhere - to the partner’s customers, behind its link and on its custom domain, whose sign-ins stop being handed over - and its logo and favicon are deleted for good. The card then shows Taken down with the reason, when and by whom, and the header is flagged Branding taken down. The partner can still correct its name, colours and links, which the card shows for review, but cannot upload images. Lift takedown brings the saved name, colours and links back; the deleted images do not come back, and the partner can upload new ones. Both are recorded in the partner’s audit trail and the platform audit trail. If the images cannot be deleted, the branding stays down and you are asked to take it down again, which finishes the job.

The note on an approval or terms change goes to the audit trail and is not shown to the partner. When terms change, the billing effects apply to that one partner only:

  • A new fee takes effect at the fee subscription’s next renewal, without proration.
  • A fee of 0 waives it: a running fee subscription is canceled at the end of its period, and an approved partner still waiting to pay goes live at once.
  • A new wholesale discount applies to every subscription the partner pays for a customer from its next invoice, without proration.

The new terms are saved even if Stripe refuses part of the change. The page then shows The terms are saved, but these Stripe changes failed with the details, for you to resolve.

The Overview tab shows the terms, the application, customer counts, the commission totals, the custom domain, the latest branding with when and by whom it was last changed, and the platform fee. A pending application has nothing else. Once there is more, Customers and Commissions tabs appear:

  • Customers lists every organization linked to the partner, active and released, with nothing masked. Each active row has Detach, and a released one Attach again while the partner is Active. Detaching a managed customer drops it to Free at once and cancels the subscription the partner pays for it, with a prorated credit to the partner; detaching a referred one only stops its commission. Attach organization takes an organization id and links it, moving it from another partner if it has one. A managed customer can be attached only when it has no live subscription of its own. Attaching switches its auto-recharge and its add-ons off, and returns any extra author seats it bought to its plan’s included count. Release all managed releases every active managed customer at once and lists the outcome for each; it is how a suspended partner’s customers are released, and what a closure needs first.
  • Commissions shows the partner’s ledger with customers named, the same filters, and an unmasked Export CSV. A withheld row has Release to pending, and any unpaid row Void. Both need a reason, which is saved on the row, where the partner sees it in its own ledger.

Record payout records money already sent. Give a Cutoff date (rows payable up to the end of that day, in your own time zone, are settled), Sent on, the Method, a Reference such as the transfer or check number, and an optional Note. The dialog shows how many commissions the payout settles and their total; record it only if that is the amount you sent. If the commissions change before you record it, nothing is recorded and the dialog shows the new total instead. It is refused when nothing is payable up to the cutoff, when refunds bring the total to zero or less, or when the rows are in more than one currency, which needs one payout per currency. The reference names the payment: recording the same reference again, after an error or an interrupted run, finishes or shows that payout and never records a second one. A commission voided while its payout was being recorded stays out of the payout but is listed on it, because the money for it was sent.

Custom domains are activated from the same page; see Activating a domain.