Billing manager
- Chooses the paid seat quantity
- Assigns, resends, or revokes invitations
- Changes subscription quantity and receives prorated adjustments
- Does not consume access unless assigned a seat
Ruba product infrastructure
Separate the person who pays from the people who claim product access.
One billing manager purchases capacity, then assigns it to teammates. Ruba keeps quantity, invitations, claims, benefits, and proration connected.
Architectural boundaries
Capability matrix
The subscription stays aligned with the active team and applies proration when paid quantity moves.
A claimed seat keeps its benefits; additional capacity is purchased through another order.
Capability matrix
Every seat uses the same unit amount.
The total combines the quantity billed inside every tier range.
Crossing a threshold applies its rate to every seat in the purchase.
Execution workflow
The manager selects an email address or external customer ID.
An invitation exists but the recipient has not accepted it yet.
The member accepts and Ruba grants the product benefits.
Access is removed while the paid slot remains available for reassignment.
The paid seat count falls and the unused cycle portion receives a credit.
Onboard recipients from email or your own member flow.
Charge additions and credit reductions within the current period.
Let billing managers administer their team directly.
Drive assignments and synchronize product permissions.
List and mutate assignments through the API. React to seat.claimed, seat.revoked, and subscription.updated without polling Ruba for changes.
A subscription supports up to 1,000 seats and arbitrary seat metadata. Seat-based pricing is currently beta and can be enabled from Settings → General → Features.
Build with Ruba
Choose the contract and pricing model, then let customers assign access.