Capital for operators.
Without the lender circus.

Business funding review, founder stack routing, and matching prep for operators who value speed, transparency, and sanity.

Soft review within 24 hours. No hard credit pull to get started.
No spam. No cold calls.

RhinoCash is not a lender. Requests are scored for fit, organized into the right lane, and moved to the fastest legitimate next step. Until a live partner lane is approved, RhinoCash keeps the request in review and tells you clearly what happens next. See Privacy Policy and Terms of Service.

What best describes you?

Soft review. No hard credit pull to get started.

← Back

What are you looking for?

Soft review. No hard credit pull to get started.

← Back

Timeline?

Soft review. No hard credit pull to get started.

← Back

Start your funding review.

We score your profile, prepare the right lane, and follow up with the fastest real next step.

Soft review. No hard credit pull to get started.

Submitting this form sends your request into the RhinoCash matching queue with first-party attribution, lane prep, and future routing context according to our Privacy Policy.

← Back

Request received.

We received your request. RhinoCash has scored it, queued it for matching, and will follow up with the fastest real next step within 24-48 hours.

Soft review only. No hard credit pull was made.
Check your email for next steps.

What type of business?

We'll match you with relevant credits, tools, and grant opportunities.

← Back

What stage?

← Back

Here's your stack.

Tracked founder programs and operator tools matched to your profile.

These offers route through RhinoCash first. Right now they land on official provider pages with attribution attached, and they can switch to partner or referral lanes later without changing the founder flow.

← Back

Your Founder Stack is ready.

Enter your email to receive the full stack, tracked apply links, and your top next step.

Send the stack to your inbox

RhinoCash will package your matched programs with routed links so you can return to them later without losing attribution.

Email clicks stay on the RhinoCash route layer first, then continue to the provider with email attribution attached.
← Back

Check your inbox.

Your Founder Stack is on the way. You can still use the tracked links below right now.

Check your inbox. Your Founder Stack is on the way with routed application links and your matched program lineup.

What do you offer?

Select all that apply.

← Back

Funding types offered

← Back

Let's connect.

We'll review the lane fit and reach out within 48 hours.

← Back

Application received.

We’ll review your profile and reach out within 48 hours. RhinoCash stages partner lanes before activating live routing.

'; const bodyText=[ subject, '', greeting, '', 'Based on your '+profile+' profile, RhinoCash matched the founder stack below.', '', offerLinksText, '', 'Open your top match: '+primaryCtaUrl, '', 'RhinoCash' ].join('\n'); return { subject:subject, preheader:preheader, profile:profile, offerCount:offers.length, primaryCtaUrl:primaryCtaUrl, offerLinksHtml:offerCardsHtml, offerLinksText:offerLinksText, bodyHtml:bodyHtml, bodyText:bodyText }; } function setActiveStep(id){ document.querySelectorAll('.step').forEach(function(step){ step.classList.remove('active'); }); const next=document.getElementById(id); if(next) next.classList.add('active'); } function captureChoice(stepId,label){ if(stepId==='step2') state.funding.stage=fundingStageMap[label]||label; if(stepId==='step3') state.funding.funding_type=fundingTypeMap[label]||label; if(stepId==='step4') state.funding.timeline=timelineMap[label]||label; if(stepId==='step10') state.stack.vertical=stackVerticalMap[label]||label; if(stepId==='step11') state.stack.stage=stackStageMap[label]||label; if(stepId==='step20') state.partner.partner_type=partnerTypeMap[label]||label; if(stepId==='step21') state.partner.funding_types=label; } document.addEventListener('click',function(event){ const button=event.target.closest('button'); if(!button) return; const step=button.closest('.step.active'); if(!step) return; captureChoice(step.id,normalizeText(button.textContent)); },true); function postLead(url,payload){ if(!url) return; const sinkName='rhinohookframe'; let sink=document.querySelector('iframe[name="'+sinkName+'"]'); if(!sink){ sink=document.createElement('iframe'); sink.name=sinkName; sink.style.display='none'; document.body.appendChild(sink); } const form=document.createElement('form'); form.method='POST'; form.action=url; form.target=sinkName; form.style.display='none'; Object.entries(payload).forEach(function(entry){ const input=document.createElement('input'); input.type='hidden'; input.name=entry[0]; input.value=entry[1]==null?'':String(entry[1]); form.appendChild(input); }); document.body.appendChild(form); form.submit(); window.setTimeout(function(){form.remove()},0); } function getValues(form){ return Array.from(form.querySelectorAll('input,select,textarea')).map(function(field){ return normalizeText(field.value); }); } function submitFunding(){ const form=document.querySelector('#step5 form'); if(!form) return; const values=getValues(form); const profile={ stage:state.funding.stage||'', funding_type:state.funding.funding_type||'', timeline:state.funding.timeline||'', monthly_revenue:revenueMap[values[3]]||values[3]||'', time_in_business:businessAgeMap[values[4]]||values[4]||'' }; const payload={ form:'funding', first_name:values[0]||'', email:values[1]||'', company:values[2]||'', stage:profile.stage, funding_type:profile.funding_type, timeline:profile.timeline, monthly_revenue:profile.monthly_revenue, time_in_business:profile.time_in_business, timestamp:new Date().toISOString() }; Object.assign(payload,buildCommonMeta('funding'),computeFundingAutomation(profile)); postLead(RC_CONFIG.funding,payload); } function submitStack(){ const form=document.querySelector('#step13 form'); if(!form) return; const values=getValues(form); const emailAssets=buildStackEmailAssets(values[1]||''); const payload={ form:'stack', email:values[0]||'', company:values[1]||'', vertical:state.stack.vertical||'', stack_stage:state.stack.stage||'', stack_profile:emailAssets.profile, stack_offer_count:emailAssets.offerCount, email_delivery_intent:'send_founder_stack', email_template_version:'founder_stack_v1', email_template_url:buildAbsoluteUrl('/email/stack-template.html'), email_subject:emailAssets.subject, email_preheader:emailAssets.preheader, email_primary_cta_url:emailAssets.primaryCtaUrl, email_offer_links_html:emailAssets.offerLinksHtml, email_offer_links_text:emailAssets.offerLinksText, email_body_html:emailAssets.bodyHtml, email_body_text:emailAssets.bodyText, email_utm_source:'rhinocash', email_utm_medium:'email', email_utm_campaign:'founder_stack', timestamp:new Date().toISOString() }; Object.assign(payload,buildCommonMeta('stack'),getMatchedStackSignals()); postLead(RC_CONFIG.stack,payload); } function submitPartner(){ const form=document.querySelector('#step22 form'); if(!form) return; const values=getValues(form); const payload={ form:'partner', company:values[0]||'', contact_name:values[1]||'', email:values[2]||'', partner_type:state.partner.partner_type||'', funding_types:state.partner.funding_types||'', timestamp:new Date().toISOString() }; Object.assign(payload,buildCommonMeta('partner'),computePartnerAutomation()); postLead(RC_CONFIG.partner,payload); } function maybeSubmit(id,path){ if(id==='step6'&&path==='funding') submitFunding(); if(id==='step14'&&path==='stack') submitStack(); if(id==='step23'&&path==='partner') submitPartner(); } function scoreStackOffer(offer){ let score=0; if(offer.verticals.indexOf(state.stack.vertical)!==-1) score+=3; if(offer.stages.indexOf(state.stack.stage)!==-1) score+=3; if(offer.verticals.indexOf('*')!==-1) score+=1; if(offer.stages.indexOf('*')!==-1) score+=1; return score; } function getStackOffers(){ const vertical=state.stack.vertical; const stage=state.stack.stage; return stackCatalog .filter(function(offer){ const verticalMatch=offer.verticals.indexOf('*')!==-1||offer.verticals.indexOf(vertical)!==-1; const stageMatch=offer.stages.indexOf('*')!==-1||offer.stages.indexOf(stage)!==-1; return verticalMatch&&stageMatch; }) .sort(function(a,b){return scoreStackOffer(b)-scoreStackOffer(a)}) .slice(0,6) .map(enrichStackOffer); } function stackSummary(){ return [state.stack.vertical,state.stack.stage].filter(Boolean).join(' • '); } function stackCardMarkup(offer){ const actionLabel=(offer.monetization||'official_fallback')==='referral_live' ? 'Open Partner Offer' : 'Open Routed Offer'; return '
' + ''+offer.tag+'' + '
'+offer.name+'
' + '

'+offer.copy+'

' + '
'+actionLabel+'
' + '
'; } function renderStackResults(){ const offers=getStackOffers(); const summary=stackSummary(); const noteText=summary ? 'Matched for '+summary+'. Start with the top two offers, then layer the finance stack once you know the operating footprint. RhinoCash keeps the outbound route history centralized so partner links can drop in later without breaking the stack.' : 'Matched to your current founder profile.'; ['stack-profile-note','stack-profile-note-sent'].forEach(function(id){ const node=document.getElementById(id); if(node) node.textContent=noteText; }); ['stack-grid','stack-grid-sent'].forEach(function(id){ const node=document.getElementById(id); if(!node) return; node.innerHTML=offers.map(stackCardMarkup).join(''); }); } function go(id,path){ hist.push(id); setActiveStep(id); if(id==='step12'||id==='step14') renderStackResults(); maybeSubmit(id,path); } function goBack(){ if(hist.length>1){ hist.pop(); setActiveStep(hist[hist.length-1]); } } ensureSessionId(); getAttribution(); const canvas=document.getElementById('canvas'); const ctx=canvas.getContext('2d'); let W,H,pts=[]; const accentRGB='255,228,54'; const dpr=Math.min(window.devicePixelRatio||1,1.5); function resize(){ W=canvas.clientWidth; H=canvas.clientHeight; canvas.width=Math.max(1,Math.floor(W*dpr)); canvas.height=Math.max(1,Math.floor(H*dpr)); ctx.setTransform(dpr,0,0,dpr,0,0); } class P{ constructor(){this.reset(true)} reset(init){ this.x=Math.random()*W; this.y=init?Math.random()*H:H+8; this.r=Math.random()*2.25+0.75; this.vy=Math.random()*0.45+0.12; this.vx=(Math.random()-0.5)*0.25; this.o=Math.random()*0.48+0.26; } tick(){ this.y-=this.vy; this.x+=this.vx; if(this.y<-8)this.reset(false); } draw(){ const fadeStart=-W*0.02; const fadeEnd=W*0.34; const edge=Math.max(0,Math.min(1,(this.x-fadeStart)/(fadeEnd-fadeStart))); const alpha=this.o*Math.pow(edge,1.35); if(alpha<=0.01)return; ctx.beginPath(); ctx.arc(this.x,this.y,this.r,0,Math.PI*2); ctx.shadowBlur=16*edge; ctx.shadowColor='rgba('+accentRGB+','+(0.44*edge)+')'; ctx.fillStyle='rgba('+accentRGB+','+alpha+')'; ctx.fill(); ctx.shadowBlur=0; } } function init(){ resize(); pts=Array.from({length:195},function(){return new P()}); } function loop(){ ctx.clearRect(0,0,W,H); pts.forEach(function(p){p.tick();p.draw()}); requestAnimationFrame(loop); } window.addEventListener('resize',resize); init(); loop();