Bank proposal generator
Skill himanisharrma/finverge-sales-skills/plugins/finverge-sales-skills/skills/bank-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 bank-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 bank proposals for FinVerge products (NACH, PG, Collect Stack, Collections, SoftPOS, Orchestrate, Connected Banking, BBPS COU, PA-P). Use whenever the user mentions creating, drafting, preparing, or generating any kind of proposal, pitch, deck, or presentation for any bank — HDFC, ICICI, SBI, Axis, Kotak, Yes, IndusInd, Canara, PNB, BoB, Federal, IDBI, RBL, HDFC, any co-operative bank, any RRB — even when the user doesn't explicitly say "proposal". Triggers on phrases like "make a proposal for HDFC", "bank pitch", "bank deck", "draft something for Axis", "we need to pitch ICICI", "presentation for SBI on Collections", "prepare for the Kotak meeting", and similar. Handles product selection from the shared Product KB, compliance language (RBI/NPCI/PCI-DSS), stakeholder-specific framing (CIO, CTO, COO, CRO, Head of Digital, Head of Transaction Banking), bank logo retrieval (local-first, internet fallback with caching), FinVerge branding, and output in DOCX, PPTX, or Canva format.
SKILL.md
12.3 KB, as published. Nobody here has run it
Bank Proposal Generator
A step-by-step guided skill that produces a tailored bank proposal. The skill gathers inputs conversationally, resolves them against a shared Product KB and asset library, and generates the final document in the user's chosen format.
Direction of the proposal
Bank proposals always go FinVerge → Bank. FinVerge is the initiator and seller, inviting the Bank as a partner. The house cover tagline is "Banking Collaborations" — reinforcing partnership framing from slide 1. Do not write proposals as if the Bank is asking FinVerge for a service; write as FinVerge proposing a collaboration opportunity to the Bank.
When to use
Use this skill for any request involving a bank-facing sales document. Examples:
- "Make a proposal for HDFC Bank"
- "Draft a pitch deck for ICICI for Collections"
- "Axis is meeting us next week, need a presentation"
- "Put together something for SBI on NACH and PG"
Do NOT use this skill for non-bank audiences (enterprise merchants, referral partners, direct merchants) — those will have their own dedicated skills in this plugin.
Core design principle
The skill is designed to be conversational. Ask one thing at a time, confirm before proceeding, and only call heavy tools (DOCX/PPTX generation, logo fetching) after all inputs are gathered and confirmed.
If the user provides some inputs upfront (e.g., "Make a PPTX for HDFC on Collections for the CIO"), skip those steps and only ask for what's missing.
Step 1: Gather bank name
Ask:
Which bank is this proposal for?
Once received, normalize the name (lowercase, remove "Bank"/"Ltd" suffix for lookup) and note both the display name (e.g., "HDFC Bank") and lookup key (e.g., "hdfc").
Quickly check assets/logos/INDEX.md to confirm whether a logo is already cached. Don't fetch yet — just note the status for Step 5.
Step 2: Gather product selection
Ask:
Which FinVerge products do you want to include? Here's what's available:
Ready to sell now: NACH, Collect Stack, PG 2.0 (digital modes) Enterprise features building: PG (Pod 1), Collect (Pod 1), Collections (Pod 1) In development: Collections, SoftPOS, Orchestrate, Connected Banking, BBPS COU, PA-P
You can pick one or multiple.
To see the full list of available products and their readiness status, read assets/product-kb/INDEX.md — it includes the product keys you'll use with the KB loader.
For each selected product, load its content from the plugin-wide shared KB via the kb_loader:
import sys
from pathlib import Path
sys.path.insert(0, str(Path(__file__).resolve().parents[3] / "shared"))
from kb_loader import load_public
# Customer-facing facets available for every product:
nach_external = load_public("nach", "external") # marketing positioning
nach_features = load_public("nach", "features") # capabilities table
nach_pricing = load_public("nach", "pricing") # pricing tiers
nach_compliance = load_public("nach", "compliance") # relevant compliance clauses
Valid product keys: pg, nach, collect, orchestrate, kyc, merchantos, partner-dashboard, collections, connected-banking, bbps-cou, pa-p.
If a product's external.md contains [TO FILL: markers, that product is not fully ready for customer proposals — flag to the user, and either exclude it from the deck or include it with visible gap markers.
Security guarantee: the load_public() function has a hardcoded whitelist. It can only access external, features, pricing, and compliance facets. It cannot return internal DELTA4 UBP analysis — that lives in a separate shared-kb-internal/ directory accessible only via load_internal(), which must never be called from customer-facing output code.
Step 3: Gather stakeholder / audience
Ask:
Who's the primary audience for this proposal?
- CIO / CTO — technical framing (APIs, integrations, security)
- COO / Head of Operations — operational framing (settlement, reconciliation, SLAs)
- CRO / Head of Risk & Compliance — risk framing (RBI, PCI-DSS, audit)
- Head of Digital Banking — customer experience & digital rails
- Head of Transaction Banking — corporate banking, collections
- Business / Sales — revenue impact, volume targets
- Mixed / Not sure — neutral executive framing
Read references/stakeholder-profiles.md for what each role cares about. This shapes the emphasis and language in each section.
Step 4: Gather requirements / context
Ask:
Any specific requirements, pain points, or context for this bank? (Optional — say "none" to skip)
Examples:
- "They want to modernize their NACH collections"
- "Currently using XYZ competitor, we're replacing them"
- "Focus on the cooperative banking segment"
- "They flagged concerns about settlement timelines"
This becomes the "Bank Context" section of the proposal. If none, use a generic bank context based on public info.
Step 5: Gather output format
Ask:
What format do you want the proposal in?
- PPTX — slide deck (most common for bank pitches)
- DOCX — formal document (for compliance/procurement review)
- Canva — designed presentation via Canva MCP (most polished)
- PDF — PDF via DOCX or PPTX conversion
Default to PPTX if the user is ambivalent.
Step 6: Optional inclusions
Ask:
Anything extra to include? (Optional)
- Per-product pricing — pulled from
load_public(product, "pricing")for each selected product- Cross-product pricing rules — from
assets/product-kb/pricing-rules.md(tier logic, discount guardrails)- Revenue sharing terms — from
assets/product-kb/revenue-sharing.md- Settlement timelines — from
assets/product-kb/settlement-timelines.md(per-payment-mode)- Case studies — pulled from each selected product's
external.md"case studies" section (if present)
Step 7: Confirm and generate
Summarize the inputs and confirm:
Here's what I'll generate:
- Bank: HDFC Bank
- Products: NACH, Collections
- Audience: Head of Transaction Banking
- Format: PPTX
- Includes: Pricing, Settlement timelines
Proceed?
Once confirmed, proceed to generation.
Generation flow
1. Resolve bank logo
logo_path = check assets/logos/INDEX.md for the normalized bank key
if not found:
run scripts/fetch_bank_logo.py "<bank name>"
logo_path = path of newly-downloaded file
If fetch_bank_logo.py fails (rare), proceed without logo and note it in output gaps.
2. Load content sources
- Company profile (canonical stats, credentials, awards):
assets/product-kb/finverge-about.md - Product data:
load_public(product, facet)from the plugin-wide shared KB (for each selected product, pullexternal,features,pricing,compliance) - Deck structure & narrative patterns (FinVerge house style):
references/deck-patterns.md - Stakeholder framing:
references/stakeholder-profiles.md(relevant section only) - Compliance language:
references/compliance-clauses.md(pick clauses relevant to selected products) - Bank language/tone:
references/bank-language.md - Proposal structure:
references/proposal-sections.md - Content skeleton:
assets/templates/proposal-template.md
3. Generate draft content
Following assets/templates/proposal-template.md as the outline, fill in each section using:
- Bank context (Step 4 input + public bank info if needed)
- Product details (from KB)
- Stakeholder-appropriate language (from profiles)
- Compliance clauses where relevant
- Formal bank tone throughout (no marketing fluff)
Note any [TO FILL: ...] placeholders from the KB — include them in the output with a clear "⚠ To be filled by sales team" marker.
4. Produce the output file
Depending on format chosen in Step 5:
For PPTX: use the anthropic-skills:pptx skill. Structure:
- Slide 1: Cover (bank logo + "Proposal for [Bank]" + FinVerge logo)
- Slide 2: Agenda
- Slides 3+: one section per topic from
proposal-sections.md - Final slide: Next Steps + Contact
For DOCX: use the anthropic-skills:docx skill. Format as formal document with:
- Header: bank logo (left) + FinVerge logo (right)
- Cover page, TOC, sections per
proposal-sections.md - Footer: "Confidential — [Bank Name]"
For Canva: use the Canva MCP (mcp__04e3e648-...:generate-design-structured). Pass the structured content as slides with FinVerge brand kit applied.
For PDF: generate as DOCX or PPTX first, then convert (LibreOffice headless or Canva export).
5. Apply branding
Invoke the finverge-branding skill to apply brand colors, typography, and tone. For Canva, apply the FinVerge brand kit directly.
6. Save and report
Save to: ~/Downloads/bank-proposals/<bank-key>-<YYYY-MM-DD>/
Proposal.pptx(or .docx / etc.)gaps.md— list of[TO FILL]items the user needs to complete
Report back:
Proposal generated:
~/Downloads/bank-proposals/hdfc-2026-04-17/Proposal.pptxGaps to fill (3 items):
- NACH pricing tier for Tier-2 banks (in Pricing section)
- Specific settlement SLA commitment (in Operations section)
- Integration timeline estimate (in Next Steps)
Want me to adjust anything?
Handling edge cases
- Bank name not recognized: ask the user to confirm the full legal name. Log the new bank to
INDEX.md. - All selected products have empty KB: tell the user the KB needs to be filled in first, but offer to generate a structural skeleton anyway.
- Logo fetch fails: proceed without logo, note it in gaps.
- Conflicting product info (e.g., different pricing across files): flag the conflict and ask the user which is authoritative.
Reference files (read only when needed)
references/deck-patterns.md— FinVerge house deck structure, visual style, narrative arcreferences/bank-language.md— tone, terminology, formal phrasingreferences/compliance-clauses.md— RBI, PCI-DSS, NPCI standard clausesreferences/proposal-sections.md— section structure and guidancereferences/stakeholder-profiles.md— per-role framing guide
Don't load all of them upfront — load only what's needed for the current generation.
Asset files
Per-product content: not here — loaded from the plugin's shared-kb/ via kb_loader.load_public(). See assets/product-kb/INDEX.md for the product key list.
Cross-cutting proposal references (this skill only):
assets/product-kb/finverge-about.md— company profile (stats, certifications, awards)assets/product-kb/pricing-rules.md— pricing tier logic + discount guardrailsassets/product-kb/settlement-timelines.md— per-payment-mode settlement cyclesassets/product-kb/revenue-sharing.md— rev-share models for partner arrangementsassets/product-kb/INDEX.md— documentation of the above + pointer to shared-kb/
Bank logos (shared across the plugin):
- Cached bank logos live at
../../shared-assets/logos/banks/<bank>.png - Use
brand.bank_logo("HDFC Bank")to resolve the path - If missing, run
python3 ../../shared/fetch_bank_logo.py "Bank Name"to download and cache
Templates:
assets/templates/proposal-template.md— content skeleton
Scripts
scripts/fetch_bank_logo.py— downloads and caches a bank logo. Usage:
Updatespython3 scripts/fetch_bank_logo.py "HDFC Bank"assets/logos/INDEX.mdon success.