MRI Engage Market - Social · Social Eazie · Pixel House

Social Ads

How an agent orders a social media ad from their CRM, how the money flows through to Xero automatically, and what happens when a new user needs to be set up first. MRI owns the workflow and the accounts — Stripe, Facebook Ads and Xero. Pixel House delivers the ads through its platform.

Vault CRM Box & Dice MRI Eagle Pixel House iFrame Stripe (MRI account) Xero (MRI Eagle org) Meta (MRI Ads account)
01

Entry point & eligibility gate

The Pixel House iFrame sits inside all three CRMs — a button on the listing in Box & Dice, and a "Social Ads" tab in Vault and Eagle. When it opens, the CRM securely passes the agency, user and listing details. One check — does this user exist and are they set up? — decides which of two journeys they take.

Agent opens listing in CRM Listing button in Box & Dice · "Social Ads" tab in Vault & Eagle
iFrame boots with context SSO token → agency ID, user ID, listing data — token resolves whether the user exists
Account exists & onboarded?
Yes
Journey A — Ad builderFull order → pay → invoice flow 02–03
No
Journey B — Triage & onboardSelf-serve onboarding wizard 04
02

Journey A — onboarded agent orders an ad

The full journey, start to finish. Steps 1–4 happen in the iFrame; everything after Pay is automatic. Each step shows its owner — MRI owns the money and the books; Pixel House owns the platform and delivers the ads.

Agent (in CRM) Pixel House platform (fulfilment) Stripe — MRI account Xero — MRI Eagle org Client comms
1Build & orderinside the iFrame · ~3 minutes
01AgentPixel HouseChoose campaign type

Start from scratch or pick a saved preset — presets pre-fill goal, budget, audience and templates.

02AgentPixel HouseSet goal & performance

Traffic / Leads / Awareness, then budget tier — Bronze $150 · Silver $250 · Gold $350 · Custom, with duration and start date.

03AgentPixel HouseAudience, template & content

Location radius from the listing, demographics, creative template, headline / description / CTA pulled from listing data.

04AgentPixel HouseReview & order

Full summary with itemised price and a live preview of the ad creative exactly as it will appear in feed. Agent confirms — this is the point of purchase commitment.

PAY $250
Ad creative preview Order summary
2Pay & receipttransaction level · seconds
05StripeMRI · FinanceCard charged per transaction

The card is charged for this ad only, via Stripe on the MRI account. One ad = one payment with its own reference number.

💳  •••• 4242 — $250.00
Ref  SA-10428
06CommsMRI · FinanceStripe receipt sent to client instantly

Stripe emails the receipt — sent from Social Eazie — the moment the charge succeeds. The description is the property address, so the client can match the charge against VPA spend at a glance.

✉️  From: Social Eazie
9 McCutcheon Close — $250.00
Stripe receipt · Social Eazie
07Pixel HousePixel HouseAd submitted to Meta + live splash

Pixel House pushes the campaign to Meta via the MRI Facebook Ads account. On ordering, the agent sees a splash page — "Congratulations, your campaign is live!" — no ongoing status is surfaced in the iFrame.

🎉
Congratulations — your campaign is live!
Live splash page
3Invoice & reconcileautomated in Xero · same day
08XeroMRI · FinanceInvoice auto-generated

The payment automatically creates a tax invoice in the MRI Eagle Xero account — with the Stripe reference and the property address in the description so the client can match it against VPA spend.

INV-10428  ·  9 McCutcheon Close
$250.00 inc. GST
Xero invoice
09XeroMRI · FinanceAuto-reconciled against the transaction

When the Stripe payout lands in the bank, the reference number matches payment to invoice automatically. No manual bookkeeping.

Bank  SA-10428  $250.00
INV-10428  matched
10CommsMRI · Finance"Paid in full" invoice sent to client

The invoice is marked paid and a paid-in-full tax invoice is emailed to the client. Their paper trail is complete: receipt + tax invoice.

INV-10428  ·  Tax invoicePAID
Paid invoice email
4Live & reportingongoing while the campaign delivers
11CommsPixel HouseDaily campaign report

Once the ad starts delivering, a campaign performance report is emailed daily to the client who ordered the ad and to the agents on the property.

Daily report email
12Pixel HousePixel HouseLogin credentials issued

All users are sent login credentials to the platform, so anyone who prefers to self-serve can log in to view and manage their active campaigns directly.

🔒  Your login is ready
SET PASSWORD
Platform credentials
13AgentPixel HouseSelf-serve in the platform

Logged-in users see all their active campaigns — performance, spend and controls. Office and agent marketing campaigns also run here; they're not tied to a listing, so they can't be ordered through the CRM iFrame.

03

The money flow, step by step

The same flow as a table — ready to hand to engineering. One Stripe reference number ties the receipt, invoice and reconciliation together.

TriggerSystemActionClient sees
1Agent taps PayReview step, iFramePixel House → Stripe (MRI account)Create charge for order total with unique reference SA-{orderId}Processing state in iFrame
2Charge succeedsStripeTransaction settled at card level; webhook fired to Pixel HouseSplash page — "Congratulations, your campaign is live!"
3Charge succeedsStripe → EmailStripe emails its receipt directly to the client, sent from Social Eazie (sender name/brand changeable in Stripe). Description = property address for VPA reconciliationStripe receipt email (amount, card, property address, ref)
4payment.succeeded webhookPixel House → Xero APICreate ACCREC invoice in MRI Eagle org — line items + reference SA-{orderId}, contact = client, description = property address so the client can reconcile against VPA-allocated spend
5Stripe payout hits bank feedT+1–2 days typicalXeroBank transaction auto-matched to invoice via reference; invoice → Paid
6Invoice marked paidXero → EmailSend paid-in-full tax invoice to client"Invoice paid in full" email with PDF attached
Meta spend — Mesh card. Ads are paid to Meta with a Mesh card on the MRI side — separate from the client's payment. Money in (client) and money out (Meta) are two separate movements, reconciled together.
!If the card fails. A warning shows on screen with the reason straight from Stripe — insufficient funds, lost or stolen card, and so on. The order is saved as a draft so the client can fix the card and launch without starting again.
04

Journey B — self-serve onboarding wizard

New users get a seven-step setup wizard, opening with a short Marketing video that explains the product. Target: 10 minutes to their first ad — as long as they have access to the Facebook Page and a credit card. Missing either? The wizard hands them to the support team — see below. Every wizard step is owned by Pixel House.

1Product intro video
▶  Meet MRI Engage Market - Social
START ONBOARDING
A Marketing-produced video introduces the product — what MRI Engage Market - Social is, what it does and what happens next — before the client starts onboarding.
2Welcome & agency details
GET STARTED
Agency name, office, role — most of it pre-filled from the CRM token. Sets expectations: "3 steps, ~10 minutes, then you can run your first ad."
3Brand kit — logos & colours
Drop logo here (light + dark)
SKIP — USE CRM BRANDING
Logo upload with instant preview on a sample ad. Brand colours picked from the logo automatically, adjustable. Skippable — never block on assets.
4Connect Facebook
fContinue with Facebook
Business Manager linked
Page selected
Ad account permissions
iHow to find your Page ID — video
Meta OAuth: link Business Manager, pick the agency Page, grant ad permissions. The Facebook Page ID is required to add the Page to the system — an in-step video shows how to find it, owned by MRI · Marketing with Pixel House.
5Brand your templates
Template gallery rendered live with their logo + colours from step 2. They pick a starting set — these become their office's presets in the builder.
6Payment method & unlock
💳Add card for ad orders
You're ready to run ads
FINISH SETUP
Card stored in Stripe (MRI account) for transaction-level charging (Journey A step 5). With the card saved, setup is complete.
7Back in the iFrame — order the ad
🏠  9 McCutcheon Close — loaded
Facebook connected
Card pre-filled
GO TO AD BUILDER
With setup complete, the wizard routes the user back into the CRM iFrame — listing pre-loaded, Facebook connected and card pre-filled — dropping them straight onto Journey A's ordering steps (goal, budget, audience, creative) ready to publish. 02

The two hard gates — and what happens on "no"

Two steps can stop setup dead: connecting the Facebook Page and adding a credit card. No admin access to the Page, or the card belongs to the company? Then they can't finish setup or run an ad — and most will quietly give up. Both gates are tracked and supported below.

Gate 1 — Facebook Page connected? Page ID required — explainer video shows how to find it
Yes
Continue onboardingPage linked via Meta OAuth and Page ID captured — straight on to templates and payment.
No
Blocked — can't finish setup or run an adNo admin access to the Page, or Page ID unknown. The failure is logged with the reason, progress is saved, and Get Support is offered on the spot.
Gate 2 — credit card added? Often a company card the user doesn't hold
Yes
Onboarding complete — builder unlocksCard stored in Stripe (MRI account); first ad in ~10 minutes.
No
Blocked — can't finish setup or run an adThe card sits with the office or finance team. The failure is logged, progress saved, and support follows up to bring the card holder into the loop.

Catching the exit — tracking, support and the Page ID video

Pixel HousePixel HouseTrack entry & exit

Every user entering setup is tracked, step by step. If they hit a gate or leave, the exit is logged with the reason and they land in a follow-up queue — so the team can reach out before "too hard" becomes never.

Pixel HousePixel HouseGet Support button + form

A Get Support button on every step opens a short form — details pre-filled, one dropdown for the blocker (Facebook access · company card · branding · other) — and raises a ticket for email and virtual-meeting follow-up.

GET SUPPORT
Pixel HouseMRI · Marketing Pixel HousePage ID explainer video

Connecting needs the Facebook Page ID. A short video inside the Connect Facebook step shows exactly where to find it — removing the most common Gate 1 failure. Produced by Marketing with Pixel House.

Video · How to find your Facebook Page ID
05

Failure states & open questions

Edge cases to design for

!
Card declined at orderA warning shows on screen with the failure reason passed directly from Stripe — insufficient funds, lost or stolen card, etc. The ad order is saved as a draft so the client can resolve the card issue and launch without rebuilding.
!
Payment works but Xero failsRetry the invoice automatically; alert the team if it isn't fixed within an hour. The client already has their receipt, so nothing is missed.
!
Bank match failsUnmatched payments go to a queue in Xero. The paid-in-full email only sends once the match is confirmed.
!
Meta rejects the ad after paymentAuto-refund or credit policy needed — refund triggers a credit note in Xero against the same reference.
!
Client runs the wrong amountToday this is manual: an email goes to Melanie Magri, who refunds the client via Stripe. Longer term: a self-serve "cancel or change order" option that refunds automatically, stops or corrects the ad on Meta before spend starts, and creates a matching credit note in Xero.
!
Facebook connection expiresSpot it when the iFrame opens and show a one-click "Reconnect Facebook" banner — rather than failing when the ad is published.
!
Same user, different CRMUsers are matched by agency + email, so setup done in Vault carries over to Eagle and Box & Dice.

Open questions for the team

Onboarding model — resolved. Setup is done once, by one user, and applies to the whole organisation. The main roadblocks are access — no credit card, no Facebook Page access, or unfinished branding — all handled through the onboarding support path (04).
Q1Who is the invoice contact in Xero — the individual agent, the office, or the agency entity? Affects contact records and statements.
Q2Refund policy when Meta rejects an ad — auto-refund, account credit, or manual review? Drives the credit-note flow.
Q3Does the wizard need an approval step for brand assets (franchise compliance), or is self-serve truly self-serve?
Q4Should the receipt (step 6) and paid invoice (step 10) be two emails or consolidated? Two is more standard; one is less noise.
Q5How long can a client cancel or change a wrong order — any time until the ad starts running, or a fixed window (e.g. 2 hours) before it goes to Meta? This decides when the ad is sent to Meta, and when the manual refund process can be retired.
06

Commercial reporting — the monthly cycle

Monthly recurring · first week of the new month

After each month closes, MRI runs and owns the monthly tracking and ad-spend report and shares it with Pixel House in the first week of the new month. Pixel House runs its own internal report, the two are reconciled into one approved dataset, and the numbers flow to sales — with insights looping back to pre-sales.

Day 1MRI monthly tracking & ad-spend report

MRI runs and owns the monthly tracking and ad-spend report — agency, agent, property, spend, published date and amount from Stripe/Xero — and provides it to Pixel House in the first week of the new month.

Master report → Pixel House MRI · Finance
Day 1Pixel House internal report

Pixel House runs its own internal report from the platform, purely for reconciliation — checking their activity against MRI's master report.

Internal reconciliation report Pixel House
Day 2Reconciliation

The two reports are matched by the SA-{orderId} reference and aligned against previous-month usage. Exception checks required — mismatches route to a variance queue.

Approved reconciled dataset MRI · Finance Pixel House
Day 3Sales booking entry

MRI shares client spend details with sales for booking entry and visibility — this feeds sales reporting.

Booking entry prepared MRI · Sales
Day 4Sales reporting loop

Sales reporting identifies adoption, activity, expansion and upsell opportunities — and loops back into pre-sales for the next cycle.

Growth opportunities → pre-sales MRI · Sales

Suggested additions to harden the cycle

S1Shared reference — both reports (MRI's master and Pixel House's internal) should carry the SA-{orderId} number so matching is automatic, not a manual spreadsheet job.
S2Refunds & credit notes — mid-month refunds (wrong amounts, Meta rejections) must appear in both MRI's master report and Pixel House's internal report, or the month will never balance.
S3Mismatch rules — agree who handles mismatches and how fast, before the first cycle runs (e.g. finance queue, fixed within 2 days).
S4Month-end cut-off — agree what "month closed" means: order date, charge date or payout date. Stripe payouts take 1–2 days, so a charge on the 31st can land in the new month.
S5Churn signal — flag orgs and offices with zero ads this month vs last. The at-risk list is as valuable to sales as the upsell list, and it falls out of the same dataset for free.
S6Automate the reports — both can be generated automatically and matched by a scheduled job, collapsing the first-week cycle to a day or two.
S7Partner settlement — if there's a revenue share between MRI and Pixel House, the approved reconciled dataset should drive that settlement too, so both sides invoice from one source of truth.
07

Existing users — migration plan

The whole programme in two pictures: four stages, and one five-step play used for every client. Hard deadline: everyone migrated and Social Eazie switched off by 31 July.

The programme — four stages

Phase 0 · get readyProduction readiness

Platform tested end to end — including Vault, Eagle and Box & Dice — the asset pack built (FAQ, guides, videos, email templates, Pixel House-owned knowledge base), and support + sales teams trained.

Readiness sign-off · Product
Phase 1Active clients first

Clients with paid campaigns in the last 12 months, active spend, multiple users and higher revenue. They adopt fastest, give real feedback, and validate the play before it scales.

Exit: live + no critical issues · CS
Phase 2 · sunset 31 JulyEveryone else, then sunset

Everyone else, in waves — medium usage → low → inactive → legacy — with more self-serve each wave. All users across and Social Eazie switched off by 31 July.

Social Eazie off · Product
Review · post-sunsetReview and tune

With everyone across: review adoption, support demand and feedback, confirm the switch-off is complete, and fold the lessons into everyday onboarding.

Post-migration review · Product + Partner Connect

The migration play — five steps, in dependency order

1 · pre-launchValidate

The system is tried and tested before anything is announced — CRM connections, logins, campaigns and lead flow — so no client ever hits an unproven system.

Platform validated MRI · Product
2 · pre-announceProvision

Every existing client is set up before the announcement — environment, branding, users, permissions. Anyone missed simply follows the new-client setup in Part 01.

All clients provisioned Pixel House
3Announce

Marketing announces the new MRI Engage Market - Social product — EDMs and CRM in-app Pendo announcements — with the video, FAQs, webinars and the Pixel House-owned knowledge base live on day one.

Clients notified · KB live MRI · Marketing Pixel House · KB
4 · in-appTrain in the flow

A video pop-up introduces the new product on first use. Running an ad is barely different from today, so training happens in the product, not in a virtual meeting.

Pop-up → first ad Pixel House
5Hypercare

Check ads are delivering, reports are arriving, invoices and receipts are landing, leads are flowing into the CRM — and that support itself is holding up.

Steady state MRI · CS Pixel House

Per-client exit test — three questions: first campaign live? No critical issues? Client satisfied? Yes to all three = migrated.

Who owns what — across the whole workflow

PRMRI Product — Peter Karanicolas, alongside Pixel House: product readiness, platform validation and technical remediation.
FIMRI Finance — the money end to end: Stripe account and charges, Social Eazie receipts, Xero invoicing and reconciliation, refunds (Melanie Magri), and the monthly tracking & ad-spend report — run and owned by MRI, shared with Pixel House in week 1.
MKMRI Marketing — launch announcement, EDMs and Pendo in-app messages, product intro and Page ID videos, FAQs, webinars and the Social Eazie farewell.
CSMRI Customer Success — the migration play end to end, adoption monitoring, and hypercare — jointly owned with Pixel House.
PCMRI Partner Connect — programme sponsor (Steve Grubmier), the sales reporting loop and executive reporting.
SUMRI Support — Tier 1 in-CRM support. All remaining support runs in-app, with in-app tier 1 passed through to Pixel House Support as owner. Escalations follow the shared matrix.
ONPixel House Onboarding — the wizard end to end: the two gates, Get Support, and provisioning of environments, users and branding.
PHPixel House Platform — ad fulfilment on MRI's accounts, the in-app training pop-up, daily campaign reports, platform credentials, self-serve campaign management, its internal reconciliation report, the knowledge base (live by launch), and joint hypercare with MRI CS.
ACMRI Accounts — MRI owns the Stripe, Facebook Ads and Xero (MRI Eagle) accounts; Pixel House operates on them through its platform and APIs.
08

Simplified workflow — the whole journey on one line

The entire client experience end to end: one gate, six steps, and the money and reporting run automatically behind the scenes.

Client lands on the iFrame From Vault, Eagle or Box & Dice
Client onboarded?
Yes
Straight to the ad builderContinues on the flow below.
No
Onboarding firstWizard: brand kit, Facebook Page, credit card — with the two gates and Get Support behind it 04 — then joins the flow below.
01Builds the adGoes through the ordering flow in the iFrame — goal, budget, audience, creative.
02Adds credit cardCard details captured via Stripe. If the card fails, the Stripe reason shows on screen and the order is saved as a draft.
03Orders the adCard charged for this order; ad submitted to Meta.
04Congratulations!"Your campaign is live" splash confirms the order.
05Money handled automaticallyStripe sends the receipt, the invoice is created in Xero, reconciled, and the paid-in-full invoice follows.
06Live report to clientEmailed once the ad starts rendering — then daily to the client and property agents.
09

Review the Social iFrame

The real ad-builder — Create Campaign — rebuilt as one long form with the step wizard removed, so every section is visible at once. Embedded inline within this file, so it always renders (no external reference).

Click to review the iFrame — opens and collapses
10

Meeting actions — by owner

Actions agreed in this session, in two threads: product & launch, and the partner economics & reconciliation sequence.

A · Product & launch

PK · MRI Product

1Raise the Mesh card limit. Start the Zip process to lift the Mesh card from the current $25k cap to a realistic float — target $150k — referencing the existing $30k/month vendor contract, so ad purchases aren't disrupted as adoption grows.
2T&C checkbox on Pay Now. Contract-formation wording and a PDF T&C link must appear before the Pay Now button on every ad purchase (build with Pixel House).
3First migration cohort. Run the Social Eazie account report (~800 accounts) and flag inactive Meta links — active accounts form the first migration cohort.
4Boardroom launch doc. Update it with the decisions and plan of attack confirmed in this session.
5Integrate iFrame into CRMs: Vault, Box and Dice and Eagle iFrame integration - UAT and QA. 

MRI · Sales & Marketing

1Migration enablement. Join the migration comms and adoption campaign, ahead of Ascend.
2Case studies. Secure client case-study permissions, including stats from RT Edgar performance report (PK to provide)
3New brand announcement: Social Eazie to MRI Engage Market -Social. Marketing comms i.e. EDMs and in-app messaging. 
4Video for Onboarding workflow: Create explainer video to show how to find Facebook Page ID to add Facebook page to MRI Engage Market - Social meta account.
B · Partner economics & reconciliationruns as a sequence, top to bottom

SG · MRI Partner Connect

1Ownership. Confirm support and implementation sit with Pixel House.
2COS & split. Negotiate the cost-of-service (COS) line with Nick — deducted before the 50/50 nett split, with Nick compensated and MRI retaining full 50% booking recognition.
3Boardroom launch doc. circulate boardroom launch document to all key internal stakeholders.

PK & TM · Activity Report

1Build the monthly report. With Talib, marry Agency ID from the CRM to the MRI account manager; align the data/ops approach with Frances.
2Per-campaign detail. List campaigns, COGS, COS and nett earnings per campaign (final columns depend on where the partner agreement lands).
3Totals — the reconciliation basis. Total nett earnings per account manager and overall. Nett = earnings − COGS − COS; the partner share is 50% of nett.

MRI · Revenue Ops

1Booking. Apply the WhiteSpace methodology — Booking against nett earnings for each Account Manager.
2AM commission. Calculate on the nett-nett of MRI's 50% share.

MRI · Partner AP/AR

1Partner invoice. Receive the partner invoice for the 50% share plus any agreed COS, and raise a purchase order through the normal partner process.