CreatiSoul
Agency OS · Design
Standard Operating Procedures

SOPs — the playbook

Eight repeatable processes that carry an account from first touch to renewal. Each step names who owns it, what they do in the CRM, and where AI assists. These are proposed defaults drawn from how a marketing agency typically runs — the owner should confirm or edit each one before it becomes the house standard.

Whole page = PROPOSED defaults to adapt

The CRM objects referenced (Company, Contact, Deal, Pipeline, Stage, Activity) are live in CRM-1a; Lead, Engagement, Deliverable, Task, Invoice, Payment, Subscription are planned. The step sequences, owner roles, SLA timings and dunning cadence below are inferred — they are starting points, not final policy. Validate timings (first-response SLA, due/+3/+7/+14 dunning, renewal window) and role assignments against how CreatiSoul actually works, then we lock them as automations.

The eight procedures

Role who owns the step — owner / admin / member / viewer CRM action the object / action in the app AI assist what the AI layer does
1
Lead Intake & Triage PROPOSED — confirm

Every inbound becomes a clean, de-duplicated, owned Lead with a fast first response. No lead falls through the cracks; no duplicate company is created.

Sources website form · manual entry Target first response < 1 business hour Outputs Lead → Deal at "Lead In"
1
Capture the inbound
A website form submission or a manually-keyed enquiry lands in the Lead inbox with name, email/phone, company, service interest and message.
RoleSystem / member CRMNew Lead in inbox (status = new) AIParse free-text into structured fields; tag the likely service line
2
Dedup & match to an account
Check the new Lead against existing Companies/Contacts by domain, email and phone. If it matches, attach to that account instead of creating a duplicate.
RoleSystem → member confirms CRMLink to existing Company / Contact or flag "new" AIFuzzy-match duplicates; enrich firmographics from the website
Dedup rule (PROPOSED): exact email or domain match = auto-merge into the existing Company; fuzzy name match = surface for human confirm, never silent-merge.
3
Triage & assign an owner
Score the lead (service fit, budget signal, India vs. foreign, spam). Route to an owner by service line or round-robin; junk is marked disqualified.
RoleAdmin / owner CRMSet Lead owner + priority; spam → disqualified AISuggest fit score + best-match owner; auto-flag obvious spam
4
First response & convert to a Deal
Owner sends a personalised first reply and accepts the Lead — converting it into a Company + Contact + a Deal at stage Lead In in the New Business pipeline.
RoleLead owner (member) CRMConvert Lead → Company/Contact/Deal; log Activity AIDraft the personalised first reply from the enquiry + service template
First-response SLA (PROPOSED): reply within 1 business hour for India / matched timezone, same business day for foreign leads. A breach pings the owner, then escalates to admin.
Done: owned Deal at "Lead In", first touch logged
2
Qualification — BANT-lite PROPOSED — confirm

A quick, consistent read on whether a prospect is worth a proposal — checked against four signals on the discovery call, then a clean stage move.

Framework Budget · Need · Authority · Timeline Move Lead In → Qualified
1
Hold the discovery call
Run a structured discovery conversation — goals, current marketing, the four BANT signals — and capture notes against the Deal.
RoleMember / admin CRMLog meeting Activity on the Deal timeline AISummarise the call into structured BANT notes from a transcript / dictation
2
Score the four signals
Rate each signal and record the headline numbers on the Deal.
Budget
Can they fund the service line? Captured as oneOffValue / mrr + currency.
Need
Is there a real problem we solve, and which service line fits? Sets serviceLine.
Authority
Is the contact the decision-maker, or do we need another stakeholder?
Timeline
When do they want to start? Realistic close + kickoff date.
RoleMember / admin CRMSet serviceLine, mrr/oneOffValue, currency; flag foreign billing AISuggest a fit verdict + recommended service line & ₹ price band
3
Decide & move the stage
If three or more signals are solid, advance the Deal. If not, nurture or disqualify with a reason.
Qualified
Move Deal Lead In → Qualified; proceed to Proposal & Close.
Not yet
Keep at Lead In, set a nurture reminder, re-touch later.
Disqualify
Mark Deal status = lost with a lost-reason (no budget / no fit).
RoleAdmin / owner approves CRMAdvance Stage or set lost-reason
Done: Deal at "Qualified" with scope priced enough to propose
3
Proposal & Close PROPOSED — confirm

Turn a qualified deal into a scoped proposal, follow up persistently, and close it clean — always with a won-or-lost reason for the record.

Spans Qualified → Proposal Sent → Negotiation → Won Follow-up day 2 · 5 · 9 then close
1
Scope & price
Build the scope from the service-line template and the qualification notes; confirm one-off vs. retainer and the GST/currency treatment.
RoleMember / admin CRMConfirm oneOffValue / mrr, currency, serviceLine on the Deal AIDraft scope + deliverables list from notes & the service template
2
Send the proposal
Issue the proposal/quote to the contact; log the send and move the Deal to Proposal Sent.
RoleMember / admin CRMAdvance to Proposal Sent; log Activity; set follow-up AIGenerate proposal copy & a cover email tuned to the prospect
3
Follow up & negotiate
Work a disciplined follow-up cadence; once the prospect is actively discussing terms, move to Negotiation and lock GST treatment.
RoleMember → admin / owner CRMAdvance to Negotiation; revise quote; log touches AIDraft follow-up nudges; suggest objection responses & a revised quote
Follow-up cadence (PROPOSED): nudge on day 2, value-add on day 5, "still relevant?" on day 9; no reply after that → close as lost (reason: no response).
4
Close — won or lost
Record the outcome. Either path captures a reason for the pipeline analytics.
Won
Set Deal status = won. Automation flips the Company to isCustomer = true and opens an Engagement → triggers SOP 4 (Onboarding).
Lost
Set status = lost + a lost-reason (price / timing / competitor / no response) for win-rate analysis.
RoleOwner / admin CRMSet Deal status + reason; (won) auto Company → customer AI(Won) seed the kickoff brief; (lost) cluster lost-reasons into insights
Done: Deal closed with a reason; won → onboarding starts
4
Client Onboarding PROPOSED — confirm

A new customer goes from "signed" to "we're producing" fast and confidently — welcome, kickoff, brand foundation, access, and a live Engagement.

Trigger Deal won → automation Brand profile lands on the platform Target kickoff within 3–5 days
1
Welcome & intake
Send the welcome email with the onboarding intake (contacts, goals, assets request) and book the kickoff call.
RoleAccount owner (member) CRMLog welcome Activity; record kickoff meeting AIDraft the personalised welcome + a service-specific intake checklist
2
Kickoff call
Align on goals, scope, comms cadence, approval flow and who-does-what; set expectations for the first cycle.
RoleOwner + account owner CRMLog meeting Activity; capture kickoff notes AIGenerate the agenda; turn call notes into action items afterwards
3
Brand profile & assets
Collect brand guidelines, logos, prior creatives, personas and tone. Build the brand profile on the platform so the creative engine is grounded.
RoleAccount owner / admin CRMLink Company to its platform-client record via platformBrand-profile wizard + persona library run on app.csoul.cloud
Hand-off: brand profile, personas and winning-format prefs are created on the production platform (back of house). The CRM just links the Company to its platform-client so delivery can pull from it.
4
Access & permissions
Gather ad-account, page, analytics, hosting and CMS access (or get added as a partner) for the relevant service lines.
RoleAdmin / member CRMTrack access items as onboarding Tasks AIGenerate the per-service access checklist; flag what's still missing
5
Engagement created
Open the Engagement on the won service line with its first Deliverables & Tasks; hand to the delivery cycle (SOP 5).
RoleAccount owner CRMCreate Engagement → Deliverable → Task set AISeed first-cycle deliverables from the service-line template
Done: live Engagement, brand grounded, access in hand
5
Delivery — Retainer Monthly Cycle PROPOSED — confirm

The repeating engine for retainer service lines (Social, Meta, Google, SEO): plan → produce → QA → client approval → publish → report, every month, with creative pulled from the platform.

Cadence monthly loop · report feeds next plan Creative via platform engine
1
Plan the month
Set the month's calendar / media plan / content priorities from last cycle's results and the account goals.
RoleAccount owner (member) CRMOpen the cycle's Deliverables on the Engagement AIDraft the calendar / content themes from prior performance
2
Produce
Create the assets. Video / image creatives are generated on the production platform (campaign → brief → AI generation), then pulled back to the Deliverable.
RoleMember (creative) CRMTrack Tasks; attach produced assets to the Deliverable via platformAI video/image factory + winning-formats library produce the creatives
3
Internal QA
Review against brand, brief and platform specs before anything reaches the client; bounce back for fixes if needed.
RoleAdmin (reviewer) CRMSet Deliverable QA status; log review notes AIPre-flight check: brand-fit, copy errors, spec compliance
4
Client approval
Share the QA-passed set with the client; capture approvals / revision requests and loop fixes back through production.
RoleAccount owner CRMRecord client approval/revisions as Activity AIDraft the approval-request note; summarise client feedback into tasks
5
Publish / ship
Schedule/publish posts, set ads live, or ship the work to the client's channels per the plan.
RoleMember CRMMark Deliverable/Tasks shipped AIAuto-generate per-channel captions, UTM tags & scheduling slots
6
Monthly report
Compile results vs. goals and send the recap; it becomes the input to next month's Plan (the loop) and anchors the renewal conversation.
RoleAccount owner CRMClose cycle Deliverables; log report Activity AIGenerate the report narrative + next-cycle recommendations
Loop: report feeds the next month's Plan
6
Invoicing PROPOSED — confirm

Raise correct, compliant invoices — India GST (CGST/SGST vs IGST) or foreign export under LUT — in the right currency, sent and recorded against the account.

Doc proforma → tax invoice Pay Razorpay (India) · PayPal (foreign)
1
Generate the invoice
Raise a proforma (or tax invoice) from the won Deal / Subscription line items — one-off on close, retainers on the monthly cycle date.
RoleAdmin / owner CRMCreate Invoice with line items; link to Company & Engagement AIPre-fill line items from the deal scope; suggest the SAC code
2
Apply the correct tax treatment
The CRM picks the tax basis from the Company's GSTIN / state / country so it can't be set wrong.
CGST + SGST
Intra-state India — client in the same state as CreatiSoul. Tax splits into Central + State GST.
IGST
Inter-state India — client in a different state. Single Integrated GST line.
Export — LUT
Foreign client — export of services under LUT, zero-rated (no GST charged); invoice in the client's currency.
RoleAdmin / owner CRMAuto-select tax from GSTIN / state / country + currency AIFlag a likely mismatch (e.g. foreign client but GST applied)
Compliance note (PROPOSED): the rule chain — same-state → CGST+SGST, other-state → IGST, foreign → LUT zero-rated — should be the default the CRM enforces. Confirm CreatiSoul's home state, GSTIN and LUT status before this is hard-wired.
3
Send with a payment link
Email the invoice with the right gateway link — Razorpay for India, PayPal for foreign — and a clear due date.
RoleAdmin / member CRMSet Invoice status = sent; attach payment link; log Activity AIDraft the invoice cover note in the client's language/tone
4
Record the payment
When the gateway confirms, mark paid and reconcile; a missed due date hands off to SOP 7 (Dunning).
RoleSystem → admin reconciles CRMCreate Payment; Invoice status = paid (else → overdue) AIAuto-match gateway webhook to the open invoice; flag part-payments
Done: invoice sent & recorded; unpaid → dunning
7
Dunning / Collections PROPOSED — confirm

A polite-but-firm reminder ladder that recovers overdue invoices without burning the relationship — escalating in tone and seniority as days pass.

Cadence due · +3 · +7 · +14 → escalate AI auto-drafts each reminder
Reminder ladder — fires automatically off the Invoice due date
Each rung is auto-scheduled; AI drafts the message, the owner reviews-and-sends (or it auto-sends per policy). The whole cadence pauses the moment a Payment is recorded.
Due date
day 0
Gentle reminder
Friendly "invoice due today" note with the payment link re-attached. Assume it's an oversight.
RoleSystem → member CRMReminder Activity; Invoice stays sent AIDrafts the polite reminder
+3 days
overdue
First follow-up
"We notice this is now overdue" — confirm they received it and offer help with payment.
RoleAccount owner (member) CRMInvoice status → overdue; log Activity AIDrafts a slightly firmer follow-up
+7 days
overdue
Firm reminder + call
Direct email plus a phone call from the account owner; ask for a committed payment date.
RoleAccount owner + admin CRMLog call Activity; record promised-to-pay date AIDrafts firm email + a call script
+14 days
escalate
Escalate to owner
Owner steps in: final notice, optional service-pause warning for retainers, and a decision on next action.
RoleOwner CRMFlag account at-risk; note service-pause decision AIDrafts the final notice; summarises the full collection history
Stop condition: recording a Payment cancels all pending reminders and marks the Invoice paid. Timings are PROPOSED — confirm the +3 / +7 / +14 rhythm and whether reminders auto-send or wait for owner review.
Resolved: paid, written-off, or escalated to a recovery decision
8
Renewal & Churn-save PROPOSED — confirm

Protect and grow MRR: catch renewals early, read account health, make the right offer, and run a save-play when the relationship is at risk.

Pipeline Renewals & Expansion (live) Trigger ~30–45 days before renewal
1
Renewal due — open the deal
A Subscription nearing its renewal window auto-creates a Deal in the Renewals & Expansion pipeline at Renewal Due.
RoleSystem → account owner CRMAuto Deal at Renewal Due; assign owner AISurface upcoming renewals on a dashboard before they slip
2
Health check
Read the account: results delivered, activity gaps, response sentiment, payment behaviour. Classify Healthy / Watch / At-risk.
Healthy
Strong results, engaged, on-time payer → renew + look for expansion.
Watch
Mixed signals → re-anchor on value before pitching renewal.
At-risk
Disengaged / unhappy / late-paying → trigger the save-play.
RoleAccount owner / admin CRMSet account health flag; review Activity timeline AICompute a churn-risk score from activity gaps, results & payment history
3
Make the offer
Present the renewal — results-led for healthy/watch accounts, with a relevant cross-sell or expansion where it fits.
RoleAccount owner / admin CRMAdvance to In Discussion; adjust MRR / add service line AICompile a results recap + suggest the best-fit cross-sell
4
Renew, save, or churn
Land the outcome and record it for retention analytics.
Renewed / expanded
Deal status = won: renew the Subscription, update MRR, refresh deliverables, raise the renewal Invoice (SOP 6).
Saved
Concession / re-scope / pause-and-return agreed; log the save-play that worked.
Churned
Deal lost + churn reason; Company lifecycle → churned; run an offboarding/win-back note.
RoleOwner / admin CRMClose Deal won/lost; update Subscription, MRR, lifecycleStage AICluster churn reasons into trends; suggest win-back timing
Done: MRR renewed / grown, saved, or cleanly churned with a reason

How to use this page

Read each SOP as a draft house standard. Where a step looks right, we wire it into the CRM as an automation or required field; where it doesn't, edit the step, the owner role, or the timing and we adjust. The biggest things to confirm: the first-response SLA (SOP 1), the follow-up cadence (SOP 3), the GST/LUT default rules (SOP 6), the dunning rhythm (SOP 7), and the renewal window + save-plays (SOP 8).

Real vs. proposed: the CRM objects in teal exist today for Company / Contact / Deal / Pipeline / Stage / Activity (CRM-1a), and the deal-won → customer automation is live. Lead, Engagement, Deliverable, Task, Invoice, Payment and Subscription are planned. Every step sequence, SLA and cadence here is a proposed default for the owner to confirm.