Skip to main content
HOME>Use Cases>Price List Migration: Each Account Moves Once, at the Right New Amount
Use Case8 min read

Price List Migration: Each Account Moves Once, at the Right New Amount

Moving thirty wholesale accounts to a new price list means a disposition, an amount and sometimes a notice for each one. In a Kylon room, agents read HubSpot, Stripe and Mailchimp to propose them, and the revenue operations lead approves every change before a notice goes out.

Get started
Kylon TeamProduct

Why price changes go wrong between the decision and the notice

Retiring a price list sounds like a spreadsheet job. Each wholesale account on a monthly plan either migrates to the same plan at its new price, is remapped because its old plan no longer exists, stays on contract pricing until renewal, or is excluded because it is cancelling. The new monthly amount comes from the plan mapping table and the account's current quantities, and a notice goes to every account whose price actually changes.

The facts sit in four places. Owners and contract terms are in HubSpot, the live subscription and its amount are in Stripe, the billing contact's email status is in Mailchimp, and the mapping table is a Google Drive sheet that finance edits. Customers reply early, the pricing committee grants exceptions, and someone finds a mapping error halfway through. Each change is applied by hand, and the notice list drifts away from the decisions.

Who works in the room

People

  • Revenue operations lead

    Owns the migration plan and approves every disposition and every write to HubSpot

  • Account managers

    Call the accounts with the largest increases and send replies to customers

  • Pricing and finance

    Own the price list and the plan mapping table, grant exceptions and issue corrections

  • Lifecycle marketing manager

    Builds the notice schedule and sends the notice campaign from Mailchimp

Agents

  • RyanMigration analyst

    Reads each account in HubSpot, its Stripe subscription and its Mailchimp contact status, then proposes a disposition and a new monthly amount

    HubSpotStripeMailchimpGoogle Drive
  • AdaNotice schedule checker

    Compares the notice schedule row by row with the approved dispositions and lists every row that is missing, extra or wrong

    Google DriveHubSpot
  • FinCustomer correspondence

    Drafts replies to customers who write in and prepares the notice segment for marketing

    GmailMailchimpSlack

The team runs the migration in one room. Ryan is the default agent, so a question about an account's disposition or amount reaches it without anyone naming it. Anything about the notice schedule goes to Ada, which owns that review, and anything a customer will read goes to Fin. When Ryan finishes a re-run, it opens a new thread for Fin whose first message lists the changed accounts and the reason for each, so the correspondence starts from approved numbers.

The migration in seven steps

The rules sit in the migration folder and in the room guidelines, so every agent works from the same version. Each step ends with a person.

  • Agent works
  • Person decides
  • Arrives or gets recorded
Scroll sideways to see the whole flow.
StageWhat happensWho actsWho decides
First passEach in-scope account gets a disposition and, where its price changes, a new monthly amount from the mapping tableRyan, from HubSpot, Stripe and MailchimpThe revenue operations lead approves before any HubSpot field is written
Notice schedule reviewMarketing's schedule is checked against the approved list: migrate and remap accounts only, each once, with its true plan and amountAdaMarketing corrects the sheet and the lead confirms it
Early acceptancesAccounts that accept before the notice date are marked accepted early, with the approved amount unchangedRyan, then Fin for the replyThe lead approves the flag and the account manager sends the reply
Governance batchExceptions from the pricing committee are applied to the named accounts and no othersRyanFinance confirms each exception before it is written
Mapping correctionAccounts on the corrected plan are re-run, and only those whose result changes are updatedRyan, then AdaThe lead approves the changed records
Large increasesAccounts above the increase threshold get urgent priority so the account manager calls before the notice landsRyanThe lead approves the flags and account managers own the calls
Close-outA note on each account records its disposition, amount, effective date and any exceptionRyanThe lead signs off the migration
Stages of a price list migration. Accounts, amounts and thresholds in this example are illustrative.

Updates that arrive halfway through

Most changes arrive as replies. A cafe owner answers the courtesy email to say they accept the new price from this month. Fin works through the account manager's Gmail connection, which is checked on every call, finds the thread that customer actually wrote on and drafts a short confirmation there. The account manager sends it. Ryan marks the account as accepted early and leaves the approved amount alone, because accepting early does not change the price.

The mapping correction is the real test. Finance finds that one retired plan was mapped to the wrong new tier. Ryan re-runs only the accounts that were on that plan, writes a new result where it differs, and leaves the rest untouched. Ada then checks the notice schedule again, because a remapped account with a new amount needs a corrected row before marketing sends anything. Accounts whose increase passes the threshold are set to urgent in HubSpot so their account manager calls first.

What the checks catch

  • A notice schedule that includes contract accounts or lists an account twice, when only migrate and remap accounts belong on it, each once
  • A confirmation drafted on a similar thread from another customer instead of the one where the acceptance arrived
  • Accounts rewritten after the mapping correction even though their plan and amount came out the same
  • Urgent priority set on accounts below the increase threshold, which buries the calls that matter
  • A billing contact whose address bounced in Mailchimp, so the notice would never reach the account

What stays with people

  • Approving each disposition and amount before HubSpot or Stripe changes
  • Sending every customer reply, which Fin prepares as a Gmail draft
  • Scheduling the notice campaign in Mailchimp once the segment is confirmed
  • Granting pricing exceptions and signing off the migration

Integrations in this workflow

Kylon is not a billing system or a CRM, and it does not replace either one. It sits across the tools the revenue team already uses and holds the coordination between them.

  • HubSpot holds the accounts, owners, contract terms, priority flags and close-out notes
  • Stripe shows each live subscription with its plan and amount, and Ryan schedules the new price there only after finance approves
  • Mailchimp holds the billing contacts and the notice segment, which Fin tags after approval and marketing sends
  • Gmail carries customer replies, answered through drafts an account manager sends
  • Google Drive keeps the price list, the plan mapping table, the committee's exception list and the notice schedule
  • Slack is where account managers post call outcomes and quick questions for the room

Where to start

Pick one price list and the accounts on it. Connect HubSpot and Stripe, put the mapping table in a shared Drive folder, and write the one rule that matters in the room guidelines: agents propose dispositions and amounts, and nothing is written to HubSpot or Stripe, and no segment is tagged in Mailchimp, until the revenue operations lead approves.

“The mapping changed once, and only the accounts it touched moved.”

Set it up with your agent

Open a new Room, add your agent and paste this prompt. It connects the tools, builds the App with you and asks for your rules one step at a time, and nothing goes out until a person approves it.

Set-up prompt

Your first company harness. Where humans and agents run your business together.

Get started

More Use Cases

View all

Card Chargebacks: Every Dispute Represented or Accepted on Its Evidence, Not Its Deadline

Each chargeback is represented, partly represented or accepted on what its Box evidence and Outlook refund history show, analysts are assigned by tier, and late evidence re-runs the rules. The disputes lead approves every status before Attio changes.

Retail & e-commerceFinance operations

Crowdfunding Reward Fulfillment: Pledges Placed in Waves That Stay Right as Holds Clear

Backer pledges are walked into fulfillment waves or holds in one Kylon room, with shipping and add-on amounts on each Notion page. Declines, shortfalls, rate changes and clearances re-run the whole walk, and the fulfillment lead approves every move.

Retail & e-commerceSupport & customer success