Enterprise proposal generator
FinVerge Sales Skills — Claude Code plugin that automates sales/marketing collateral (proposals, product decks, content campaigns) with a dual public/internal knowledge-base architecture
npx -y skills add himanisharrma/finverge-sales-skills --skill enterprise-proposal-generatorAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Generate tailored proposals for enterprise / large-merchant prospects (e-commerce, SaaS, D2C, NBFC, education, insurance, subscription, B2B marketplace, government). Use whenever the user mentions creating, drafting, preparing, or generating ANY proposal, pitch, deck, or presentation aimed at a merchant or enterprise prospect — even when they don't explicitly say "proposal". Triggers on phrases like "make a proposal for BeYoung", "enterprise pitch for [merchant]", "deck for our D2C client", "proposal for the SaaS company", "we're pitching Acme", "prepare for the merchant meeting", "enterprise merchant proposal", "proposal for [any merchant name]", and similar. Handles multi-product bundling (PG, NACH, Collect, Orchestrate), segment-specific positioning across 9 verticals, GMV-based pricing tiers, audience-specific framing (CFO, COO, VP Eng, VP Growth, Founder), merchant logo retrieval via Clearbit, FinVerge branding, and output in PPTX format (DOCX/Canva coming in a later iteration). Do NOT use this skill for bank proposals (use bank-proposal-generator) or single-product decks (use pg-product, nach-product, collect-product, orchestrate-product).
SKILL.md
12.9 KB, as published. Nobody here has run it
Enterprise Proposal Generator
A step-by-step guided skill that produces a tailored proposal for enterprise and large-merchant prospects. Architecture is hybrid — this SKILL.md guides Claude through gathering inputs and writing merchant-specific content; a deterministic Python renderer (shared/outputs/proposal_deck.py) then builds the 12-slide PPTX with consistent FinVerge branding.
Direction of the proposal
Enterprise proposals go FinVerge → Merchant. FinVerge is the vendor offering payments infrastructure; the merchant is evaluating us against alternatives (Razorpay, Cashfree, PayU, etc.). The cover tagline is "Built for Enterprise" (not "Banking Collaborations" — that's for banks).
When to use
Use whenever the user wants a proposal / pitch / deck for a merchant prospect:
- "Make a proposal for BeYoung"
- "Enterprise pitch for [SaaS company]"
- "Draft a deck for our D2C lead tomorrow"
- "Proposal for [NBFC] on NACH and PG"
Do NOT use this skill for:
- Bank proposals → use
bank-proposal-generator - Single-product decks (PG demo, NACH FAQ, etc.) → use the respective product skill (pg-product, nach-product, collect-product, orchestrate-product)
- Referral partner proposals → (future: referral-partner-proposal-generator)
Core design principle
Conversational, step-by-step. Ask one thing at a time. If the user provides some inputs upfront ("proposal for BeYoung, D2C, ₹5 Cr/mo GMV, PG+Collect, CFO audience, PPTX"), skip those steps and only gather what's missing.
Step 1: Merchant name + website domain
Ask:
Who's the merchant (display name), and what's their website domain?
The domain is used to fetch their logo via Clearbit. Example: "BeYoung, beyoung.in".
Normalize the merchant name to a lookup key (lowercase alphanumeric — "BeYoung" → "beyoung"). Check whether a logo is already cached by inspecting shared-assets/logos/merchants/INDEX.md. If not cached, note this for Step 7.
Step 2: Segment
Ask:
Which segment does this merchant fall into?
- E-commerce — online shopping, marketplaces
- SaaS — subscription software, cloud services
- D2C — direct-to-consumer brands (apparel, beauty, FMCG)
- NBFC — lending, EMI collections, financial services
- Education — schools, ed-tech, coaching, upskilling
- Insurance — premium collections, claims
- Subscription — any recurring-billing business
- B2B Marketplace — multi-seller platforms, payouts
- Government / PSU — fee collection, tax, BBPS
Read the corresponding file: assets/proposal-kb/segments/<segment-key>.md (e.g., d2c.md). This gives segment-specific positioning, pain points, recommended product mix, and typical objections.
Valid segment keys: ecommerce, saas, d2c, nbfc, education, insurance, subscription, b2b-marketplace, government.
Step 3: GMV range
Ask:
What's the merchant's approximate monthly GMV range?
- Under ₹50 L/month — Starter tier
- ₹50 L – ₹5 Cr/month — Growth tier
- ₹5 Cr – ₹50 Cr/month — Scale tier
- ₹50 Cr+ / month — Enterprise tier
GMV drives pricing in assets/proposal-kb/pricing-tiers-by-gmv.md. Map to a gmv_range key: under_50l, 50l_to_5cr, 5_to_50_cr, above_50cr.
Step 4: Products to propose
Ask:
Which FinVerge products should this proposal cover? Here's what's customer-sellable:
- PG (Payment Gateway 2.0) — digital + offline rails, 27+ banks
- NACH & Recurring — subscription, EMI, mandate lifecycle
- Collect (No-Code Platform) — Links, Pages, Buttons, Forms
- Orchestrate (Payment Orchestration) — multi-gateway routing, failover
Pick one or multiple. You can also include internal-only products (KYC, MerchantOS, Partner Dashboard) with a gap warning, or placeholder products (Collections, Connected Banking, BBPS COU, PA-P) — these will have
[TO FILL]markers in the output.
Product keys used with the KB loader: pg, nach, collect, orchestrate, kyc, merchantos, partner-dashboard, collections, connected-banking, bbps-cou, pa-p.
Step 5: Audience / stakeholder
Ask:
Who's the primary audience for this proposal?
- CFO / Finance — cost structure, settlement, reconciliation
- COO / Operations — ops efficiency, reporting, SLAs
- VP Engineering / CTO — API design, integration effort, observability
- VP Growth / CMO — checkout conversion, customer experience
- Founder / CEO — strategic differentiation, roadmap fit
- Mixed / Not sure — balanced executive framing
Read references/enterprise-stakeholder-profiles.md for what each role cares about. This shapes the emphasis in the Executive Summary and Why-FinVerge-for-Segment sections.
Map to primary_role key: cfo, coo, vp_eng, vp_growth, founder, mixed.
Step 6: Specific pain points / context (optional)
Ask:
Any specific context for this merchant? (Optional — say "none" to skip)
Examples:
- "Currently on Razorpay, considering multi-gateway to improve success rate"
- "Growing fast, need better mandate handling for subscription revenue"
- "Manual reconciliation across 3 gateways is killing the finance team"
- "Need white-label checkout for their D2C brand"
This feeds the Merchant Context section of the proposal.
Step 7: Output format
For now, only PPTX is supported (DOCX + Canva come in v0.8.0). If the user asks for DOCX/Canva, tell them we'll ship PPTX this time and the other formats are coming.
Step 8: Confirm inputs, then generate
Summarise and confirm before running any tools:
Here's what I'll generate:
- Merchant: BeYoung (beyoung.in)
- Segment: D2C Brands
- GMV range: ₹5 Cr – ₹50 Cr/month (Scale tier)
- Products: PG, Collect
- Audience: CFO
- Pain point: Manual reconciliation across 3 gateways
- Format: PPTX
Proceed?
Generation flow (run once confirmed)
1. Resolve merchant logo
If the merchant logo is already cached (shared-assets/logos/merchants/<key>.png), skip. Otherwise run:
python3 shared/fetch_merchant_logo.py "BeYoung" --domain beyoung.in
The fetcher tries Clearbit first (works for most merchants with a website), falls back to Google favicon. If both fail, the proposal still renders without the merchant logo and a gap is flagged.
2. Load reference content
Read (only as needed):
assets/proposal-kb/finverge-about.md— canonical company profileassets/proposal-kb/segments/<segment>.md— segment-specific positioning + pain points + recommended product mixassets/proposal-kb/pricing-tiers-by-gmv.md— pricing tier for the chosen GMV rangereferences/enterprise-language.md— B2B tone guide (no RBI-heavy language)references/enterprise-stakeholder-profiles.md— per-role framingreferences/proposal-sections.md— section structure + per-stakeholder emphasisreferences/compliance-clauses.md— relevant compliance content for selected productsreferences/deck-patterns.md— FinVerge house deck style
Use kb_loader.load_public(product, facet) for per-product content. DO NOT call load_internal() — this is a customer-facing output.
3. Write section content as a JSON blob
Assemble the following content, specifically tailored to the merchant, segment, and audience. Each field is plain prose (no markdown), 2-6 sentences unless otherwise noted.
{
"merchant": {
"display_name": "BeYoung",
"domain": "beyoung.in",
"segment": "d2c",
"gmv_range": "5_to_50_cr"
},
"audience": {
"primary_role": "cfo",
"secondary_roles": []
},
"products": ["pg", "collect"],
"sections": {
"executive_summary": "<3-5 sentence summary: who FinVerge is, why it fits this merchant, expected outcome. Tailored to the CFO audience and the merchant's stated pain.>",
"merchant_context": "<4-6 sentence framing of the merchant's business situation: their segment's common dynamics, the specific pain they raised in step 6, how FinVerge fits. No fluff.>",
"why_finverge_for_segment": "<4-6 sentence, segment-specific differentiators. Pull from segments/<segment>.md + FinVerge's proven capabilities. Concrete, not generic.>",
"next_steps": [
"<Concrete action item 1 — something FinVerge commits to>",
"<Concrete action item 2 — something the merchant needs to do>",
"<Concrete action item 3 — commercial / timeline alignment>"
]
},
"include_pricing": true,
"include_settlement_timelines": false,
"include_revenue_sharing": false,
"output_format": "pptx"
}
Save this blob as proposal_meta.json in the output directory (so the user can regenerate with tweaks later).
4. Invoke the renderer
python3 skills/enterprise-proposal-generator/scripts/generate_proposal.py \
--meta /path/to/proposal_meta.json \
--outdir ~/Downloads/enterprise-proposals/<merchant-key>-<YYYY-MM-DD>
The renderer:
- Validates the JSON against
assets/templates/proposal_meta_schema.json - Loads per-product KBs via
load_public() - Calls
shared/outputs/proposal_deck.pywhich produces a 12-slide PPTX - Surfaces any
[TO FILL]markers in KB content as gaps - Writes output +
gaps.md+ preserves theproposal_meta.jsonfor future regeneration
5. Report back to the user
Summarise:
Generated:
~/Downloads/enterprise-proposals/beyoung-2026-04-17/Proposal.pptxGaps to fill (N items): [list them]
What's in the deck (12 slides):
- Cover (BeYoung logo + FinVerge logo)
- Executive Summary
- About FinVerge (credentials)
- BeYoung Context
- Proposed Solution (PG + Collect overview)
- PG Deep-Dive
- Collect Deep-Dive
- Integration & Architecture
- Commercial Terms (if included)
- Compliance & Security
- Why FinVerge for D2C
- Next Steps
Want me to adjust any section or regenerate with different inputs?
Handling edge cases
- Merchant logo fetch fails: proceed without logo, flag as gap
- Product KB has many [TO FILL] markers: surface all of them in
gaps.mdso sales can edit the deck before sending - Internal-only product requested (KYC, MerchantOS, Partner Dashboard): warn that public content is [TO FILL] placeholder; still include at user's request
- Segment not recognised: ask user to pick from the 9 supported segments OR proceed with the "enterprise" generic segment (less tailored)
Reference files
references/enterprise-language.md— B2B enterprise tone (no RBI fluff)references/enterprise-stakeholder-profiles.md— CFO, COO, VP Eng, VP Growth, Founderreferences/proposal-sections.md— 12-slide structure + per-stakeholder emphasisreferences/compliance-clauses.md— universal clauses (copied from bank-proposal-generator)references/deck-patterns.md— FinVerge house deck style
Asset files
assets/proposal-kb/finverge-about.md— company profileassets/proposal-kb/pricing-tiers-by-gmv.md— GMV slab → MDR mappingassets/proposal-kb/segments/<segment>.md— 9 segment-specific positioning filesassets/templates/proposal-template.md— 12-section content skeletonassets/templates/proposal_meta_schema.json— JSON schema for AI content
Scripts
scripts/generate_proposal.py— orchestrator that validates meta + calls the shared renderer
Shared code reused
shared/kb_loader.py—load_public(product, facet)for product contentshared/brand.py—merchant_logo(name)+ design tokensshared/layout.py— all slide primitivesshared/slides/{cover, about, product, cta}.py— generic slide buildersshared/outputs/proposal_deck.py— the multi-product deck renderershared/fetch_merchant_logo.py— Clearbit-based logo fetchershared/version_check.py— stale-version auto-notify