1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[736],{1736:function(e,t,s){Promise.resolve().then(s.t.bind(s,8173,23)),Promise.resolve().then(s.t.bind(s,231,23)),Promise.resolve().then(s.bind(s,7736)),Promise.resolve().then(s.bind(s,5995))},8030:function(e,t,s){"use strict";s.d(t,{Z:function(){return p}});var a=s(2265);let r=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),i=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,t,s)=>s?s.toUpperCase():t.toLowerCase()),n=e=>{let t=i(e);return t.charAt(0).toUpperCase()+t.slice(1)},l=function(){for(var e=arguments.length,t=Array(e),s=0;s<e;s++)t[s]=arguments[s];return t.filter((e,t,s)=>!!e&&""!==e.trim()&&s.indexOf(e)===t).join(" ").trim()},d=e=>{for(let t in e)if(t.startsWith("aria-")||"role"===t||"title"===t)return!0};var c={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};let o=(0,a.forwardRef)((e,t)=>{let{color:s="currentColor",size:r=24,strokeWidth:i=2,absoluteStrokeWidth:n,className:o="",children:p,iconNode:x,...h}=e;return(0,a.createElement)("svg",{ref:t,...c,width:r,height:r,stroke:s,strokeWidth:n?24*Number(i)/Number(r):i,className:l("lucide",o),...!p&&!d(h)&&{"aria-hidden":"true"},...h},[...x.map(e=>{let[t,s]=e;return(0,a.createElement)(t,s)}),...Array.isArray(p)?p:[p]])}),p=(e,t)=>{let s=(0,a.forwardRef)((s,i)=>{let{className:d,...c}=s;return(0,a.createElement)(o,{ref:i,iconNode:t,className:l("lucide-".concat(r(n(e))),"lucide-".concat(e),d),...c})});return s.displayName=n(e),s}},3409:function(e,t,s){"use strict";s.d(t,{Z:function(){return a}});let a=(0,s(8030).Z)("chart-column",[["path",{d:"M3 3v16a2 2 0 0 0 2 2h16",key:"c24i48"}],["path",{d:"M18 17V9",key:"2bz60n"}],["path",{d:"M13 17V5",key:"1frdt8"}],["path",{d:"M8 17v-3",key:"17ska0"}]])},3225:function(e,t,s){"use strict";s.d(t,{Z:function(){return a}});let a=(0,s(8030).Z)("trending-up",[["path",{d:"M16 7h6v6",key:"box55l"}],["path",{d:"m22 7-8.5 8.5-5-5L2 17",key:"1t1m79"}]])},7736:function(e,t,s){"use strict";s.d(t,{default:function(){return y}});var a=s(7437),r=s(2265),i=s(8030);let n=(0,i.Z)("calculator",[["rect",{width:"16",height:"20",x:"4",y:"2",rx:"2",key:"1nb95v"}],["line",{x1:"8",x2:"16",y1:"6",y2:"6",key:"x4nwl0"}],["line",{x1:"16",x2:"16",y1:"14",y2:"18",key:"wjye3r"}],["path",{d:"M16 10h.01",key:"1m94wz"}],["path",{d:"M12 10h.01",key:"1nrarc"}],["path",{d:"M8 10h.01",key:"19clt8"}],["path",{d:"M12 14h.01",key:"1etili"}],["path",{d:"M8 14h.01",key:"6423bh"}],["path",{d:"M12 18h.01",key:"mhygvu"}],["path",{d:"M8 18h.01",key:"lrp35t"}]]);var l=s(3409),d=s(3225);let c=(0,i.Z)("dollar-sign",[["line",{x1:"12",x2:"12",y1:"2",y2:"22",key:"7eqyqh"}],["path",{d:"M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6",key:"1b0p4s"}]]),o=(0,i.Z)("users",[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["path",{d:"M16 3.128a4 4 0 0 1 0 7.744",key:"16gr8j"}],["path",{d:"M22 21v-2a4 4 0 0 0-3-3.87",key:"kshegd"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}]]),p=(0,i.Z)("clock",[["path",{d:"M12 6v6l4 2",key:"mmk7yg"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]]),x=(0,i.Z)("printer",[["path",{d:"M6 18H4a2 2 0 0 1-2-2v-5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2h-2",key:"143wyd"}],["path",{d:"M6 9V3a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v6",key:"1itne7"}],["rect",{x:"6",y:"14",width:"12",height:"8",rx:"1",key:"1ue0tg"}]]);var h=s(4488),m=()=>(0,a.jsx)("div",{className:"bg-gradient-to-r from-[#F08070]/10 to-[#D64933]/5 border-l-4 border-[#D64933] rounded-r-lg p-4 mb-6",children:(0,a.jsx)("p",{className:"text-sm text-gray-700 leading-relaxed",children:"This app enables you to compare a PrimaTrade SCF programme with a traditional SCF programme. Adjust the input parameters to reflect your company's procurement profile and current (or potential) SCF arrangements and card payment program. The results will update automatically. PrimaTrade offers the ability to reach all your suppliers supported by a high level of automation - even suppliers in the long tail and in difficult jurisdictions. You can also replace expensive card payment programs with more efficient SCF, collecting an early payment discount to bring in-house the fees that are currently benefiting third parties. On top, PrimaTrade enables early payments to be approved before delivery (at shipment), delivering much earlier cash to international suppliers and much more value to buyer and suppliers - monetising that value with automation into a P&L win for buyers."})}),u=s(9343);let g=e=>
1{let{label:t,tradValue:s,ptValue:r,note:i,currencySymbol:n="$"}=e,l=e=>"number"==typeof e?Math.abs(e)>=1e6?"".concat(n).concat((e/1e6).toFixed(2),"M"):Math.abs(e)>=1e3?"".concat(n).concat((e/1e3).toFixed(0),"K"):e.toLocaleString("en-US",{minimumFractionDigits:0,maximumFractionDigits:2}):e;return(0,a.jsxs)("tr",{children:[(0,a.jsx)("td",{className:"py-1.5 px-3 text-sm",children:i?(0,a.jsx)(h.Z,{text:i,children:(0,a.jsx)("span",{children:t})}):(0,a.jsx)("span",{children:t})}),(0,a.jsx)("td",{className:"py-1.5 px-3 text-sm text-right font-medium",children:l(s)}),(0,a.jsx)("td",{className:"py-1.5 px-3 text-sm text-right font-medium text-[#D64933]",children:l(r)})]})};function y(){let[e,t]=(0,r.useState)("inputs"),[s,i]=(0,r.useState)(!1),[y,f]=(0,r.useState)(!1),[b,j]=(0,r.useState)(!1),v=(e,t)=>{{let s=localStorage.getItem("scfComparison");if(s)try{let a=JSON.parse(s);return void 0!==a[e]?a[e]:t}catch(e){}}return t},[N,T]=(0,r.useState)(()=>v("currencySymbol","$")),[w,S]=(0,r.useState)(()=>v("totalProcurementSpend",500)),[P,C]=(0,r.useState)(()=>v("totalSuppliers",8e3)),[F,D]=(0,r.useState)(()=>v("tier1Suppliers",50)),[A,B]=(0,r.useState)(()=>v("tier1SpendPct",65)),[k,M]=(0,r.useState)(()=>v("tier1TradPartPct",40)),[E,R]=(0,r.useState)(()=>v("tier1PtPartPct",55)),[V,I]=(0,r.useState)(()=>v("tier1TradDiscountPct",0)),[O,L]=(0,r.useState)(()=>v("tier1PtDiscountPct",0)),[Z,U]=(0,r.useState)(()=>v("tier1TradSavingsPct",8)),[W,H]=(0,r.useState)(()=>v("tier1PtSavingsPct",10)),[q,z]=(0,r.useState)(()=>v("tier1TradPaymentTerms",90)),[_,K]=(0,r.useState)(()=>v("tier1PtPaymentTerms",90)),[G,$]=(0,r.useState)(()=>v("tier2Suppliers",1e3)),[Y,J]=(0,r.useState)(()=>v("tier2SpendPct",25)),[X,Q]=(0,r.useState)(()=>v("tier2TradPartPct",0)),[ee,et]=(0,r.useState)(()=>v("tier2PtPartPct",70)),[es,ea]=(0,r.useState)(()=>v("tier2TradDiscountPct",0)),[er,ei]=(0,r.useState)(()=>v("tier2PtDiscountPct",2.5)),[en,el]=(0,r.useState)(()=>v("tier2TradSavingsPct",10)),[ed,ec]=(0,r.useState)(()=>v("tier2PtSavingsPct",12)),[eo,ep]=(0,r.useState)(()=>v("tier2TradPaymentTerms",45)),[ex,eh]=(0,r.useState)(()=>v("tier2PtPaymentTerms",90)),[em,eu]=(0,r.useState)(()=>v("tier3TradPartPct",0)),[eg,ey]=(0,r.useState)(()=>v("tier3PtPartPct",80)),[ef,eb]=(0,r.useState)(()=>v("tier3TradDiscountPct",0)),[ej,ev]=(0,r.useState)(()=>v("tier3PtDiscountPct",3.5)),[eN,eT]=(0,r.useState)(()=>v("tier3TradSavingsPct",14)),[ew,eS]=(0,r.useState)(()=>v("tier3PtSavingsPct",18)),[eP,eC]=(0,r.useState)(()=>v("tier3CardUsagePct",0)),[eF,eD]=(0,r.useState)(()=>v("tier3CardCostPct",3.5)),[eA,eB]=(0,r.useState)(()=>v("tier3CardRebatePct",1)),[ek,eM]=(0,r.useState)(()=>v("tier3CardRemainPct",15)),[eE,eR]=(0,r.useState)(()=>v("tier3TradPaymentTerms",45)),[eV,eI]=(0,r.useState)(()=>v("tier3PtPaymentTerms",90)),[eO,eL]=(0,r.useState)(()=>v("delayDomestic",4)),[eZ,eU]=(0,r.useState)(()=>v("delayCrossBorder",21)),[eW,eH]=(0,r.useState)(()=>v("processingTime",6)),[eq,ez]=(0,r.useState)(()=>v("crossBorderSharePct",40)),[e_,eK]=(0,r.useState)(()=>v("tradDaysAfterApproval",3)),[eG,e$]=(0,r.useState)(()=>v("ptDaysAfterHandover",3)),[eY,eJ]=(0,r.useState)(()=>v("scfRatePct",7)),[eX,eQ]=(0,r.useState)(()=>v("cardFreeFundingDays",20)),[e0,e1]=(0,r.useState)(()=>v("baselinePaymentTerm",45)),[e2,e3]=(0,r.useState)(()=>v("turnover",75e7)),[e4,e6]=(0,r.useState)(()=>v("costOfSales",5e8)),[e5,e7]=(0,r.useState)(()=>v("operatingProfit",3e7)),[e9,e8]=(0,r.useState)(()=>v("profitBeforeTax",1e7)),[te,tt]=(0,r.useState)(()=>v("netInterest",4e7)),[ts,ta]=(0,r.useState)(()=>v("ebitda",9e7)),[tr,ti]=(0,r.useState)(()=>v("tradePayables",103e6)),[tn,tl]=(0,r.useState)(()=>v("netDebt",4e8)),[td,tc]=(0,r.useState)(()=>v("equity",16e7)),[to,tp]=(0,r.useState)(()=>v("freeCashFlow",22e6));(0,r.useEffect)(()=>{{localStorage.setItem("scfComparison",JSON.stringify({currencySymbol:N,totalProcurementSpend:w,totalSuppliers:P,tier1Suppliers:F,tier1SpendPct:A,tier1TradPartPct:k,tier1PtPartPct:E,tier1TradDiscountPct:V,tier1PtDiscountPct:O,tier1TradSavingsPct:Z,tier1PtSavingsPct:W,tier1TradPaymentTerms:q,tier1PtPaymentTerms:_,tier2Suppliers:G,tier2SpendPct:Y,tier2TradPartPct:X,tier2PtPartPct:ee,tier2TradDiscountPct:es,tier2PtDiscountPct:er,tier2TradSavingsPct:en,tier2PtSavingsPct:ed,tier2TradPaymentTerms:eo,tier2PtPaymentTerms:ex,tier3TradPartPct:em,t
1ier3PtPartPct:eg,tier3TradDiscountPct:ef,tier3PtDiscountPct:ej,tier3TradSavingsPct:eN,tier3PtSavingsPct:ew,tier3CardUsagePct:eP,tier3CardCostPct:eF,tier3CardRebatePct:eA,tier3CardRemainPct:ek,tier3TradPaymentTerms:eE,tier3PtPaymentTerms:eV,delayDomestic:eO,delayCrossBorder:eZ,processingTime:eW,crossBorderSharePct:eq,tradDaysAfterApproval:e_,ptDaysAfterHandover:eG,scfRatePct:eY,cardFreeFundingDays:eX,baselinePaymentTerm:e0,turnover:e2,costOfSales:e4,operatingProfit:e5,profitBeforeTax:e9,netInterest:te,ebitda:ts,tradePayables:tr,netDebt:tn,equity:td,freeCashFlow:to})),i(!0);let e=setTimeout(()=>i(!1),1500);return()=>clearTimeout(e)}},[N,w,P,F,A,k,E,V,O,Z,W,q,_,G,Y,X,ee,es,er,en,ed,eo,ex,em,eg,ef,ej,eN,ew,eP,eF,eA,ek,eE,eV,eO,eZ,eW,eq,e_,eG,eY,eX,e0,e2,e4,e5,e9,te,ts,tr,tn,td,to]),(0,r.useEffect)(()=>{0===F&&0!==A&&B(0)},[F,A]);let tx=()=>{document.getElementById("contact-us-modal").showModal()},th=()=>{window.confirm("Reset all values to defaults? This will clear any changes you have made.")&&(localStorage.removeItem("scfComparison"),T("$"),S(500),C(8e3),D(50),B(65),M(40),R(55),I(0),L(0),U(8),H(10),z(90),K(90),$(1e3),J(25),Q(0),et(70),ea(0),ei(2),el(10),ec(12),ep(45),eh(90),eu(0),ey(80),eb(0),ev(3),eT(14),eS(18),eC(0),eD(3.5),eB(1),eM(15),eR(45),eI(90),eL(4),eU(21),eH(6),ez(40),eK(3),e$(3),eJ(7),eQ(20),e1(45),e3(75e7),e6(5e8),e7(5e7),e8(1e7),tt(4e7),ta(9e7),ti(82e6),tl(4e8),tc(16e7),tp(22e6))},tm=1e6*w,tu=100-eq,tg=P-F-G,ty=100-A-Y,tf=A/100*tm,tb=Y/100*tm,tj=ty/100*tm,tv=tu/100*(eO+eW)+eq/100*(eZ+eW),tN=tf+tb+tj,tT=k/100*tf,tw=X/100*tb,tS=em/100*tj,tP=tT+tw+tS,tC=tv+e_,tF=Math.max(0,q-tC),tD=Math.max(0,eo-tC),tA=Math.max(0,eE-tC),tB=eY/100*tT*(tF/365),tk=eY/100*tw*(tD/365),tM=eY/100*tS*(tA/365),tE=tB+tk+tM,tR=V/100*tT,tV=es/100*tw,tI=ef/100*tS,tO=Math.max(tB,tR),tL=Math.max(tk,tV),tZ=Math.max(tM,tI),tU=eF/100*tj*(eP/100),tW=tO+tL+tZ+tU,tH=Z/100*tT*(tF/365),tq=en/100*tw*(tD/365),tz=eP/100*tj,t_=tA/365*Math.min(tS+tz,tj)*(eN/100),tK=tH+tq+t_,tG=tK-tW,t$=eA/100*(eP/100)*tj,tY=eX/365*(eY/100)*(eP/100)*tj,tJ=eP/100*tj,tX=eX/365*tJ,tQ=(tf*q+tb*eo+tj*eE)/365+tX,t0=(tT*tF+tw*tD+tS*tA)/365,t1=eY/100*((q-e0)*tf+(eo-e0)*tb+(eE-e0)*tj+tY)/365,t2=tO+tL+tZ-tE+t$+t1,t3=tO+tL+tZ-tE,t4=tG+t2,t6=k/100*F,t5=X/100*G,t7=em/100*tg,t9=t6+t5+t7,t8=tf+tb+tj,se=E/100*tf,st=ee/100*tb,ss=eg/100*tj*(1-eP/100*(ek/100)),sa=se+st+ss,sr=Math.max(0,_-eG),si=Math.max(0,ex-eG),sn=Math.max(0,eV-eG),sl=tC-eG,sd=eY/100*se*(sr/365),sc=eY/100*st*(si/365),so=eY/100*ss*(sn/365),sp=sd+sc+so,sx=O/100*se,sh=er/100*st,sm=ej/100*ss,su=Math.max(sd,sx),sg=Math.max(sc,sh),sy=Math.max(so,sm),sf=eF/100*tj*(eP/100)*(ek/100),sb=su+sg+sy+sf,sj=W/100*se*(sr/365),sv=ed/100*st*(si/365),sN=ew/100*ss*(sn/365),sT=sj+sv+sN,sw=sT-sb,sS=eA/100*(eP/100)*tj*(ek/100),sP=eX/365*(eY/100)*(eP/100)*tj*(ek/100),sC=eP/100*tj*(ek/100),sF=eX/365*sC,sD=(tf*_+tb*ex+tj*eV)/365+sF,sA=sD-tQ,sB=1e6*w*(e0/365),sk=tQ-sB,sM=sD-sB,sE=(se*sr+st*si+ss*sn)/365,sR=eY/100*((_-e0)*tf+(ex-e0)*tb+(eV-e0)*tj+sP)/365,sV=su+sg+sy-sp+sS+sR,sI=su+sg+sy-sp,sO=sw+sV,sL=E/100*F,sZ=ee/100*G,sU=eg/100*tg*(1-eP/100*(ek/100)),sW=sL+sZ+sU,sH=eP/100*tg,sq=eP/100*tg*(ek/100),sz=F+G+tg,s_=sa-tP,sK=sE-t0,sG=P-sz,s$=sW-t9,sY=eG-tC,sJ=sV-t2,sX=sw-tG,sQ=sO-t4,s0=sI-t3,s1=e4-s0,s2=e5+s0,s3=e9+sJ,s4=ts+s0,s6=te-eY/100*sA,s5=tr+sA,s7=tn-sA,s9=td+sJ,s8=to+sA,ae=ts/e2*100,at=s4/e2*100,as=e5/e2*100,aa=s2/e2*100,ar=tn/ts,ai=s7/s4,an=tn/td,al=s7/s9,ad=to/e2*100,ac=s8/e2*100,ao=ts/te,ap=s4/s6,ax=e=>Math.abs(e)>=1e6?"".concat(N).concat((e/1e6).toFixed(2),"M"):Math.abs(e)>=1e3?"".concat(N).concat((e/1e3).toFixed(0),"K"):"".concat(N).concat(e.toFixed(0)),ah=e=>Math.abs(e)>=1e6?"".concat(N).concat((e/1e6).toFixed(0),"M"):Math.abs(e)>=1e3?"".concat(N).concat((e/1e3).toFixed(0),"K"):"".concat(N).concat(e.toFixed(0)),am=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return e.toLocaleString("en-US",{minimumFractionDigits:t,maximumFractionDigits:t})},au=e=>"".concat(e.toFixed(1),"%"),ag=[{label:"Recurring annual economic value",trad:ax(t4),pt:ax(sO),tooltip:"Total annual recurring economic value created by the SCF programme, adding up benefits for both buyers and suppliers."},{label:"Buyer recurring benefit from SCF",trad:ax(t2),pt:ax(sV),tooltip:"The annual economic benefit to the buyer of the SCF programme. The level of early payment discounts influences the benefit split between buyer and suppliers - higher discounts moves more of the benefit to the buyer and vice versa."},{label:"Free cash flow generated by SCF",trad:ah(sk),pt:ah(sM),tooltip:"Additional amount of cash flow created by the SCF programme and cards (ie: trade credit provided above the assumed baseline level of trade credit)"},{label:"SCF outstanding balance",trad:ah(t0),pt:ah(sE),tooltip:"The PrimaTrade SCF programme is bigger with more suppliers, longer funding periods and higher utilisation."},{label:"Number of suppliers using SCF",trad:am(t9,0),pt:am(sW,0),tooltip:"Mid-tier and smaller suppliers will more actively use the SCF program, especially if they are paid at shipment - so utilisation levels are higher with PrimaTrade SCF."}],{register:ay,handleSubmit:af,formState:{errors:ab},setError:aj,clearErrors:av,reset:aN}=(0,u.cI)(),aT=async e=>{av(),await fetch("".concat("https://prima.trade/api","/contacts"),{method:"POST",headers:{"Content-Type":"application/json","x-api-key":"erji9jkyh8sd"},body:JSON.stringify(e)}).then(e=>e.json()).then(()=>{aN(),document.getElementById("contact-us-modal").close(),f(!0),setTimeout(()=>{window.print(),f(!1)},100)},e=>{console.log(e),aj("api",{type:"manual",message:"An error occurred while sending the message. Please try again."})})},aw=function(e,t,s,r,i,n){let l=arguments.length>6&&void 0!==arguments[6]?arguments[6]:"",d=arguments.length>7&&void 0!==arguments[7]&&arguments[7],c=arguments.length>8&&void 0!==arguments[8]&&arguments[8],o=arguments.length>9&&void 0!==arguments[9]?arguments[9]:"w-full",{formatDisplay:p,parseInput:x,tooltip:m,labelClassName:u=""}=arguments.length>10&&void 0!==arguments[10]?arguments[10]:{},g=p?p(t):t,y=e=>{if(c)return;
1let t=x?x(e):parseFloat(e);s(Number.isFinite(t)?t:0)},f=e=>{if(c)return;let t=x?x(e):parseFloat(e);s(Math.min(Math.max(Number.isFinite(t)?t:0,r),i))};return(0,a.jsxs)("div",{className:"space-y-2 w-full",children:[(0,a.jsxs)("div",{className:"grid grid-cols-[1fr,auto] items-baseline gap-3 w-full",children:[(0,a.jsxs)("label",{className:"text-sm font-medium flex-1 ".concat(c?"text-gray-400":"text-gray-700"," ").concat(u),children:[e,m&&(0,a.jsx)(h.Z,{text:m,children:(0,a.jsx)(a.Fragment,{})})]}),(0,a.jsxs)("div",{className:"flex items-baseline gap-1 justify-end text-right w-[110px] shrink-0 ml-auto",children:[(0,a.jsx)("input",{type:p?"text":"number",inputMode:"decimal",value:g,onChange:e=>y(e.target.value),onBlur:e=>f(e.target.value),disabled:c,className:"w-full text-right px-2 py-1 border border-gray-300 rounded text-sm font-semibold ".concat(c?"bg-gray-100 text-gray-400 cursor-not-allowed":"text-[#D64933]"),step:n,min:r,max:i}),(0,a.jsx)("span",{className:"text-sm ".concat(c?"text-gray-400":"text-gray-600"," text-right w-8"),children:d?"%":l})]})]}),!c&&(0,a.jsx)("input",{type:"range",min:r,max:i,step:n,value:t,onChange:e=>s(parseFloat(e.target.value)),className:"slider ".concat(o),style:{background:"linear-gradient(to right, #D44A34 0%, #D44A34 ".concat((t-r)/(i-r)*100,"%, #e5e7eb ").concat((t-r)/(i-r)*100,"%, #e5e7eb 100%)")}})]})};return(0,a.jsx)(a.Fragment,{children:(0,a.jsxs)("div",{className:"min-h-screen",children:[(0,a.jsx)("div",{className:"border-b-2 border-gray-300 print:hidden shadow-sm",children:(0,a.jsxs)("div",{className:"max-w-[1800px] mx-auto px-4 sm:px-6 lg:px-8 py-3",children:[(0,a.jsxs)("div",{className:"flex flex-row justify-center gap-3 print:hidden my-5",children:[(0,a.jsx)("span",{className:" underline cursor-pointer hover:text-brand-orange hover:fill-brand-orange text-black",onClick:()=>document.getElementById("what-app-do").showModal(),children:"What Does The App Do?"}),(0,a.jsx)("span",{className:" underline cursor-pointer hover:text-brand-orange hover:fill-brand-orange text-black",onClick:()=>document.getElementById("methodology").showModal(),children:"What is the purpose of the app?"})]}),(0,a.jsx)("dialog",{id:"what-app-do",className:"modal",children:(0,a.jsxs)("div",{className:"modal-box max-w-[1200px]",children:[(0,a.jsx)("div",{className:"text-[45px] md:text-s4 font-bold leading-none",children:(0,a.jsx)("span",{className:"text-primary-gradient",children:"What Does The App Do?"})}),(0,a.jsxs)("p",{className:"py-4",children:[(0,a.jsx)("p",{className:"pb-2",children:"Perhaps you already have a supply chain finance programme, or you are considering setting one up."}),(0,a.jsx)("p",{className:"pb-2",children:"The easy-to-use app below allows you to compare what you get from PrimaTrade's platform to a typical, traditional SCF platform ."}),(0,a.jsx)("p",{children:"What are the key differences between PrimaTrade's platform and others?"}),(0,a.jsx)("p",{children:"P&L: PrimaTrade enables you to collect discounts from suppliers reflecting their participation in the progamme, booking a P&L win for each invoice that is financed."}),(0,a.jsx)("p",{children:'Value multiplier: PrimaTrade includes "PO matching" - which requires suppliers to confirm which purchase orders are included in each invoice they submit. This enables early payment approvals to be safely provided before delivery and the traditional 3-way match - making early payments truly early. The economic value of your SCF programme multiplies as a result.'}),(0,a.jsx)("p",{className:"pb-2",children:"All suppliers: PrimaTrade has proprietary structures that enable it to manage supplier on-boarding and KYC economically and quickly. This means all your suppliers can be included, even the long-tail - and this enables you to reduce usage of expensive card programmes whilst increasing substantially the amount of P&L that you can book (see point 1)."}),(0,a.jsx)("p",{children:"Using the simple comparison app:"}),(0,a.jsx)("p",{children:"Enter your total procurement spend, number of suppliers and expected SCF funding cost."}),(0,a.jsx)("p",{children:"We then break down your supplier base into 3 tiers - and for each tier, enter some basic parameters about their payment terms, expected utilisation of SCF (if it were available) and the discounts that could be earned from suppliers. If suppliers are being paid by card, enter a few details about that card programme."}),(0,a.jsx)("p",{children:"Finally enter some details of your current invoice approval process and likely timing for early payments."}),(0,a.jsx)("p",{className:"pb-2",children:"The app calculates the total economic value of the SCF programme using your assumptions."}),(0,a.jsx)("p",{className:"pb-2",children:"You can compare a traditional SCF approach with a PrimaTrade SCF programme. To put the benefits into context, we also provide a simple simulation model of your financials
1- enter a few key metrics and see the benefits of a PrimaTrade SCF programme in context."}),(0,a.jsx)("p",{children:"Below the app, on this webpage, the calculations and methodologies used in the app are set out and discussed."})]}),(0,a.jsx)("div",{className:"modal-action",children:(0,a.jsx)("form",{method:"dialog",children:(0,a.jsx)("button",{className:"flex items-center gap-2 px-6 py-3 bg-primary-gradient text-white font-semibold rounded-full shadow-lg hover:shadow-xl transition-all duration-200 hover:scale-105",children:"Close"})})})]})}),(0,a.jsx)("dialog",{id:"methodology",className:"modal",children:(0,a.jsxs)("div",{className:"modal-box max-w-[1200px]",children:[(0,a.jsx)("div",{className:"text-[45px] md:text-s4 font-bold leading-none",children:(0,a.jsx)("span",{className:"text-primary-gradient pb-2",children:"What is the purpose of the app?"})}),(0,a.jsxs)("p",{className:"py-4",children:[(0,a.jsx)("p",{className:"pb-2",children:"The app compares a PrimaTrade SCF programme to a typical, standard SCF programme. It shows the incremental value that a customer could obtain by upgrading to PrimaTrade SCF (or implementing from scratch)."}),(0,a.jsx)("p",{className:"pb-2",children:"As highlighted above, PrimaTrade is built-for SCF platform designed and built with current technology, rather than the technology available 20+ years' ago."}),(0,a.jsx)("p",{children:"With the benefit of better architecture and better engineering, PrimaTrade's platform:"}),(0,a.jsxs)("ul",{className:"pb-2 list-disc list-inside",children:[(0,a.jsx)("li",{children:"Can reach all the suppliers with a high level of automation - making it possible to offer supply chain finance across the enterprise and not just to a select few strategic suppliers."}),(0,a.jsx)("li",{children:"Since supply chain finance can be offered to the suppliers that actually need it (smaller suppliers often further away), the economic value created is a multiple of a traditional programme. Moreover, PrimaTrade's technology allows the buyer to monetise that benefit for itself and to book and collected discounts on products reflecting the benefits that suppliers are getting."}),(0,a.jsx)("li",{children:"Many clients also realise that an automated SCF programme offering very early payments efficiently is a better way to pay smaller suppliers than using payment cards."})]}),(0,a.jsx)("p",{className:"pb-2",children:"The approach"}),(0,a.jsxs)("ul",{className:"pb-2 list-disc list-inside [&_ul]:list-[revert]",children:[(0,a.jsxs)("li",{children:["Supplier saving:",(0,a.jsx)("ul",{className:"ml-4 list-disc list-inside",children:(0,a.jsx)("li",{children:"Suppliers get paid early, and so save the cost of borrowing money at their local rate. If suppliers get paid very quickly (ie: close to shipment), they can also save on credit insurance and improve their local credit standing as they can be paid before losing control of their goods."})})]}),(0,a.jsxs)("li",{children:["Buyers income:",(0,a.jsx)("ul",{className:"ml-4 list-disc list-inside",children:(0,a.jsx)("li",{children:"The saving that suppliers make can be made into a buyer P&L win through early payment discounts. In a PrimaTrade SCF programme, the buyer can set the early payment discount rate and bank the supplier's savings itself, without prejudicing the trade payable accounting treatment."})})]}),(0,a.jsxs)("li",{children:["Buyer working capital:",(0,a.jsx)("ul",{className:"ml-4 list-disc list-inside",children:(0,a.jsx)("li",{children:"A result of the process is that the buyer can gain trade financing itself with the cost borne by suppliers - so this improves the buyer's operating cash flow and reduces the buyer's own interest costs."})})]})]}),(0,a.jsx)("p",{className:"pb-2",children:"We can calculate all of these numbers given some assumptions about the value of the different components. Key inputs are:"}),(0,a.jsxs)("ul",{className:"pb-2 list-disc list-inside [&_ul]:list-[revert]",children:[(0,a.jsxs)("li",{children:["The supplier savings rate:",(0,a.jsx)("ul",{className:"ml-4 list-disc list-inside",children:(0,a.jsx)("li",{children:'This is the financial rate that suppliers use to "value" the early payments, noting that if payments come at shipment rather than later after delivery, the supplier savings rate will be much higher since credit insurance can be avoided and local funding for the supplier becomes more efficient.'})})]}),(0,a.jsxs)("li",{children:["The buyer savings rate:",(0,a.jsx)("ul",{className:"ml-4 list-disc list-inside",children:(0,a.jsx)("li",{children:"This is the value to the buyer of the trade finance that it receives at no cost to itself, effectively paid for by suppliers. In our app, we assume that this savings rate is the SCF funding cost."})})]})]}),(0,a.jsx)("p",{className:"pb-2",children:"The other assumptions in the app all relate to how the traditional SCF programme operates versus PrimaTrade SCF."}),(0,a.jsx)("p",{children:"Typically, traditional SCF programmes:"}),(0,a.jsxs)("ul",{className:"pb-2 list-disc list-inside",children:[(0,a.jsx)("li",{children:"Provide early payments after delivery, so not that early."}),(0,a.jsx)("li",{children:"Limit eligibility to larger suppliers in convenient jurisdictions."}),(0,a.jsx)("li",{children:"Experience relatively low take up, because the eligible suppliers are not the ones that really need the early payments."})]}),(0,a.jsx)("p",{className:"pb-2",children:"PrimaTrade solves these issues - and additionally puts buyers in control by enabling buyers to set their own discount rates for access to early payments - effectively defining how the economic benefits of SCF are shared between the buyer and the supplier."}),(0,a.jsx)("p",{className:"pb-2",children:"There are tool tips available throughout the app to explain what different inputs do. We have designed the app to allow the user to decide their own assumptions rather than using ours. The app will remember your inputs if you leave and then come back - and you can print out the findings for yourself if would like to have a copy of a particular set of calculations."}),(0,a.jsx)("p",{className:"pb-2",children:"We would be very happy to discu
1ss the app and PrimaTrade SCF with you - if you have questions or would like a more specific analysis. Internally we have more sophisticated models that we can use to create a fully-tailored simulation of a PrimaTrade SCF implementation."})]}),(0,a.jsx)("div",{className:"modal-action",children:(0,a.jsx)("form",{method:"dialog",children:(0,a.jsx)("button",{className:"flex items-center gap-2 px-6 py-3 bg-primary-gradient text-white font-semibold rounded-full shadow-lg hover:shadow-xl transition-all duration-200 hover:scale-105",children:"Close"})})})]})}),(0,a.jsx)("dialog",{id:"contact-us-modal",className:"modal",children:(0,a.jsxs)("div",{className:"modal-box max-w-[1200px]",children:[(0,a.jsx)("div",{className:"text-[45px] md:text-s4 font-bold leading-none",children:(0,a.jsx)("span",{className:"text-primary-gradient",children:"PrimaTrade > Print PDF"})}),(0,a.jsx)("p",{className:"py-4",children:(0,a.jsx)("p",{className:"pb-2",children:"Please provide your contact details to enable you to print out the SCF Comparison Results PDF."})}),(0,a.jsx)("div",{className:"modal-action",children:(0,a.jsxs)("form",{className:"w-full h-full gap-3 grid grid-cols-2",method:"dialog",onSubmit:af(aT),children:[(0,a.jsx)("input",{...ay("forename"),placeholder:"Forename",className:"border border-gray-500 border-opacity-20 px-4 py-4 text-sm font-normal"}),ab.forename&&(0,a.jsx)("span",{className:"text-red-500",children:ab.forename.message}),(0,a.jsx)("input",{...ay("surname"),placeholder:"Surname",className:"border border-gray-500 border-opacity-20 px-4 py-4 text-sm font-normal"}),ab.surname&&(0,a.jsx)("span",{className:"text-red-500",children:ab.surname.message}),(0,a.jsx)("input",{...ay("email",{required:"Email is required",pattern:{value:/\S+@\S+\.\S+/,message:"Invalid email address"}}),placeholder:"Email",className:"col-span-2 w-full border border-gray-500 border-opacity-20 px-4 py-4 text-sm font-normal "}),ab.email&&(0,a.jsx)("span",{className:"text-red-500",children:ab.email.message}),(0,a.jsx)("input",{...ay("job_role"),placeholder:"Job Role",className:"col-span-2 w-full border border-gray-500 border-opacity-20 px-4 py-4 text-sm font-normal "}),ab.job_role&&(0,a.jsx)("span",{className:"text-red-500",children:ab.job_role.message}),(0,a.jsx)("input",{...ay("company"),placeholder:"Company",className:"col-span-2 w-full border border-gray-500 border-opacity-20 px-4 py-4 text-sm font-normal "}),ab.company&&(0,a.jsx)("span",{className:"text-red-500",children:ab.company.message}),(0,a.jsxs)("div",{className:"flex justify-between col-span-2 gap-2",children:[(0,a.jsx)("button",{className:"flex items-center gap-2 px-6 py-3 bg-gray-600 hover:bg-gray-700 text-white font-semibold rounded-full shadow-lg hover:shadow-xl transition-all duration-200 hover:scale-105",type:"button",onClick:()=>document.getElementById("contact-us-modal").close(),children:"Close"}),(0,a.jsx)("button",{className:"flex items-center gap-2 px-6 py-3 bg-primary-gradient text-white font-semibold rounded-full shadow-lg hover:shadow-xl transition-all duration-200 hover:scale-105",children:"Send"})]})]})})]})}),(0,a.jsxs)("div",{className:"grid grid-cols-3 gap-2 sm:gap-4",children:[(0,a.jsx)("button",{onClick:()=>t("inputs"),className:"group relative w-full px-3 sm:px-6 py-4 sm:py-5 font-bold text-sm sm:text-base rounded-xl border-2 transition-all duration-300 transform ".concat("inputs"===e?"bg-primary-gradient border-[#D64933] text-white shadow-lg ring-2 ring-[#D64933] ring-offset-2":"bg-white border-gray-300 text-gray-700 hover:border-[#F08070] hover:shadow-md hover:scale-102"),children:(0,a.jsxs)("div",{className:"flex flex-col items-center gap-2",children:[(0,a.jsx)("div",{className:"flex items-center justify-center w-10 h-10 sm:w-12 sm:h-12 rounded-full ".concat("inputs"===e?"bg-white/20 backdrop-blur":"bg-gray-100 group-hover:bg-[#FBE4DD]"),children:(0,a.jsx)(n,{className:"w-5 h-5 sm:w-6 sm:h-6 ".concat("inputs"===e?"text-white":"text-[#D64933]")})}),(0,a.jsxs)("div",{className:"text-center",children:[(0,a.jsx)("div",{className:"text-[10px] sm:text-xs font-semibold mb-1 ".concat("inputs"===e?"text-white/80":"text-gray-500"),children:"STEP 1"}),(0,a.jsx)("div",{className:"leading-tight",children:"Input parameters"})]})]})}),(0,a.jsx)("button",{onClick:()=>t("comparison"),className:"group relative w-full px-3 sm:px-6 py-4 sm:py-5 font-bold text-sm sm:text-base rounded-xl border-2 transition-all duration-300 transform ".concat("comparison"===e?"bg-primary-gradient border-[#D64933] text-white shadow-lg ring-2 ring-[#D64933] ring-offset-2":"bg-white border-gray-300 text-gray-700 hover:border-[#F08070] hover:shadow-md hover:scale-102"),children:(0,a.jsxs)("div",{className:"flex flex-col items-center gap-2",children:[(0,a.jsx)("div",{className:"flex items-center justify-center w-10 h-10 sm:w-12 sm:h-12 rounded-full ".concat("comparison"===e?"bg-white/20 backdrop-blur":"bg-gray-100 group-hover:bg-[#FBE4DD]"),children:(0,a.jsx)(l.Z,{className:"w-5 h-5 sm:w-6 sm:h-6 ".concat("comparison"===e?"text-white":"text-[#D64933]")})}),(0,a.jsxs)("div",{className:"text-center",children:[(0,a.jsx)("div",{className:"text-[10px] sm:text-xs font-semibold mb-1 ".concat("comparison"===e?"text-white/80":"text-gray-500"),children:"STEP 2"}),(0,a.jsx)("div",{className:"leading-tight",children:"Comparison results"})]})]})}),(0,a.jsx)("button",{onClick:()=>t("simulation"),className:"group relative w-full px-3 sm:px-6 py-4 sm:py-5 font-bold text-sm sm:text-base rounded-xl border-2 transition-all duration-300 transform ".concat("simulation"===e?"bg-primary-gradient border-[#D64933] text-white shadow-lg ring-2 ring-[#D64933] ring-offset-2":"bg-white border-gray-300 text-gray-700 hover:border-[#F08070] hover:shadow-md hover:scale-102"),children:(0,a.jsxs)("div",{className:"flex flex-col items-center gap-2",children:[(0,a.jsx)("div",{className:"flex items-center justify-center w-10 h-10 sm:w-12 sm:h-12 rounded-full ".concat("simulation"===e?"bg-white/20 backdrop-blur":"bg-gray-100 group-hover:bg-orange-50"),children:(0,a.jsx)(d.Z,{className:"w-5 h-5 sm:w-6 sm:h-6 ".concat("simulation"===e?"text-white":"text-[#D64933]")})}),(0,a.jsxs)("div",{className:"text-center",children:[(0,a.jsx)("div",{className:"text-[10px] sm:text-xs font-semibold mb-1 ".concat("simulation"===e?"text-white/80":"text-gray-500"),children:"STEP 3"}),(0,a.jsx)("div",{className:"leading-tight",children:"Financial simulation"})]})]})})]})]})}),(0,a.jsxs)("div",{className:"max-w-[1800px] mx-auto px-4 sm:px-6 lg:px-8 py-6",children:[(0,a.jsx)(m,{}),(0,a.jsxs)("div",{className:"space-y-6",children:[("inputs"===e||y)&&(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)("div",{"data-panel":"inputs",className:"space-y-4 sm:sp
1ace-y-6 ".concat(y?"print-inputs-panel":""," ").concat("inputs"===e||y?"":"hidden"),children:[(0,a.jsxs)("div",{className:"print-break-avoid bg-white rounded-lg shadow-md p-4 sm:p-6",children:[(0,a.jsxs)("div",{className:"flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between mb-4",children:[(0,a.jsxs)("h2",{className:"text-xl font-bold text-gray-900 flex items-center gap-2",children:[(0,a.jsx)(c,{className:"w-6 h-6 text-[#F08070]"}),"Company profile"]}),(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)("label",{className:"text-sm font-medium text-gray-700",children:"Currency"}),(0,a.jsxs)("select",{value:N,onChange:e=>T(e.target.value),className:"w-32 px-3 py-2 border border-gray-300 rounded-md text-sm",children:[(0,a.jsx)("option",{value:"$",children:"$ USD"}),(0,a.jsx)("option",{value:"â¬",children:"⬠EUR"}),(0,a.jsx)("option",{value:"\xa3",children:"\xa3 GBP"}),(0,a.jsx)("option",{value:"\xa5",children:"\xa5 JPY"})]})]})]}),(0,a.jsxs)("div",{className:"grid md:grid-cols-2 lg:grid-cols-4 gap-6 text-sm",children:[(0,a.jsx)("div",{children:aw("Total spend",w,S,10,5e4,10,"MM",!1,!1,"w-full",{formatDisplay:e=>"".concat(N).concat(am(e,0)),parseInput:e=>parseFloat(e.replace(/[^0-9.]/g,"")),tooltip:"All procurement expenditure of all kinds, goods and services from all suppliers, domestic and international.",labelClassName:"text-[13px]"})}),(0,a.jsx)("div",{children:aw("No. of suppliers",P,C,50,5e4,50,"",!1,!1,"w-full",{tooltip:"The total number of suppliers across goods + services."})}),(0,a.jsx)("div",{children:aw("International share",eq,ez,0,100,5,"",!0,!1,"w-full",{tooltip:"How much of the spend is international (so cross-border) experiencing longer shipping times and so longer periods between shipment and invoice approval.",labelClassName:"text-[13px]"})}),(0,a.jsx)("div",{children:aw("SCF funding rate",eY,eJ,0,20,.1,"",!0,!1,"w-full",{tooltip:"Average financing rate charged by SCF funders"})})]})]}),(0,a.jsx)("div",{className:"print-break-avoid w-full min-[1100px] mx-auto",children:(0,a.jsx)("div",{className:"rounded-xl shadow-xl p-[1px]",children:(0,a.jsxs)("div",{className:"bg-white/95 rounded-[0.95rem] p-5 sm:p-6",children:[(0,a.jsxs)("div",{className:"flex flex-col gap-2 sm:flex-row sm:items-center sm:justify-between",children:[(0,a.jsxs)("div",{children:[(0,a.jsxs)("h2",{className:"text-xl font-bold text-gray-900 flex items-center gap-2",children:[(0,a.jsx)(d.Z,{className:"w-6 h-6 text-[#D64933]"}),"Highlights from results"]}),(0,a.jsx)("p",{className:"text-sm text-gray-600",children:"Live view of the key outcomes while you adjust inputs."})]}),(0,a.jsxs)("div",{className:"flex items-center gap-2 bg-[#0F1B2C] text-white px-3 py-2 rounded-lg shadow",children:[(0,a.jsx)("span",{className:"text-xs uppercase tracking-wide text-orange-100",children:"Snapshot"}),(0,a.jsx)(l.Z,{className:"w-5 h-5"})]})]}),(0,a.jsx)("div",{className:"grid gap-4 sm:grid-cols-2 min-[1100px]:grid-cols-5 mt-5",children:ag.map((e,t)=>(0,a.jsxs)("div",{className:"rounded-lg border border-[#F6BFB0] shadow-sm p-4 flex flex-col",children:[(0,a.jsxs)("div",{className:"flex items-center gap-1 mb-4",children:[(0,a.jsx)("p",{className:"text-xs font-semibold text-[#8B1D12] uppercase tracking-wide",children:e.label}),(0,a.jsx)(h.Z,{text:e.tooltip,children:(0,a.jsx)(a.Fragment,{})})]}),(0,a.jsxs)("div",{className:"mt-auto space-y-3",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("p",{className:"text-[11px] font-semibold text-gray-600 mb-1",children:"Traditional SCF"}),(0,a.jsx)("p",{className:"text-lg font-bold text-gray-900",children:e.trad})]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("p",{className:"text-[11px] font-semibold text-[#D64933] mb-1",children:"PrimaTrade SCF"}),(0,a.jsx)("p",{className:"text-lg font-bold text-[#D64933]",children:e.pt})]})]})]},e.label))})]})})}),(0,a.jsxs)("div",{className:"print-break-avoid bg-gradient-to-r from-[#F08070]/10 to-[#D64933]/5 border-l-4 border-[#D64933] rounded-r-lg p-4 mb-6",children:[(0,a.jsxs)("h2",{className:"text-xl font-bold text-gray-900 mb-4 flex items-center gap-2",children:[(0,a.jsx)(o,{className:"w-6 h-6 text-[#F08070]"}),"PrimaTrade: innovations and differences"]}),(0,a.jsx)("p",{className:"text-sm text-gray-700 leading-relaxed",children:"PrimaTrade's SCF platform is the first of the next generation of SCF solutions, already proven at scale. Ke
1y innovations include:"}),(0,a.jsx)("div",{className:"text-sm text-gray-700 leading-relaxed",children:(0,a.jsxs)("ul",{className:"list-inside",children:[(0,a.jsxs)("li",{children:[(0,a.jsx)("strong",{children:"Universal supplier access:"})," PrimaTrade's platform automates buyer processes (including early payment approvals before delivery), document handling and payments to enable all suppliers to participate; suppliers in difficult jurisdictions and the long tail of smaller suppliers can be included using PrimaTrade's onboarding and KYC/AML capabilities."]}),(0,a.jsxs)("li",{children:[(0,a.jsx)("strong",{children:"Early payment at shipment:"})," PrimaTrade enables buyers to approve early payments at shipment rather than delivery via supplier-driven PO matching and automation, bringing forward cash to international suppliers by several weeks and increasing the value of the programme to both suppliers and buyers."]}),(0,a.jsxs)("li",{children:[(0,a.jsx)("strong",{children:"Separation of discount and funding cost:"})," PrimaTrade separates the early payment discount agreed with suppliers from the funding cost, routing the discount to the buyer P&L (net of funding costs) to maximise value for both parties."]}),(0,a.jsxs)("li",{children:[(0,a.jsx)("strong",{children:"Card programme replacement:"})," PrimaTrade enables buyers to replace expensive card payment programmes with more efficient SCF funding, replacing the card rebate with a direct buyer P&L win whilst reducing overall costs."]})]})})]}),(0,a.jsxs)("div",{className:"print-break-avoid bg-white rounded-lg shadow-md p-4 sm:p-6",children:[(0,a.jsxs)("h2",{className:"text-xl font-bold text-gray-900 mb-4 flex items-center gap-2",children:[(0,a.jsx)(o,{className:"w-6 h-6 text-[#F08070]"}),"Supplier tiers configuration"]}),(0,a.jsxs)("div",{className:"space-y-6",children:[(0,a.jsxs)("div",{className:"border-2 border-blue-200 rounded-lg p-4 bg-blue-50/30",children:[(0,a.jsx)("h3",{className:"text-lg font-bold text-gray-900 mb-4",children:"Tier 1: Existing SCF suppliers (or eligible for traditional SCF)"}),(0,a.jsxs)("div",{className:"space-y-4",children:[(0,a.jsxs)("div",{className:"grid md:grid-cols-2 gap-4 pb-4 border-b border-blue-200",children:[(0,a.jsx)("div",{className:"w-full",children:aw("Number of suppliers",F,D,0,2e3,10,"",!1,!1,"w-full",{tooltip:"Current number of suppliers in traditional SCF (or who might be included in a traditional SCF programme): - typically larger suppliers only, ignoring card programmes (handled separately lower down)."})}),(0,a.jsx)("div",{className:"w-full",children:aw("Share of total spend",A,B,0,100,1,"",!0,!1,"w-full",{tooltip:"Share of the total spend for the suppliers eligible for traditional SCF."})})]}),(0,a.jsxs)("div",{className:"grid sm:grid-cols-2 lg:grid-cols-4 gap-6",children:[(0,a.jsxs)("div",{className:"space-y-3",children:[(0,a.jsx)("h4",{className:"text-sm font-semibold text-gray-700 border-b border-blue-200 pb-2",children:"Participation rate"}),aw("Traditional SCF",k,M,0,100,5,"",!0,!1,"w-full",{tooltip:"The proportion of eligible spend from these larger suppliers funded by traditional SCF."}),aw("PrimaTrade",E,R,0,100,5,"",!0,!1,"w-full",{tooltip:"The proportion of eligible spend funded from these larger suppliers by PrimaTrade SCF noting that participation is typically higher when early payments are available at shipment rather than later after delivery."})]}),(0,a.jsxs)("div",{className:"space-y-3",children:[(0,a.jsx)("h4",{className:"text-sm font-semibold text-gray-700 border-b border-blue-200 pb-2",children:"Early payment discount"}),aw("Traditional SCF",V,I,0,5,.1,"",!0,!1,"w-full",{tooltip:"The discount on the invoice agreed for early payments (ignoring any funding charge). Traditional SCF does not usually support a separate charge here (set this to zero)."}),aw("PrimaTrade",O,L,0,5,.1,"",!0,!1,"w-full",{tooltip:"The discount on the invoice agreed for early payments at shipment; PrimaTrade enables suppliers to agree higher discounts on their invoices than the SCF funding costs because they can avoid credit insurance and their local funding costs can go down when they are paid earlier, routing this benefit to the buyer P&L."})]}),(0,a.jsxs)("div",{className:"space-y-3",children:[(0,a.jsx)("h4",{className:"text-sm font-semibold text-gray-700 border-b border-blue-200 pb-2",children:"Supplier savings rate"}),aw("Traditional SCF",Z,U,0,30,.5,"",!0,!1,"w-full",{tooltip:"The comparison rate that suppliers use to evaluate the benefit of early payment (typically the marginal interest rate they pay for funding include base rate). Note, when early payments are made after delivery, the benefit is usually only the interest cost saving at the suppliers marginal funding cost."}),aw("PrimaTrade",W,H,0,30,.5,"",!0,!1,"w-full",{tooltip:"The comparison rate that suppliers use to evaluate the benefit of early payment (typically the marginal interest rate they pay for funding include base rate). Note, when early payments are made at shipment, the benefit includes savings on credit insurance and overall better credit standing with their local funders."})]}),(0,a.jsxs)("div",{className:"space-y-3",children:[(0,a.jsx)("h4",{className:"text-sm font-semibold text-gray-700 border-b border-blue-200 pb-2",children:"Payment terms (days)"}),aw("Average payment term",q,z,0,180,5," days",!1,!1,"w-full",{tooltip:"Standard contractual payment terms from invoice date for this tier of suppliers in the traditional scenario."}),aw("New payment term",_,K,0,180,5," days",!1,!1,"w-full",{tooltip:"Potentially extended payment terms from invoice date when early payment is available via PrimaTrade, which can include additional periods (beyond local legal limits) using digital bills of exchange."})]})]})]})]}),(0,a.jsxs)("div",{className:"border-2 border-green-200 rounded-lg p-4 bg-green-50/30",children:[(0,a.jsxs)("h3",{className:"text-lg font-bold text-gray-900 mb-4",children:["Tier 2: Next Level: a further ",G," suppliers"]}),(0,a.jsxs)("div",{className:"space-y-4",children:[(0,a.jsxs)("div",{className:"grid md:grid-cols-2 gap-4 pb-4 border-b border-green-200",children:[(0,a.jsx)("div",{className:"w-full",children:aw("Ideal further suppliers for SCF",G,$,100,5e3,50,"",!1,!1,"w-full",{tooltip:"The number of regular suppliers that would benefit from SCF but which are typically not eligible to be included in traditional SCF programmes."})}),(0,a.jsx)("div",{className:"w-full",children:aw("Share of total spend",Y,J,0,100,
11,"",!0,!1,"w-full",{tooltip:"The additional share of spend from these regular suppliers that would benefit from SCF"})})]}),(0,a.jsxs)("div",{className:"grid sm:grid-cols-2 lg:grid-cols-4 gap-6",children:[(0,a.jsxs)("div",{className:"space-y-3",children:[(0,a.jsx)("h4",{className:"text-sm font-semibold text-gray-700 border-b border-green-200 pb-2",children:"Participation rate"}),(0,a.jsxs)("div",{className:"space-y-2",children:[aw("Traditional SCF",X,Q,0,100,5,"",!0,!1,"w-full",{tooltip:"The proportion of eligible spend from these mid-sized suppliers that would be funded by traditional SCF if they were to be included, likely higher participation than that of larger suppliers as they are smaller and likely to value the funding benefit."}),aw("PrimaTrade",ee,et,0,100,5,"",!0,!1,"w-full",{tooltip:"The proportion of eligible spend funded from these mid-sized suppliers by PrimaTrade SCF noting that participation is likely to be higher than traditional SCF if early payments are available at shipment rather than later after delivery."})]})]}),(0,a.jsxs)("div",{className:"space-y-3",children:[(0,a.jsx)("h4",{className:"text-sm font-semibold text-gray-700 border-b border-green-200 pb-2",children:"Early payment discount"}),aw("Traditional SCF",es,ea,0,5,.1,"",!0,!1,"w-full",{tooltip:"The discount on the invoice agreed for early payments (ignoring any funding charge). Traditional SCF does not usually support a separate charge here (set this to zero)."}),aw("PrimaTrade",er,ei,0,5,.1,"",!0,!1,"w-full",{tooltip:"The discount on the invoice agreed by the supplier for early payments at shipment; the buyer can set higher discounts for early payments than the pure SCF funding costs, routing this benefit to the buyer P&L; With PrimaTrade, buyers control the allocation of benefits between themselves and suppliers."})]}),(0,a.jsxs)("div",{className:"space-y-3",children:[(0,a.jsx)("h4",{className:"text-sm font-semibold text-gray-700 border-b border-green-200 pb-2",children:"Supplier savings rate"}),aw("Traditional SCF",en,el,0,30,.5,"",!0,!1,"w-full",{tooltip:"The comparison rate that suppliers use to evaluate early payment. When early payments are made after delivery, the benefit is usually only the interest cost saving at the suppliers marginal funding cost."}),aw("PrimaTrade",ed,ec,0,30,.5,"",!0,!1,"w-full",{tooltip:"The comparison rate that suppliers use to evaluate early payment. When early payments are made before delivery, supplier benefits include interest cost savings, avoidance of credit insurance and more efficient local financing."})]}),(0,a.jsxs)("div",{className:"space-y-3",children:[(0,a.jsx)("h4",{className:"text-sm font-semibold text-gray-700 border-b border-green-200 pb-2",children:"Payment terms (days)"}),aw("Average payment term",eo,ep,0,180,5," days",!1,!1,"w-full",{tooltip:"Standard contractual payment terms from invoice date for this tier of suppliers in the traditional scenario."}),aw("New payment term",ex,eh,0,180,5," days",!1,!1,"w-full",{tooltip:"Potentially extended payment terms from invoice date when early payment is available via PrimaTrade, which can include additional periods (beyond local legal limits) using digital bills of exchange."})]})]})]})]}),(0,a.jsxs)("div",{className:"border-2 border-orange-200 rounded-lg p-4 bg-orange-50/30",children:[(0,a.jsx)("h3",{className:"text-lg font-bold text-gray-900 mb-4",children:"Tier 3: Long tail suppliers"}),(0,a.jsxs)("div",{className:"space-y-4",children:[(0,a.jsxs)("div",{className:"grid md:grid-cols-2 gap-4 pb-4 border-b border-orange-200",children:[(0,a.jsx)("div",{className:"w-full space-y-2",children:(0,a.jsxs)("div",{className:"flex justify-between items-baseline",children:[(0,a.jsx)("label",{className:"text-sm font-medium text-gray-700",children:"Number of suppliers (auto-calc)"}),(0,a.jsx)("span",{className:"text-sm font-semibold text-gray-900",children:am(tg)})]})}),(0,a.jsxs)("div",{className:"w-full space-y-2",children:[(0,a.jsxs)("div",{className:"flex justify-between items-baseline",children:[(0,a.jsx)("label",{className:"text-sm font-medium text-gray-700",children:"Share of total spend (auto-calc)"}),(0,a.jsxs)("span",{className:"text-sm font-semibold ".concat(ty>=0?"text-gray-900":"text-red-600"),children:[ty.toFixed(1),"%"]})]}),ty<0&&(0,a.jsx)("p",{className:"text-xs text-red-600",children:"â ï¸ Tier 1 + Tier 2 share of spend exceeds 100%, change the assumptions further up to reduce their combined share of spend"})]})]}),(0,a.jsxs)("div",{className:"grid sm:grid-cols-2 lg:grid-cols-4 gap-6 pb-4 border-b border-orange-200",children:[(0,a.jsxs)("div",{className:"space-y-3",children:[(0,a.jsx)("h4",{className:"text-sm font-semibold text-gray-700 border-b border-orange-200 pb-2",children:"Participation rate"}),aw("Traditional SCF",em,eu,0,100,5,"",!0,!1,"w-full",{tooltip:"The proportion of eligible spend from the long-tail of suppliers that would be funded by traditional SCF if they were to be included, likely higher participation than other types of supplier."}),aw("PrimaTrade",eg,ey,0,100,5,"",!0,!1,"w-full",{tooltip:"The proportion of eligible spend funded from the long-tail of suppliers by PrimaTrade SCF noting that participation is likely to be high especially if early payments are available at shipment rather than later after delivery."})]}),(0,a.jsxs)("div",{className:"space-y-3",children:[(0,a.jsx)("h4",{className:"text-sm font-semibold text-gray-700 border-b border-orange-200 pb-2",children:"Early payment discount"}),aw("Traditional SCF",ef,eb,0,5,.1,"",!0,!1,"w-full",{tooltip:"The discount on the invoice agreed for early payments (ignoring any funding charge). Traditional SCF does not usually support a separate charge here (set this to zero)."}),aw("PrimaTrade",ej,ev,0,5,.1,"",!0,!1,"w-full",{tooltip:"The discount on the invoice agreed for early payments at shipment; smaller suppliers get bigger benefits from early payments and s
1o can agree higher discounts, noting the costs many suppliers already accept with payment card programmes."})]}),(0,a.jsxs)("div",{className:"space-y-3",children:[(0,a.jsx)("h4",{className:"text-sm font-semibold text-gray-700 border-b border-orange-200 pb-2",children:"Supplier savings rate"}),aw("Traditional SCF",eN,eT,0,30,.5,"",!0,!1,"w-full",{tooltip:"The comparison rate that suppliers use to evaluate early payment. When early payments are made after delivery, the benefit is usually only the interest cost saving at the suppliers marginal funding cost."}),aw("PrimaTrade",ew,eS,0,30,.5,"",!0,!1,"w-full",{tooltip:"The comparison rate that suppliers use to decide evaluate early payment. When early payments are made before delivery, supplier benefits include interest cost savings, avoidance of credit insurance, avoidance of card charges, and more efficient local financing."})]}),(0,a.jsxs)("div",{className:"space-y-3",children:[(0,a.jsx)("h4",{className:"text-sm font-semibold text-gray-700 border-b border-orange-200 pb-2",children:"Payment terms (days)"}),aw("Average payment term",eE,eR,0,180,5," days",!1,!1,"w-full",{tooltip:"Standard contractual payment terms from invoice date for this tier of suppliers in the traditional scenario."}),aw("New payment term",eV,eI,0,180,5," days",!1,!1,"w-full",{tooltip:"Potentially extended payment terms from invoice date when early payment is available via PrimaTrade, which can include additional periods (beyond local legal limits) using digital bills of exchange."})]})]}),(0,a.jsxs)("div",{children:[(0,a.jsxs)("div",{className:"flex flex-col sm:flex-row sm:items-center sm:justify-between gap-3 mb-3",children:[(0,a.jsx)("h4",{className:"text-sm font-semibold text-gray-700",children:"Card programme (potentially replaced with PrimaTrade SCF to capture more P&L whilst giving suppliers earlier payments)"}),(0,a.jsx)("div",{className:"w-full lg:w-1/3",children:aw("% remaining on cards",ek,eM,0,100,5,"",!0,!1,"w-full",{tooltip:"% of suppliers currently paid by card that remain being paid by card and not switched to PrimaTrade SCF."})})]}),(0,a.jsxs)("div",{className:"grid md:grid-cols-4 gap-4",children:[aw("Card usage %",eP,eC,0,100,5,"",!0,!1,"w-full",{tooltip:"Share of long-tail spend currently paid via payment cards (which PrimaTrade SCF can potentially replace)"}),aw("Supplier cost %",eF,eD,0,10,.1,"",!0,!1,"w-full",{tooltip:"All-in cost to supplier - the charge deducted from the payment made to the supplier by the card issuer."}),aw("Buyer rebate %",eA,eB,0,5,.1,"",!0,!1,"w-full",{tooltip:"Buyer rebate that the card issuer provides out of the fees it has charged to suppliers."}),aw("Buyer free period",eX,eQ,0,60,1,"days",!1,!1,"w-full",{tooltip:"Additional credit period that the buyer enjoys with the card program between when the supplier is paid and when the buyer has to settle."})]})]})]})]})]})]}),(0,a.jsxs)("div",{className:"print-break-avoid bg-white rounded-lg shadow-md p-4 sm:p-6",children:[(0,a.jsxs)("h2",{className:"text-xl font-bold text-gray-900 mb-4 flex items-center gap-2",children:[(0,a.jsx)(p,{className:"w-6 h-6 text-[#F08070]"}),"AP process & payment timing"]}),(0,a.jsxs)("div",{className:"grid md:grid-cols-2 lg:grid-cols-3 gap-6",children:[(0,a.jsxs)("div",{className:"space-y-4",children:[(0,a.jsx)("h3",{className:"text-sm font-semibold text-gray-700",children:"Days between handover and accepted delivery"}),aw("Domestic / services",eO,eL,0,30,1,"days",!1,!1,"w-full",{tooltip:"Days between despatch and confirmed delivery (so that the approval process can start)"}),aw("Cross-border",eZ,eU,0,60,1,"days",!1,!1,"w-full",{tooltip:"International (cross-border) supply chains involve more transit days as goods have to travel further (eg: from Asia) and also clear customs."})]}),(0,a.jsxs)("div",{className:"space-y-4",children:[(0,a.jsx)("h3",{className:"text-sm font-semibold text-gray-700",children:"Term and approval timing"}),aw("Delivery to invoice approval",eW,eH,0,30,1,"days",!1,!1,"w-full",{tooltip:"The typical number of days it takes for invoices to be approved once delivery has been confirmed."}),aw("Baseline payment term",e0,e1,0,90,1,"days",!1,!1,"w-full",{tooltip:"Every supply chain will offer its customers a natural amount of trade credit (an average baseline level) - whether thats 7 / 14 / 30 / 45 or 60 days. That baseline is available for free to buyers. Supply chain finance enables buyers to move standard payment terms beyond that baseline level. Put here your baseline payment term so that we can measure benef
1its of using SCF to achieve longer payment terms."})]}),(0,a.jsxs)("div",{className:"space-y-4",children:[(0,a.jsx)("h3",{className:"text-sm font-semibold text-gray-700",children:"SCF payment timing"}),aw("Traditional SCF: after approval",e_,eK,0,10,1,"days",!1,!1,"w-full",{tooltip:"Traditional SCF: the number of days it takes after invoice approval until the supplier requests and is paid its early payment, typically generation / transmission and processing of the payment file, supplier request being received and then actioned."}),aw("PrimaTrade: days after handover",eG,e$,0,10,1,"days",!1,!1,"w-full",{tooltip:"PrimaTrade SCF: the number of days after goods hand over / service delivery for suppliers to PO match, request early payment, for early payment approval to be given (which can be automated) and for the supplier to be paid. "})]})]})]})]}),(0,a.jsxs)("div",{className:"mt-8 flex justify-between items-center gap-4 print:hidden",children:[(0,a.jsx)("button",{onClick:th,className:"flex items-center gap-2 px-6 py-3 bg-gray-600 hover:bg-gray-700 text-white font-semibold rounded-full shadow-lg hover:shadow-xl transition-all duration-200 hover:scale-105",children:"Reset to Defaults"}),(0,a.jsxs)("button",{onClick:tx,className:"flex items-center gap-2 px-6 py-3 bg-primary-gradient text-white font-semibold rounded-full shadow-lg hover:shadow-xl transition-all duration-200 hover:scale-105",children:["Print to PDF",(0,a.jsx)(x,{className:"w-5 h-5"})]})]})]}),("comparison"===e||y)&&(0,a.jsx)(a.Fragment,{children:(0,a.jsxs)("div",{"data-panel":"comparison",className:"space-y-6 ".concat(y?"print-comparison-panel":""," ").concat("comparison"===e||y?"":"hidden"),children:[(0,a.jsx)("div",{className:"print-break-avoid w-full flex justify-center",children:(0,a.jsx)("div",{className:"w-full min-[1100px]",children:(0,a.jsx)("div",{className:"rounded-xl shadow-xl p-[1px]",children:(0,a.jsxs)("div",{className:"bg-white/95 rounded-[0.95rem] p-6",children:[(0,a.jsxs)("div",{className:"flex flex-col sm:flex-row sm:items-center sm:justify-between gap-3 mb-4",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("h2",{className:"text-2xl font-bold text-gray-900",children:"Highlights"}),(0,a.jsx)("p",{className:"text-sm text-gray-600",children:"Core SCF metrics at a glance."})]}),(0,a.jsxs)("div",{className:"flex items-center gap-2 bg-[#0F1B2C] text-white px-3 py-2 rounded-lg shadow",children:[(0,a.jsx)(d.Z,{className:"w-5 h-5"}),(0,a.jsx)("span",{className:"text-xs uppercase tracking-wide text-orange-100",children:"Performance"})]})]}),(0,a.jsx)("div",{className:"grid grid-cols-2 min-[920px]:grid-cols-5 gap-3 mb-6",children:ag.map((e,t)=>(0,a.jsxs)("div",{className:"bg-gray-50 rounded-lg p-3 border border-gray-200",children:[(0,a.jsxs)("div",{className:"text-xs font-medium text-gray-600 mb-2 flex items-center gap-1 whitespace-normal",style:{minHeight:"32px"},children:[e.label,(0,a.jsx)(h.Z,{text:e.tooltip,children:(0,a.jsx)(a.Fragment,{})})]}),(0,a.jsxs)("div",{className:"space-y-1.5",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("div",{className:"text-[10px] font-medium text-gray-500 mb-0.5",children:"Traditional SCF"}),(0,a.jsx)("div",{className:"text-sm font-semibold text-gray-700",children:e.trad})]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("div",{className:"text-[10px] font-medium text-[#D64933]/70 mb-0.5",children:"PrimaTrade SCF"}),(0,a.jsx)("div",{className:"text-sm font-semibold text-[#D64933]",children:e.pt})]})]})]},t))}),(0,a.jsx)("div",{className:"overflow-hidden rounded-lg border border-[#E6ECF2] shadow-inner",children:(0,a.jsxs)("table",{className:"w-full",children:[(0,a.jsx)("thead",{className:"bg-[#0F1B2C] text-white",children:(0,a.jsxs)("tr",{className:"",children:[(0,a.jsx)("th",{className:"text-left py-3 px-4 text-sm font-semibold",children:"Economic Value Breakdown"}),(0,a.jsx)("th",{className:"text-right py-3 px-4 text-sm font-semibold",children:"Traditional SCF"}),(0,a.jsx)("th",{className:"text-right py-3 px-4 text-sm font-semibold",children:"PrimaTrade SCF"})]})}),(0,a.jsxs)("tbody",{children:[(0,a.jsxs)("tr",{className:"border-b border-gray-200",children:[(0,a.jsx)("td",{className:"py-2 px-3 pl-6 text-sm text-gray-700",children:(0,a.jsx)(h.Z,{text:"Supplier benefit as a result of early payments, calculated using supplier savings rates",children:(0,a.jsx)("span",{children:"Benefit of early payments to suppliers"})})}),(0,a.jsx)("td",{className:"py-2 px-3 text-sm text-right",children:ax(tK)}),(0,a.jsx)("td",{className:"py-2 px-3 text-sm text-right text-[#D64933]",children:ax(sT)})]}),(0,a.jsxs)("tr",{className:"border-b border-gray-200",children:[(0,a.jsx)("td",{className:"py-2 px-3 pl-6 text-sm text-gray-700",children:(0,a.jsx)(h.Z,{text:"Costs charged to suppliers by financiers (included in early payment discount if this is present) and separately any card costs",children:(0,a.jsx)("span",{children:"Cost of early payments (incl card) to suppliers"})})}),(0,a.jsx)("td",{className:"py-2 px-3 text-sm text-right",children:ax(tW)}),(0,a.jsx)("td",{className:"py-2 px-3 text-sm text-right text-[#D64933]",children:ax(sb)})]}),(0,a.jsxs)("tr",{className:"border-b-2 border-gray-300 bg-blue-50",children:[(0,a.jsx)("td",{className:"py-2 px-3 text-sm font-semibold text-gray-900",children:(0,a.jsx)(h.Z,{text:"Time-value benefit at the SCF rate less larger of supplier discount and SCF cost (and card costs)",children:(0,a.jsx)("span",{children:"Net supplier benefit"})})}),(0,a.jsx)("td",{className:"py-2 px-3 text-sm text-right font-bold",children:ax(tG)}),(0,a.jsx)("td",{className:"py-2 px-3 text-sm text-right font-bold text-[#D64933]",children:ax(sw)})]}),(0,a.jsxs)("tr",{className:"border-b border-gray-200",children:[(0,a.jsx)("td",{className:"py-2 px-3 pl-6 text-sm text-gray-700",children:(0,a.jsx)(h.Z,{text:"Buyer gets a funding benefit via the cash flow supp
1ort provided to suppliers by the SCF programme, calculated at the SCF rate.",children:(0,a.jsx)("span",{children:"Benefit of funding provided to the buyer"})})}),(0,a.jsx)("td",{className:"py-2 px-3 text-sm text-right",children:ax(t1)}),(0,a.jsx)("td",{className:"py-2 px-3 text-sm text-right text-[#D64933]",children:ax(sR)})]}),(0,a.jsxs)("tr",{className:"border-b border-gray-200",children:[(0,a.jsx)("td",{className:"py-2 px-3 pl-6 text-sm text-gray-700",children:(0,a.jsx)(h.Z,{text:"Card rebates and funding benefit plus (PrimaTrade only) the P&L benefit arising from early payment discounts.",children:(0,a.jsx)("span",{children:"Benefit of discounts and rebates earned by the buyer"})})}),(0,a.jsx)("td",{className:"py-2 px-3 text-sm text-right",children:ax(t$+t3)}),(0,a.jsx)("td",{className:"py-2 px-3 text-sm text-right text-[#D64933]",children:ax(sS+sI)})]}),(0,a.jsxs)("tr",{className:"bg-green-50",children:[(0,a.jsx)("td",{className:"py-2 px-3 text-sm font-semibold text-gray-900",children:(0,a.jsx)(h.Z,{text:"Card rebates and funding benefit plus (PrimaTrade only) the P&L benefit arising from early payment discounts.",children:(0,a.jsx)("span",{children:"Net buyer benefit"})})}),(0,a.jsx)("td",{className:"py-2 px-3 text-sm text-right font-bold",children:ax(t2)}),(0,a.jsx)("td",{className:"py-2 px-3 text-sm text-right font-bold text-[#D64933]",children:ax(sV)})]})]})]})})]})})})}),(0,a.jsx)("div",{className:"print-break-avoid w-full flex justify-center",children:(0,a.jsxs)("div",{className:"w-full min-[1100px] bg-white rounded-lg shadow-md p-4 sm:p-6",children:[(0,a.jsx)("h2",{className:"text-xl font-bold text-gray-900 mb-4",children:"Economics (annualised)"}),(0,a.jsx)("div",{className:"overflow-x-auto",children:(0,a.jsxs)("table",{className:"w-full",children:[(0,a.jsx)("thead",{children:(0,a.jsxs)("tr",{className:"border-b-2 border-gray-300",children:[(0,a.jsx)("th",{className:"text-left py-2 px-3 text-sm font-semibold text-gray-700",children:"Item"}),(0,a.jsx)("th",{className:"text-right py-2 px-3 text-sm font-semibold text-gray-700",children:"Traditional SCF"}),(0,a.jsx)("th",{className:"text-right py-2 px-3 text-sm font-semibold text-[#D64933]",children:"PrimaTrade SCF"})]})}),(0,a.jsxs)("tbody",{className:"divide-y divide-gray-200",children:[(0,a.jsx)(g,{label:"Supplier SCF financing cost: Tier 1",currencySymbol:N,tradValue:tB,ptValue:sd,note:"Costs charged to suppliers by financiers (included in the early payment discount to avoid double-counting if this capability is supported eg: in a PrimaTrade programme)"}),(0,a.jsx)(g,{label:"Supplier SCF financing cost: Tier 2",currencySymbol:N,tradValue:tk,ptValue:sc,note:"Costs charged to suppliers by financiers (included in the early payment discount to avoid double-counting if this capability is supported eg: in a PrimaTrade programme)"}),(0,a.jsx)(g,{label:"Supplier SCF financing cost: Tier 3",currencySymbol:N,tradValue:tM,ptValue:so,note:"Costs charged to suppliers by financiers (included in the early payment discount to avoid double-counting if this capability is supported eg: in a PrimaTrade programme)"}),(0,a.jsx)(g,{label:"Actual discount accepted: Tier 1",currencySymbol:N,tradValue:tO,ptValue:su,note:"Higher of the SCF financing cost and the early payment discount (if any) agreed with the buyer"}),(0,a.jsx)(g,{label:"Actual discount accepted: Tier 2",currencySymbol:N,tradValue:tL,ptValue:sg,note:"Higher of the SCF financing cost and the early payment discount (if any) agreed with the buyer"}),(0,a.jsx)(g,{label:"Actual discount accepted: Tier 3",currencySymbol:N,tradValue:tZ,ptValue:sy,note:"Higher of the SCF financing and the early payment discount (if any) agreed with the buyer (ignoring any card charges)"}),(0,a.jsx)(g,{label:"Card costs (long tail)",currencySymbol:N,tradValue:tU,ptValue:sf,note:"Rate charged by card providers to suppliers where supplier invoices are being settled by card (deducted from the supplier's receipt)"}),(0,a.jsxs)("tr",{className:"bg-gray-100 font-semibold",children:[(0,a.jsx)("td",{className:"py-2 px-3 text-sm",children:(0,a.jsx)(h.Z,{text:"Early payment discounts (PrimaTrade only)",children:(0,a.jsx)("span",{children:"Total supplier costs (gross)"})})}),(0,a.jsx)("td",{className:"py-2 px-3 text-sm text-right",children:ax(tW)}),(0,a.jsx)("td",{className:"py-2 px-3 text-sm text-right text-[#D64933]",children:ax(sb)})]}),(0,a.jsx)(g,{label:"Supplier benefit: Tier 1",currencySymbol:N,tradValue:tH,ptValue:sj,note:"Supplier benefit as a result of early payments, calculated using the relevant supplier savings rate"}),(0,a.jsx)(g,{label:"Supplier benefit: Tier 2",currencySymbol:N,tradValue:tq,ptValue:sv,note:"Supplier benefit as a result of early payments, calculatedusing the relevant supplier savings rate"}),(0,a.jsx)(g,{label:"Supplier benefit: Tier 3",currencySymbol:N,tradValue:t_,ptValue:sN,note:"Supplier benefit as a result of early payments, calculated using the relevant supplier savings rate"}),(0,a.jsxs)("tr",{className:"bg-gray-100 font-semibold",children:[(0,a.jsx)("td",{className:"py-2 px-3 text-sm",children:(0,a.jsx)(h.Z,{text:"Total of the supplier savings",children:(0,a.jsx)("span",{children:"Total supplier benefit at savings rates"})})}),(0,a.jsx)("td",{className:"py-2 px-3 text-sm text-right",children:ax(tK)}),(0,a.jsx)("td",{className:"py-2 px-3 text-sm text-right text-[#D64933]",children:ax(sT)})]}),(0,a.jsxs)("tr",{className:"bg-blue-100 font-bold",children:[(0,a.jsx)("td",{className:"py-2 px-3 text-sm",children:(0,a.jsx)(h.Z,{text:"The total supplier benefit of early payments less the costs incurred (larger of supplier discount and SCF cost and then additionally any card costs)",children:(0,a.jsx)("span",{children:"Supplier net benefit"})})}),(0,a.jsx)("td",{className:"py-2 px-3 text-sm text-right",children:ax(tG)}),(0,a.jsx)("td",{className:"py-2 px-3 text-sm text-right text-[#D64933]",children:ax(sw)})]}),(0,a.jsx)(g,{label:"Buyer rebate from cards",currencySymbol:N,tradValue:t$,ptValue:sS,note:"Rebate returned to buyer by the card provider (out of the charge the card provider makes to
1suppliers)."}),(0,a.jsx)(g,{label:"Buyer free funding from cards",currencySymbol:N,tradValue:tY,ptValue:sP,note:"Average delay between supplier payment by the card provider and settlement by the buyer to the card provider times the SCF rate."}),(0,a.jsx)(g,{label:"Benefit of SCF funding",currencySymbol:N,tradValue:t1,ptValue:sR,note:"Value of the SCF working capital support to the supply chain that the buyer receives calculated at the SCF rate."}),(0,a.jsx)(g,{label:"Early payment discounts less SCF costs",currencySymbol:N,tradValue:t3,ptValue:sI}),(0,a.jsxs)("tr",{className:"bg-green-100 font-bold",children:[(0,a.jsx)("td",{className:"py-2 px-3 text-sm",children:(0,a.jsx)(h.Z,{text:"Card rebates and funding benefit plus (PrimaTrade SCF only) early payment discounts less SCF financing costs",children:(0,a.jsx)("span",{children:"Buyer net benefit"})})}),(0,a.jsx)("td",{className:"py-2 px-3 text-sm text-right",children:ax(t2)}),(0,a.jsx)("td",{className:"py-2 px-3 text-sm text-right text-[#D64933]",children:ax(sV)})]}),(0,a.jsxs)("tr",{className:"bg-[#F08070]/30 font-bold text-base",children:[(0,a.jsx)("td",{className:"py-4 px-4",children:(0,a.jsx)(h.Z,{text:"Total of buyer and supplier net benefits - so the total economic value created by the SCF programme",children:(0,a.jsx)("span",{children:"Total value created (buyer + suppliers)"})})}),(0,a.jsx)("td",{className:"py-4 px-4 text-right",children:ax(t4)}),(0,a.jsx)("td",{className:"py-4 px-4 text-right text-[#D64933]",children:ax(sO)})]}),(0,a.jsxs)("tr",{className:"bg-gray-100 font-semibold",children:[(0,a.jsx)("td",{className:"py-3 px-3 text-sm",children:(0,a.jsx)(h.Z,{text:"Working capital provided via the supply chain (total trade credit provided by suppliers & cards)",children:(0,a.jsx)("span",{children:"Total amount of trade credit"})})}),(0,a.jsx)("td",{className:"py-3 px-3 text-sm text-right",children:ax(tQ)}),(0,a.jsx)("td",{className:"py-3 px-3 text-sm text-right text-[#D64933]",children:ax(sD)})]})]})]})})]})}),(0,a.jsx)("div",{className:"print-break-avoid w-full flex justify-center",children:(0,a.jsxs)("div",{className:"w-full min-[1100px] bg-white rounded-lg shadow-md p-4 sm:p-6",children:[(0,a.jsx)("h2",{className:"text-xl font-bold text-gray-900 mb-4",children:"Baseline AP Cost & Timing"}),(0,a.jsx)("div",{className:"overflow-x-auto",children:(0,a.jsxs)("table",{className:"w-full",children:[(0,a.jsx)("thead",{children:(0,a.jsxs)("tr",{className:"border-b-2 border-gray-300",children:[(0,a.jsx)("th",{className:"text-left py-2 px-3 text-sm font-semibold text-gray-700",children:"Item"}),(0,a.jsx)("th",{className:"text-right py-2 px-3 text-sm font-semibold text-gray-700",children:"Value"})]})}),(0,a.jsxs)("tbody",{className:"divide-y divide-gray-200",children:[(0,a.jsxs)("tr",{children:[(0,a.jsx)("td",{className:"py-2 px-4 text-sm",children:(0,a.jsx)(h.Z,{text:"As input",children:(0,a.jsx)("span",{children:"Cross-border share of spend"})})}),(0,a.jsxs)("td",{className:"py-2 px-4 text-sm text-right font-medium",children:[eq.toFixed(1),"%"]})]}),(0,a.jsxs)("tr",{children:[(0,a.jsx)("td",{className:"py-2 px-4 text-sm",children:(0,a.jsx)(h.Z,{text:"100% - cross-border",children:(0,a.jsx)("span",{children:"Domestic and services share"})})}),(0,a.jsxs)("td",{className:"py-2 px-4 text-sm text-right font-medium",children:[(100-eq).toFixed(1),"%"]})]}),(0,a.jsxs)("tr",{children:[(0,a.jsx)("td",{className:"py-2 px-4 text-sm",children:(0,a.jsx)(h.Z,{text:"Invoice date lag + payment terms",children:(0,a.jsx)("span",{children:"Average time taken to approve invoices"})})}),(0,a.jsxs)("td",{className:"py-2 px-4 text-sm text-right font-medium",children:[tv.toFixed(1)," days"]})]})]})]})})]})}),(0,a.jsx)("div",{className:"print-break-avoid w-full flex justify-center",children:(0,a.jsxs)("div",{className:"w-full min-[1100px] bg-white rounded-lg shadow-md p-4 sm:p-6",children:[(0,a.jsx)("h2",{className:"text-xl font-bold text-gray-900 mb-4",children:"Programme Scope & Volume"}),(0,a.jsx)("div",{className:"overflow-x-auto",children:(0,a.jsxs)("table",{className:"w-full",children:[(0,a.jsx)("thead",{children:(0,a.jsxs)("tr",{className:"border-b-2 border-gray-300",children:[(0,a.jsx)("th",{className:"text-left py-2 px-3 text-sm font-semibold text-gray-700",children:"Item"}),(0,a.jsx)("th",{className:"text-right py-2 px-3 text-sm font-semibold text-gray-700",children:"Traditional SCF"}),(0,a.jsx)("th",{className:"text-right py-2 px-3 text-sm font-semibold text-[#D64933]",children:"PrimaTrade SCF"})]})}),(0,a.jsxs)("tbody",{className:"divide-y divide-gray-200",children:[(0,a.jsx)(g,{label:"Eligible suppliers (N)",currencySymbol:N,tradValue:"".concat(F," suppliers"),ptValue:"".concat(P," suppliers"),note:"PrimaTrade can include the full supplier base as a result of automation, digitisation, PO Match and PrimaTrade on-boarding capabilities."}),(0,a.jsx)(g,{label:"Spend: Tier 1 suppliers",currencySymbol:N,tradValue:tf,ptValue:tf,note:"Total spend \xd7 tier 1 share"}),(0,a.jsx)(g,{label:"Spend: Tier 2 suppliers",currencySymbol:N,tradValue:tb,ptValue:tb,note:"Total spend \xd7 tier 2 share"}),(0,a.jsx)(g,{label:"Spend: Long tail suppliers",currencySymbol:N,tradValue:tj,ptValue:tj,note:"Remaining total spend being the share of the long-tail supply chain."}),(0,a.jsx)(g,{label:"% Tier 1 participating",currencySymbol:N,tradValue:"".concat(k,"%"),ptValue:"".concat(E,"%")}),(0,a.jsx)(g,{label:"% Tier 2 participating",currencySymbol:N,tradValue:"0%",ptValue:"".concat(ee,"%")}),(0,a.jsx)(g,{label:"% Tier 3 participating",currencySymbol:N,tradValue:"0%",ptValue:"".concat(eg,"%")}),(0,a.jsx)(g,{label:"Participating spend funded",currencySymbol:N,tradValue:tP,ptValue:sa,note:"The total spend of participating suppliers that is funded early via the SCF programme."}),(0,a.jsx)(g,{label:"Active suppliers: Tier 1",currencySymbol:N,tradValue:"".concat(am(t6,0)," suppliers"),ptValue:"".concat(am(sL,0)," suppliers"),note:"Larger suppliers should find PrimaTrade SCF more attractive because the payments come significantly earlier (early payments are truly early)."}),(0,a.jsx)(g,{label:"Active suppliers: Tier 2",currencySymbol:N,tradValue:"".concat(am(t5,0)," suppliers"),ptValue:"".concat(am(sZ,0)," suppliers"),note:"More suppliers included via automation supported by digitisation and PO Match. and PrimaTrade on-boarding capabilities."}),(0,a.jsx)(g,{label:"Active suppliers: Tier 3",currencySymbol:N,tradValue:"".concat(am(t7,0)," suppliers"),ptValue:"".concat(am(sU,0)," suppliers"),note:"Significantly more suppliers included via automation supported by digitisation and PO Match, and PrimaTrade on-boarding capabilities."})]})]})})]})}),(0,a.jsx)("div",{className:"w-full flex justify-center",children:(0,a.jsxs)("div",{className:"w-full min-[1100px] bg-white mt-8 flex justify-between items-center gap-4 print:hidden",children:[(0,a.jsx)("button",{onClick:th,className:"flex items-center gap-2 px-6 py-3 bg-gray-600 hover:bg-gray-700 text-white font-semibold rounded-full shadow-lg hover:shadow-xl transition-all duration-200 hover:scale-105",children:"Reset to Defaults"}),(0,a.jsxs)("button",{onClick:tx,className:"flex items-center gap-2 px-6 py-3 bg-primary-gradient text-white font-semibold rounded-full shadow-lg hover:shadow-xl transition-all duration-200 hover:scale-105",children:["Print to PDF",(0,a.jsx)(x,{className:"w-5 h-5"})]})]})})]})}),("simulation"===e||y)&&(0,a.jsx)(a.Fragment,{children:(0,a.jsxs)("div",{"data-panel":"simulation",className:"space-y-4 sm:sp
1ace-y-6 ".concat(y?"print-simulation-panel":""," ").concat("simulation"===e||y?"":"hidden"),children:[(0,a.jsxs)("div",{className:"print-break-avoid bg-primary-gradient rounded-lg shadow-xl p-8 text-white",children:[(0,a.jsx)("h2",{className:"text-2xl font-bold mb-2",children:"Impact Summary"}),(0,a.jsx)("p",{className:"text-sm text-red-100 mb-6",children:"Highlights of the impact when a traditional SCF programme is upgraded to a PrimaTrade SCF programme based on the inputs (including any adjustments to the card payment programme)."}),(0,a.jsxs)("div",{className:"grid md:grid-cols-5 gap-4",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("div",{className:"text-red-100 text-xs mb-2",children:"Profit Before Tax"}),(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)("div",{className:"text-lg font-bold",children:ax(e9)}),(0,a.jsx)("div",{className:"text-red-100",children:"â"}),(0,a.jsx)("div",{className:"text-lg font-bold",children:ax(s3)})]})]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("div",{className:"text-red-100 text-xs mb-2",children:"EBITDA"}),(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)("div",{className:"text-lg font-bold",children:ax(ts)}),(0,a.jsx)("div",{className:"text-red-100",children:"â"}),(0,a.jsx)("div",{className:"text-lg font-bold",children:ax(s4)})]})]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("div",{className:"text-red-100 text-xs mb-2",children:"Total Trade Credit"}),(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)("div",{className:"text-lg font-bold",children:ax(tQ)}),(0,a.jsx)("div",{className:"text-red-100",children:"â"}),(0,a.jsx)("div",{className:"text-lg font-bold",children:ax(sD)})]})]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("div",{className:"text-red-100 text-xs mb-2",children:"Leverage Ratio"}),(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsxs)("div",{className:"text-lg font-bold",children:[am(ar,2),"x"]}),(0,a.jsx)("div",{className:"text-red-100",children:"â"}),(0,a.jsxs)("div",{className:"text-lg font-bold",children:[am(ai,2),"x"]})]})]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("div",{className:"text-red-100 text-xs mb-2",children:"Interest Cover"}),(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsxs)("div",{className:"text-lg font-bold",children:[am(ao,2),"x"]}),(0,a.jsx)("div",{className:"text-red-100",children:"â"}),(0,a.jsxs)("div",{className:"text-lg font-bold",children:[am(ap,2),"x"]})]})]})]})]}),(0,a.jsxs)("div",{className:"print-break-avoid bg-white rounded-lg shadow-md p-4 sm:p-6",children:[(0,a.jsx)("h2",{className:"text-xl font-bold text-gray-900 mb-4",children:"Historic Financial Position (for comparison)"}),(0,a.jsx)("p",{className:"text-sm text-gray-600 mb-6",children:"Enter your current financial figures in millions to see the impact of upgrading SCF to a PrimaTrade SCF programme"}),(0,a.jsxs)("div",{className:"flex flex-col lg:flex-row gap-8",children:[(0,a.jsx)("div",{className:"flex-1 lg:max-w-3xl",children:(0,a.jsxs)("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-x-8 gap-y-4",children:[(0,a.jsxs)("div",{className:"space-y-4 bg-amber-50 p-4 rounded-lg border border-amber-100",children:[(0,a.jsx)("h3",{className:"text-base font-bold text-gray-900 mb-3 pb-2 border-b-2 border-gray-300",children:"Key figures: P&L"}),(0,a.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,a.jsx)("label",{className:"text-sm text-gray-700 flex-1",children:"Turnover / Revenue"}),(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)("input",{type:"number",value:e2/1e6,onChange:e=>e3(1e6*parseFloat(e.target.value||0)),className:"w-28 px-2 py-1.5 text-sm border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-[#F08070] text-right"}),(0,a.jsxs)("span",{className:"text-xs text-gray-600 w-10",children:[N," MM"]})]})]}),(0,a.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,a.jsx)("label",{className:"text-sm text-gray-700 flex-1",children:"Cost of Sales"}),(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)("input",{type:"number",value:e4/1e6,onChange:e=>e6(1e6*parseFloat(e.target.value||0)),className:"w-28 px-2 py-1.5 text-sm border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-[#F08070] text-right"}),(0,a.jsxs)("span",{className:"text-xs text-gray-600 w-10",children:[N," MM"]})]})]}),(0,a.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,a.jsx)("label",{className:"text-sm text-gray-700 flex-1",children:"Operating Profit"}),(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)("input",{type:"number",value:e5/1e6,onChange:e=>e7(1e6*parseFloat(e.target.value||0)),className:"w-28 px-2 py-1.5 text-sm border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-[#F08070] text-right"}),(0,a.jsxs)("span",{className:"text-xs text-gray-600 w-10",children:[N," MM"]})]})]}),(0,a.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,a.jsx)("label",{className:"text-sm text-gray-700 flex-1",children:"Net Interest Payable"}),(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)("input",{type:"number",value:te/1e6,onChange:e=>tt(1e6*parseFloat(e.target.value||0)),className:"w-28 px-2 py-1.5 text-sm border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-[#F08070] text-right"}),(0,a.jsxs)("span",{className:"text-xs text-gray-600 w-10",children:[N," MM"]})]})]}),(0,a.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,a.jsx)("label",{className:"text-sm text-gray-700 flex-1",children:"Profit before tax"}),(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)("input",{type:"number",value:e9/1e6,onChange:e=>e8(1e6*parseFloat(e.target.value||0)),className:"w-28 px-2 py-1.5 text-sm border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-[#F08070] text-right"}),(0,a.jsxs)("span",{className:"text-xs text-gray-600 w-10",children:[N," MM"]})]})]}),(0,a.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,a.jsx)("label",{className:"text-sm text-gray-700 flex-1",children:"EBITDA"}),(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)("input",{type:"number",value:ts/1e6,onChange:e=>ta(1e6*parseFloat(e.target.value||0)),className:"w-28 px-2 py-1.5 text-sm border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-[#F08070] text-right"}),(0,a.jsxs)("span",{className:"text-xs text-gray-600 w-10",children:[N," MM"]})]})]})]}),(0,a.jsxs)("div",{className:"space-y-4 bg-sky-50 p-4 rounded-lg border border-sky-100",children:[(0,a.jsx)("h3",{className:"text-base font-bold text-gray-900 mb-3 pb-2 border-b-2 border-gray-300",children:"Balance sheet and cash flow"}),(0,a.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,a.jsx)("label",{className:"text-sm text-gray-700 flex-1",children:(0,a.jsx)(h.Z,{text:"The expected value for trade payables based on the inputs on panel 1 is ".concat(ax(tQ)),children:(0,a.jsx)("span",{children:"Trade Payables"})})}),(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)("input",{type:"number",value:tr/1e6,onChange:e=>ti(1e6*parseFloat(e.target.value||0)),className:"w-28 px-2 py-1.5 text-sm border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-[#F08070] text-right"}),(0,a.jsxs)("span",{className:"text-xs text-gray-600 w-10",children:[N," MM"]})]})]}),(0,a.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,a.jsx)("label",{className:"text-sm text-gray-700 flex-1",children:"Net Debt"}),(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)("input",{type:"number",value:tn/1e6,onChange:e=>tl(1e6*parseFloat(e.target.value||0)),className:"w-28 px-2 py-1.5 text-sm border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-[#F08070] text-right"}),(0,a.jsxs)("span",{className:"text-xs text-gray-600 w-10",children:[N," MM"]})]})]}),(0,a.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,a.jsx)("label",{className:"text-sm text-gray-700 flex-1",children:"Equity"}),(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)("input",{type:"number",value:td/1e6,onChange:e=>tc(1e6*parseFloat(e.target.value||0)),className:"w-28 px-2 py-1.5 text-sm border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-[#F08070] text-right"}),(0,a.jsxs)("span",{className:"text-xs text-gray-600 w-10",children:[N," MM"]})]})]}),(0,a.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,a.jsx)("label",{className:"text-sm text-gray-700 flex-1",children:"Free Cash Flow"}),(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)("input",{type:"number",value:to/1e6,onChange:e=>tp(1e6*parseFloat(e.target.value||0)),className:"w-28 px-2 py-1.5 text-sm border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-[#F08070] text-right"}),(0,a.jsxs)("span",{className:"text-xs text-gray-600 w-10",children:[N," MM"]})]})]})]})]})}),(0,a.jsx)("div",{className:"flex-1 lg:min-w-[300px]",children:(0,a.jsxs)("div",{className:"bg-gradient-to-br from-white to-[#F08070]/5 rounded-lg border-2 border-[#F08070]/30 p-6 h-full",children:[(0,a.jsxs)("h3",{className:"text-base font-bold text-gray-900 mb-4 flex items-center gap-2",children:[(0,a.jsx)(d.Z,{className:"w-5 h-5 text-[#D64933]"}),"Enterprise-Wide Impact"]}),(0,a.jsxs)("div",{className:"space-y-4 text-sm text-gray-700 leading-relaxed",children:[(0,a.jsx)("p",{children:"Upgrading your SCF offerings to a next generation solution can materially improve your financial ratios and your financial statements at enterprise level. PrimaTrade's platform is proven at scale and enables the support offereing SCF to be delivered to those suppliers that truly need it (mid-tier and long-tail suppliers) whilst monetising the benefits for your own P&L."}),(0,a.jsx)("p",{children:"This simulation compares a traditional SCF solution (assumed to be already in the historic numbers) with the impact that PrimaTrade's platform can deliver. The key differences are: more suppliers are included (using PO match, automation and digitisation) and the efficiencies are monetised to benefit the buyer via early payment discounts."}),(0,a.jsx)("p",{children:"Instead of suppliers using external funding (eg: factoring) or paying high fees to card providers, they are funded efficie
1ntly via the PrimaTrade platform with the buyer taking the P&L win of these costs for itself."})]})]})})]})]}),(0,a.jsxs)("div",{className:"print-break-avoid bg-white rounded-lg shadow-md p-4 sm:p-6",children:[(0,a.jsxs)("h2",{className:"text-xl font-bold text-gray-900 mb-4 flex items-center gap-2",children:[(0,a.jsx)(c,{className:"w-6 h-6 text-[#F08070]"}),"P&L Impact"]}),(0,a.jsx)("div",{className:"overflow-x-auto",children:(0,a.jsxs)("table",{className:"w-full",children:[(0,a.jsx)("thead",{children:(0,a.jsxs)("tr",{className:"border-b-2 border-gray-300",children:[(0,a.jsx)("th",{className:"text-left py-3 px-4 text-sm font-semibold text-gray-700 w-64",children:"Item"}),(0,a.jsx)("th",{className:"text-right py-3 px-4 text-sm font-semibold text-gray-700 w-40",children:"With Traditional SCF"}),(0,a.jsx)("th",{className:"text-right py-3 px-4 text-sm font-semibold text-[#D64933] w-40",children:"Add PrimaTrade SCF"}),(0,a.jsx)("th",{className:"text-left py-3 px-4 text-sm font-semibold text-gray-700",children:"Notes"})]})}),(0,a.jsxs)("tbody",{className:"divide-y divide-gray-200",children:[(0,a.jsxs)("tr",{children:[(0,a.jsx)("td",{className:"py-3 px-4 text-sm",children:"Revenues"}),(0,a.jsx)("td",{className:"py-3 px-4 text-sm text-right font-medium",children:ax(e2)}),(0,a.jsx)("td",{className:"py-3 px-4 text-sm text-right font-medium text-[#D64933]",children:ax(e2)}),(0,a.jsx)("td",{className:"py-3 px-4 text-xs text-gray-600",children:"No change"})]}),(0,a.jsxs)("tr",{children:[(0,a.jsx)("td",{className:"py-3 px-4 text-sm",children:"Cost of sales"}),(0,a.jsx)("td",{className:"py-3 px-4 text-sm text-right font-medium",children:ax(e4)}),(0,a.jsx)("td",{className:"py-3 px-4 text-sm text-right font-medium text-red-700",children:ax(s1)}),(0,a.jsx)("td",{className:"py-3 px-4 text-xs text-gray-600",children:"Reduced by supplier discounts which lower cost of goods"})]}),(0,a.jsxs)("tr",{className:"bg-[#F08070]/10",children:[(0,a.jsx)("td",{className:"py-3 px-4 text-sm font-semibold",children:"Operating profit"}),(0,a.jsx)("td",{className:"py-3 px-4 text-sm text-right font-bold",children:ax(e5)}),(0,a.jsx)("td",{className:"py-3 px-4 text-sm text-right font-bold text-red-700",children:ax(s2)}),(0,a.jsx)("td",{className:"py-3 px-4 text-xs text-gray-600",children:"Higher as supplier discounts reduce cost of goods"})]}),(0,a.jsxs)("tr",{children:[(0,a.jsx)("td",{className:"py-3 px-4 text-sm",children:"Net interest"}),(0,a.jsx)("td",{className:"py-3 px-4 text-sm text-right font-medium",children:ax(te)}),(0,a.jsx)("td",{className:"py-3 px-4 text-sm text-right font-medium text-red-700",children:ax(s6)}),(0,a.jsx)("td",{className:"py-3 px-4 text-xs text-gray-600",children:"Lower as net debt reduced by working capital improvements"})]}),(0,a.jsxs)("tr",{children:[(0,a.jsx)("td",{className:"py-3 px-4 text-sm",children:"Profit before tax"}),(0,a.jsx)("td",{className:"py-3 px-4 text-sm text-right font-medium",children:ax(e9)}),(0,a.jsx)("td",{className:"py-3 px-4 text-sm text-right font-medium text-red-700",children:ax(s3)}),(0,a.jsx)("td",{className:"py-3 px-4 text-xs text-gray-600",children:"Higher as all benef
1its show (both discounts and financial benefits flow through)"})]}),(0,a.jsxs)("tr",{className:"bg-[#F08070]/10",children:[(0,a.jsx)("td",{className:"py-3 px-4 text-sm font-semibold",children:"EBITDA"}),(0,a.jsx)("td",{className:"py-3 px-4 text-sm text-right font-bold",children:ax(ts)}),(0,a.jsx)("td",{className:"py-3 px-4 text-sm text-right font-bold text-red-700",children:ax(s4)}),(0,a.jsx)("td",{className:"py-3 px-4 text-xs text-gray-600",children:"Higher as cost of sales is lower"})]})]})]})})]}),(0,a.jsxs)("div",{className:"print-break-avoid bg-white rounded-lg shadow-md p-4 sm:p-6",children:[(0,a.jsxs)("h2",{className:"text-xl font-bold text-gray-900 mb-4 flex items-center gap-2",children:[(0,a.jsx)(l.Z,{className:"w-6 h-6 text-[#F08070]"}),"Balance Sheet & Cash Flow Impact"]}),(0,a.jsx)("div",{className:"overflow-x-auto",children:(0,a.jsxs)("table",{className:"w-full",children:[(0,a.jsx)("thead",{children:(0,a.jsxs)("tr",{className:"border-b-2 border-gray-300",children:[(0,a.jsx)("th",{className:"text-left py-3 px-4 text-sm font-semibold text-gray-700 w-64",children:"Item"}),(0,a.jsx)("th",{className:"text-right py-3 px-4 text-sm font-semibold text-gray-700 w-40",children:"With Traditional SCF"}),(0,a.jsx)("th",{className:"text-right py-3 px-4 text-sm font-semibold text-[#D64933] w-40",children:"Add PrimaTrade SCF"}),(0,a.jsx)("th",{className:"text-left py-3 px-4 text-sm font-semibold text-gray-700",children:"Notes"})]})}),(0,a.jsxs)("tbody",{className:"divide-y divide-gray-200",children:[(0,a.jsxs)("tr",{children:[(0,a.jsx)("td",{className:"py-3 px-4 text-sm",children:(0,a.jsx)(h.Z,{text:"The expected value for trade payables based on the inputs on panel 1 is ".concat(ax(tQ)),children:(0,a.jsx)("span",{children:"Trade payables"})})}),(0,a.jsx)("td",{className:"py-3 px-4 text-sm text-right font-medium",children:ax(tr)}),(0,a.jsx)("td",{className:"py-3 px-4 text-sm text-right font-medium text-[#D64933]",children:ax(s5)}),(0,a.jsx)("td",{className:"py-3 px-4 text-xs text-gray-600",children:"Goes up as suppliers are providing more credit"})]}),(0,a.jsxs)("tr",{children:[(0,a.jsx)("td",{className:"py-3 px-4 text-sm",children:"Net debt"}),(0,a.jsx)("td",{className:"py-3 px-4 text-sm text-right font-medium",children:ax(tn)}),(0,a.jsx)("td",{className:"py-3 px-4 text-sm text-right font-medium text-red-700",children:ax(s7)}),(0,a.jsx)("td",{className:"py-3 px-4 text-xs text-gray-600",children:"Reduced as lower borrowing (suppliers provide more credit, if card use reduces then buyer card credit reduces)"})]}),(0,a.jsxs)("tr",{children:[(0,a.jsx)("td",{className:"py-3 px-4 text-sm",children:"Equity"}),(0,a.jsx)("td",{className:"py-3 px-4 text-sm text-right font-medium",children:ax(td)}),(0,a.jsx)("td",{className:"py-3 px-4 text-sm text-right font-medium text-red-700",children:ax(s9)}),(0,a.jsx)("td",{className:"py-3 px-4 text-xs text-gray-600",children:"Increased as earnings are higher over the period"})]}),(0,a.jsxs)("tr",{className:"bg-[#F08070]/10",children:[(0,a.jsx)("td",{className:"py-3 px-4 text-sm font-semibold",children:"Free cash flow"}),(0,a.jsx)("td",{className:"py-3 px-4 text-sm text-right font-bold",children:ax(to)}),(0,a.jsx)("td",{className:"py-3 px-4 text-sm text-right font-bold text-red-700",children:ax(s8)}),(0,a.jsx)("td",{className:"py-3 px-4 text-xs text-gray-600",children:"Increased as working capital generated"})]})]})]})})]}),(0,a.jsxs)("div",{className:"print-break-avoid bg-white rounded-lg shadow-md p-4 sm:p-6",children:[(0,a.jsxs)("h2",{className:"text-xl font-bold text-gray-900 mb-4 flex items-center gap-2",children:[(0,a.jsx)(l.Z,{className:"w-6 h-6 text-[#F08070]"}),"Key Ratios"]}),(0,a.jsx)("div",{className:"overflow-x-auto",children:(0,a.jsxs)("table",{className:"w-full",children:[(0,a.jsx)("thead",{children:(0,a.jsxs)("tr",{className:"border-b-2 border-gray-300",children:[(0,a.jsx)("th",{className:"text-left py-3 px-4 text-sm font-semibold text-gray-700 w-64",children:"Ratio"}),(0,a.jsx)("th",{className:"text-right py-3 px-4 text-sm font-semibold text-gray-700 w-40",children:"With Traditional SCF"}),(0,a.jsx)("th",{className:"text-right py-3 px-4 text-sm font-semibold text-[#D64933] w-40",children:"Add PrimaTrade SCF"}),(0,a.jsx)("th",{className:"text-left py-3 px-4 text-sm font-semibold text-gray-700",children:"Notes"})]})}),(0,a.jsxs)("tbody",{className:"divide-y divide-gray-200",children:[(0,a.jsxs)("tr",{children:[(0,a.jsx)("td",{className:"py-3 px-4 text-sm",children:"EBITDA margin"}),(0,a.jsx)("td",{className:"py-3 px-4 text-sm text-right font-medium",children:au(ae)}),(0,a.jsx)("td",{className:"py-3 px-4 text-sm text-right font-medium text-red-700",children:au(at)}),(0,a.jsx)("td",{className:"py-3 px-4 text-xs text-gray-600",children:"Up because cost of sales is lower"})]}),(0,a.jsxs)("tr",{children:[(0,a.jsx)("td",{className:"py-3 px-4 text-sm",children:"Operating margin"}),(0,a.jsx)("td",{className:"py-3 px-4 text-sm text-right font-medium",children:au(as)}),(0,a.jsx)("td",{className:"py-3 px-4 text-sm text-right font-medium text-red-700",children:au(aa)}),(0,a.jsx)("td",{className:"py-3 px-4 text-xs text-gray-600",children:"Up because cost of sales is lower"})]}),(0,a.jsxs)("tr",{children:[(0,a.jsx)("td",{className:"py-3 px-4 text-sm",children:"Leverage (Net Debt / EBITDA)"}),(0,a.jsxs)("td",{className:"py-3 px-4 text-sm text-right font-medium",children:[am(ar,2),"x"]}),(0,a.jsxs)("td",{className:"py-3 px-4 text-sm text-right font-medium text-red-700",children:[am(ai,2),"x"]}),(0,a.jsx)("td",{className:"py-3 px-4 text-xs text-gray-600",children:"Down because EBITDA is higher and net debt is lower"})]}),(0,a.jsxs)("tr",{children:[(0,a.jsx)("td",{className:"py-3 px-4 text-sm",children:"Solvency (Debt / Equity)"}),(0,a.jsxs)("td",{className:"py-3 px-4 text-sm text-right font-medium",children:[am(an,2),"x"]}),(0,a.jsxs)("td",{className:"py-3 px-4 text-sm text-right font-medium text-red-700",children:[am(al,2),"x"]}),(0,a.jsx)("td",{className:"py-3 px-4 text-xs text-gray-600",children:"Down because net debt is lower and equity is higher"})]}),(0,a.jsxs)("tr",{children:[(0,a.jsx)("td",{className:"py-3 px-4 text-sm",children:"FCF / Sales"}),(0,a.jsx)("td",{className:"py-3 px-4 text-sm text-right font-medium",children:au(ad)}),(0,a.jsx)("td",{className:"py-3 px-4 text-sm text-right font-medium text-red-700",children:au(ac)}),(0,a.jsx)("td",{className:"py-3 px-4 text-xs text-gray-600",children:"Up because working c
1apital is generated"})]}),(0,a.jsxs)("tr",{children:[(0,a.jsx)("td",{className:"py-3 px-4 text-sm",children:"Interest cover"}),(0,a.jsxs)("td",{className:"py-3 px-4 text-sm text-right font-medium",children:[am(ao,2),"x"]}),(0,a.jsxs)("td",{className:"py-3 px-4 text-sm text-right font-medium text-red-700",children:[am(ap,2),"x"]}),(0,a.jsx)("td",{className:"py-3 px-4 text-xs text-gray-600",children:"Based on profit before tax - up because interest costs reduce and earnings increase"})]})]})]})})]}),(0,a.jsxs)("div",{className:"mt-8 flex justify-between items-center gap-4 print:hidden",children:[(0,a.jsx)("button",{onClick:th,className:"flex items-center gap-2 px-6 py-3 bg-gray-600 hover:bg-gray-700 text-white font-semibold rounded-full shadow-lg hover:shadow-xl transition-all duration-200 hover:scale-105",children:"Reset to Defaults"}),(0,a.jsxs)("button",{onClick:tx,className:"flex items-center gap-2 px-6 py-3 bg-primary-gradient text-white font-semibold rounded-full shadow-lg hover:shadow-xl transition-all duration-200 hover:scale-105",children:["Print to PDF",(0,a.jsx)(x,{className:"w-5 h-5"})]})]}),b&&(0,a.jsxs)("div",{className:"mt-6 bg-white rounded-lg shadow-md p-4 sm:p-6",children:[(0,a.jsxs)("h2",{className:"text-xl font-bold text-gray-900 mb-4 flex items-center gap-2",children:[(0,a.jsx)(n,{className:"w-6 h-6 text-[#F08070]"}),"Calculations"]}),(0,a.jsx)("div",{className:"overflow-auto max-h-[600px]",children:(0,a.jsxs)("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-6 min-w-fit",children:[(0,a.jsxs)("div",{className:"bg-gray-50 rounded p-4",children:[(0,a.jsx)("h3",{className:"text-sm font-bold text-gray-700 mb-3 sticky top-0 bg-gray-50 pb-2",children:"Code"}),(0,a.jsx)("pre",{className:"text-xs font-mono whitespace-pre",children:"const totalSpend = totalProcurementSpend * 1000000;\nconst domesticSharePct = 100 - crossBorderSharePct;\n\n// Auto-calculated Tier 3 values\nconst tier3Suppliers = totalSuppliers - tier1Suppliers - (tier2Suppliers - tier1Suppliers);\nconst tier3SpendPct = 100 - tier1SpendPct - tier2SpendPct;\n\n// Spend by tier\nconst spendTier1 = totalSpend * (tier1SpendPct / 100);\nconst spendTier2 = totalSpend * (tier2SpendPct / 100);\nconst spendTier3 = totalSpend * (tier3SpendPct / 100);\n\n// Average time to approve invoices\nconst avgApprovalTime = (domesticSharePct / 100) * (delayDomestic + processingTime) + \n (crossBorderSharePct / 100) * (delayCrossBorder + processingTime);\n\n// TRADITIONAL SCF CALCULATIONS\nconst tradEligibleSpend = spendTier1 + spendTier2 + spendTier3;\nconst tradParticipatingTier1 = spendTier1 * (tier1TradPartPct / 100);\nconst tradParticipatingTier2 = spendTier2 * (tier2TradPartPct / 100);\nconst tradParticipatingTier3 = spendTier3 * (tier3TradPartPct / 100);\nconst tradParticipatingSpend = tradParticipatingTier1 + tradParticipatingTier2 + tradParticipatingTier3;\nconst tradSupplierCashReceipt = avgApprovalTime + tradDaysAfterApproval;\n\n// Tier-specific days advanced based on tier-specific payment terms\nconst tradDaysAdvancedTier1 = Math.max(0, tier1TradPaymentTerms - tradSupplierCashReceipt);\nconst tradDaysAdvancedTier2 = Math.max(0, tier2TradPaymentTerms - tradSupplierCashReceipt);\nconst tradDaysAdvancedTier3 = Math.max(0, tier3TradPaymentTerms - tradSupplierCashReceipt);\n\n// Financing costs by tier (Traditional)\nconst tradFinancingTier1 = tradParticipatingTier1 * (scfRatePct / 100) * (tradDaysAdvancedTier1 / 365);\nconst tradFinancingTier2 = tradParticipatingTier2 * (scfRatePct / 100) * (tradDaysAdvancedTier2 / 365);\nconst tradFinancingTier3 = tradParticipatingTier3 * (scfRatePct / 100) * (tradDaysAdvancedTier3 / 365);\nconst tradTotalFinancing = tradFinancingTier1 + tradFinancingTier2 + tradFinancingTier3;\n\n// Discounts by tier (Traditional)\nconst tradDiscountTier1 = tradParticipatingTier1 * (tier1TradDiscountPct / 100);\nconst tradDiscountTier2 = tradParticipatingTier2 * (tier2TradDiscountPct / 100);\nconst tradDiscountTier3 = tradParticipatingTier3 * (tier3TradDiscountPct / 100);\n\n// Actual discount (MAX of financing cost and agreed discount)\nconst tradActualDiscountTier1 = Math.max(tradFinancingTier1, tradDiscountTier1);\nconst tradActualDiscountTier2 = Math.max(tradFinancingTier2, tradDiscountTier2);\nconst tradActualDiscountTier3 = Math.max(tradFinancingTier3, tradDiscountTier3);\n\n// Card costs for tier 3 (Traditional)\nconst tradCardCosts = spendTier3 * (tier3CardCostPct / 100) * (tier3CardUsagePct / 100);\n\n// Total supplier costs (Traditional)\nconst tradTotalSupplierCosts = tradActualDiscountTier1 + tradActualDiscountTier2 + tradActualDiscountTier3 + tradCardCosts;\n\n// Supplier time value benefits (Traditional)\nconst tradSupplierBenefitTier1 = tradParticipatingTier1 * (tier1TradSavingsPct / 100) * (tradDaysAdvancedTier1 / 365);\nconst tradSupplierBenefitTier2 = tradParticipatingTier2 * (tier2TradSavingsPct / 100) * (tradDaysAdvancedTier2 / 3
165);\n// Tier 3 benefit uses MIN function\nconst tradTier3Participating = tradParticipatingTier3;\nconst tradTier3OnCards = spendTier3 * (tier3CardUsagePct / 100);\nconst tradSupplierBenefitTier3 = Math.min(tradTier3Participating + tradTier3OnCards, spendTier3) * (tradDaysAdvancedTier3 / 365) * (tier3TradSavingsPct / 100);\nconst tradTotalSupplierTimeValue = tradSupplierBenefitTier1 + tradSupplierBenefitTier2 + tradSupplierBenefitTier3;\n\n// Supplier net benefit (Traditional)\nconst tradSupplierNetBenefit = tradTotalSupplierTimeValue - tradTotalSupplierCosts;\n\n// Buyer card benefits (Traditional)\nconst tradBuyerCardRebate = (tier3CardRebatePct / 100) * (tier3CardUsagePct / 100) * spendTier3;\nconst tradBuyerCardFreeFunding = (cardFreeFundingDays / 365) * (scfRatePct / 100) * (tier3CardUsagePct / 100) * spendTier3;\n\n// Trade credit and working capital calculations (Traditional)\nconst tradCardSpend = spendTier3 * (tier3CardUsagePct / 100);\nconst tradCardFreeFundingBalance = tradCardSpend * ((cardFreeFundingDays) / 365);\nconst tradTotalTradeCredit = (spendTier1 * tier1TradPaymentTerms + spendTier2 * tier2TradPaymentTerms + spendTier3 * tier3TradPaymentTerms) / 365 + tradCardFreeFundingBalance;\n\n// Outstanding balance (Traditional) - tier-specific calculation\nconst tradOutstandingBalance = (tradParticipatingTier1 * tradDaysAdvancedTier1 +\n tradParticipatingTier2 * tradDaysAdvancedTier2 +\n tradParticipatingTier3 * tradDaysAdvancedTier3) / 365;\n\n// Funding benefit enabled by SCF & cards (paid for by suppliers) - based on baseline payment term\nconst tradScfFundingBenefit = ((tier1TradPaymentTerms - baselinePaymentTerm) * spendTier1 +\n (tier2TradPaymentTerms - baselinePaymentTerm) * spendTier2 +\n (tier3TradPaymentTerms - baselinePaymentTerm) * spendTier3 + tradBuyerCardFreeFunding) * (scfRatePct / 100) / 365;\n\n// Buyer net benefit (Traditional)\nconst tradBuyerNetBenefit = tradActualDiscountTier1 + tradActualDiscountTier2 + tradActualDiscountTier3 - \n tradTotalFinancing + tradBuyerCardRebate + tradScfFundingBenefit;\n\n// Discounts passed through to buyer (Traditional)\nconst tradDiscountsPassedThrough = (tradActualDiscountTier1 + tradActualDiscountTier2 + tradActualDiscountTier3) - tradTotalFinancing;\n\n// Total value created (Traditional)\nconst tradTotalValue = tradSupplierNetBenefit + tradBuyerNetBenefit;\n\n// Rename for highlights consistency\nconst tradSupplierTimeValue = tradTotalSupplierTimeValue;\nconst tradTotalCosts = tradTotalSupplierCosts;\n\n// Active suppliers (Traditional)\nconst tradActiveTier1 = tier1Suppliers * (tier1TradPartPct / 100);\nconst tradActiveTier2 = (tier2Suppliers - tier1Suppliers) * (tier2TradPartPct / 100);\nconst tradActiveTier3 = tier3Suppliers * (tier3TradPartPct / 100);\nconst tradTotalActive = tradActiveTier1 + tradActiveTier2 + tradActiveTier3;\n\n// PRIMATRADE CALCULATIONS\nconst ptEligibleSpend = spendTier1 + spendTier2 + spendTier3;\nconst ptParticipatingTier1 = spendTier1 * (tier1PtPartPct / 100);\nconst ptParticipatingTier2 = spendTier2 * (tier2PtPartPct / 100);\nconst ptParticipatingTier3 = spendTier3 * (tier3PtPartPct / 100)* (1 - (tier3CardUsagePct / 100) * (tier3CardRemainPct / 100));\nconst ptParticipatingSpend = ptParticipatingTier1 + ptParticipatingTier2 + ptParticipatingTier3;\n\nconst ptSupplierCashReceipt = ptDaysAfterHandover;\n\n// Tier-specific days advanced based on tier-specific payment terms\nconst ptDaysAdvancedTier1 = Math.max(0, tier1PtPaymentTerms - ptSupplierCashReceipt);\nconst ptDaysAdvancedTier2 = Math.max(0, tier2PtPaymentTerms - ptSupplierCashReceipt);\nconst ptDaysAdvancedTier3 = Math.max(0, tier3PtPaymentTerms - ptSupplierCashReceipt);\nconst ptDaysFaster = tradSupplierCashReceipt - ptSupplierCashReceipt;\n\n// Financing costs by tier (PrimaTrade)\nconst ptFinancingTier1 = ptParticipatingTier1 * (scfRatePct / 100) * (ptDaysAdvancedTier1 / 365);\nconst ptFinancingTier2 = ptParticipatingTier2 * (scfRatePct / 100) * (ptDaysAdvancedTier2 / 3
165);\nconst ptFinancingTier3 = ptParticipatingTier3 * (scfRatePct / 100) * (ptDaysAdvancedTier3 / 365);\nconst ptTotalFinancing = ptFinancingTier1 + ptFinancingTier2 + ptFinancingTier3;\n\n// Agreed discounts by tier\nconst ptDiscountTier1 = ptParticipatingTier1 * (tier1PtDiscountPct / 100);\nconst ptDiscountTier2 = ptParticipatingTier2 * (tier2PtDiscountPct / 100);\nconst ptDiscountTier3 = ptParticipatingTier3 * (tier3PtDiscountPct / 100);\n\n// Actual discount (MAX of financing cost and agreed discount)\nconst ptActualDiscountTier1 = Math.max(ptFinancingTier1, ptDiscountTier1);\nconst ptActualDiscountTier2 = Math.max(ptFinancingTier2, ptDiscountTier2);\nconst ptActualDiscountTier3 = Math.max(ptFinancingTier3, ptDiscountTier3);\n\n// Card costs for PrimaTrade (cards that remain)\nconst ptCardCosts = spendTier3 * (tier3CardCostPct / 100) * (tier3CardUsagePct / 100) * (tier3CardRemainPct / 100);\n\n// Total supplier costs (PrimaTrade)\nconst ptTotalSupplierCosts = ptActualDiscountTier1 + ptActualDiscountTier2 + ptActualDiscountTier3 + ptCardCosts;\n\n// Supplier time value benefits (PrimaTrade)\nconst ptSupplierBenefitTier1 = ptParticipatingTier1 * (tier1PtSavingsPct / 100) * (ptDaysAdvancedTier1 / 365);\nconst ptSupplierBenefitTier2 = ptParticipatingTier2 * (tier2PtSavingsPct / 100) * (ptDaysAdvancedTier2 / 365);\nconst ptSupplierBenefitTier3 = ptParticipatingTier3 * (tier3PtSavingsPct / 100) * (ptDaysAdvancedTier3 / 365);\nconst ptTotalSupplierTimeValue = ptSupplierBenefitTier1 + ptSupplierBenefitTier2 + ptSupplierBenefitTier3;\n\n// Supplier net benefit (PrimaTrade)\nconst ptSupplierNetBenefit = ptTotalSupplierTimeValue - ptTotalSupplierCosts;\n\n// Card benefits for buyer with PrimaTrade (cards that remain)\nconst ptBuyerCardRebate = (tier3CardRebatePct / 100) * (tier3CardUsagePct / 100) * spendTier3 * (tier3CardRemainPct / 100);\nconst ptBuyerCardFreeFunding = (cardFreeFundingDays / 365) * (scfRatePct / 100) * (tier3CardUsagePct / 100) * spendTier3 * (tier3CardRemainPct / 100);\n\n// Trade credit and working capital calculations (PrimaTrade)\nconst ptCardSpend = spendTier3 * (tier3CardUsagePct / 100) * (tier3CardRemainPct / 100);\nconst ptCardFreeFundingBalance = ptCardSpend * ((cardFreeFundingDays) / 365);\nconst ptTotalTradeCredit = (spendTier1 * tier1PtPaymentTerms + spendTier2 * tier2PtPaymentTerms + spendTier3 * tier3PtPaymentTerms) / 365 + ptCardFreeFundingBalance;\n\n// Additional working capital generated by PrimaTrade\nconst additionalWorkingCapital = ptTotalTradeCredit - tradTotalTradeCredit;\n\n// Trade credit generated (Row 22 Dashboard) - total trade credit minus baseline\nconst baselineTradeCredit = (totalProcurementSpend * 1000000) * (baselinePaymentTerm / 365);\nconst tradTradeCreditGenerated = tradTotalTradeCredit - baselineTradeCredit;\nconst ptTradeCreditGenerated = ptTotalTradeCredit - baselineTradeCredit;\n\n// Outstanding balance (PrimaTrade) - tier-specific calculation\nconst ptOutstandingBalance = (ptParticipatingTier1 * ptDaysAdvancedTier1 +\n ptParticipatingTier2 * ptDaysAdvancedTier2 +\n ptParticipatingTier3 * ptDaysAdvancedTier3) / 365;\n\n// Funding benefit enabled by SCF & cards (paid for by suppliers) - based on baseline payment term\nconst ptScfFundingBenefit = ((tier1PtPaymentTerms - baselinePaymentTerm) * spendTier1 +\n (tier2PtPaymentTerms - baselinePaymentTerm) * spendTier2 +\n (tier3PtPaymentTerms - baselinePaymentTerm) * spendTier3 + \n ptBuyerCardFreeFunding) * (scfRatePct / 100) / 365;\n\n// Buyer net benefit (PrimaTrade)\nconst ptBuyerNetBenefit = ptActualDiscountTier1 + ptActualDiscountTier2 + ptActualDiscountTier3 - ptTotalFinancing + ptBuyerCardRebate + ptScfFundingBenefit;\n\n// Discounts passed through to buyer (PrimaTrade)\nconst ptDiscountsPassedThrough = (ptActualDiscountTier1 + ptActualDiscountTier2 + ptActualDiscountTier3) - ptTotalFinancing;\n\n// Total value created (PrimaTrade)\nconst ptTotalValue = ptSupplierNetBenefit + ptBuyerNetBenefit;\n\n// Rename for highlights consistency\nconst ptSupplierTimeValue = ptTotalSupplierTimeValue;\nconst ptTotalCosts = ptTotalSupplierCosts;\n\n// Active suppliers (PrimaTrade)\nconst ptActiveTier1 = tier1Suppliers * (tier1PtPartPct / 100);\nconst ptActiveTier2 = (tier2Suppliers - tier1Suppliers) * (tier2PtPartPct / 100);\nconst ptActiveTier3 = tier3Suppliers * (tier3PtPartPct / 100) * (1 - (tier3CardUsagePct / 100) * (tier3CardRemainPct / 100));\nconst ptTotalActive = ptActiveTier1 + ptActiveTier2 + ptActiveTier3;\n\n// Suppliers switching from cards\nconst ptSuppliersFromCards = ptActiveTier3;\n\n// Suppliers on cards (Traditional and PrimaTrade)\nconst tradSuppliersOnCards = tier3Suppliers * (tier3CardUsagePct / 100);\nconst ptSuppliersOnCards = tier3Suppliers * (tier3CardUsagePct / 100) * (tier3CardRemainPct / 100);\n\nconst tradEligibleSuppliers = tier1Suppliers + (tier2Suppliers - tier1Suppliers) + tier3Suppliers;\n\n// DELTAS\nconst deltaEligibleSpend = ptEligibleSpend - tradEligibleSpend;\nconst deltaParticipatingSpend = ptParticipatingSpend - tradParticipatingSpend;\nconst deltaOutstandingBalance = ptOutstandingBalance - tradOutstandingBalance;\nconst deltaEligibleSuppliers = totalSuppliers - tradEligibleSuppliers;\nconst deltaActiveSuppliers = ptTotalActive - tradTotalActive;\nconst deltaSuppliersFromCards = ptSuppliersFromCards;\nconst deltaCashReceipt = ptSupplierCashReceipt - tradSupplierCashReceipt;\nconst deltaBuyerBenefit = ptBuyerNetBenefit - tradBuyerNetBenefit;\nconst deltaSupplierBenefit = ptSupplierNetBenefit - tradSupplierNetBenefit;\nconst deltaTotalValue = ptTotalValue - tradTotalValue;\n\n// SIMULATION CALCULATIONS\nconst deltaEarlyPaymentDiscounts = ptDiscountsPassedThrough - tradDiscountsPassedThrough;\nconst deltaFundingBenefits = deltaBuyerBenefit - deltaEarlyPaymentDiscounts;\nconst totalWCBenefit = additionalWorkingCapital;\n\n// Adjusted financials with PrimaTrade\nconst adjustedCostOfSales = costOfSales - deltaEarlyPaymentDiscounts;\nconst adjustedOperatingProfit = operatingProfit + deltaEarlyPaymentDiscounts;\nconst adjustedProfitBeforeTax = profitBeforeTax + deltaBuyerBenefit;\nconst adjustedEbitda = ebitda + deltaEarlyPaymentDiscounts;\nconst adjustedNetInterest = netInterest - (totalWCBenefit * (scfRatePct / 100));\nconst adjustedTradePayables = tradePayables + totalWCBenefit;\nconst adjustedNetDebt = netDebt - totalWCBenefit;\nconst adjustedEquity = equity + deltaBuyerBenefit;\nconst adjustedFCF = freeCashFlow + totalWCBenefit;\n\n// Calculate ratios\nconst ebitdaMargin = (ebitda / turnover) * 100;\nconst adjustedEbitdaMargin = (adjustedEbitda / turnover) * 100;\nconst operatingMargin = (operatingProfit / turnover) * 100;\nconst adjustedOperatingMargin = (adjustedOperatingProfit / turnover) * 100;\nconst leverage = netDebt / ebitda;\nconst adjustedLeverage = adjustedNetDebt / adjustedEbitda;\nconst solvency = netDebt / equity;\nconst adjustedSolvency = adjustedNetDebt / adjustedEquity;\nconst fcfSales = (freeCashFlow / turnover) * 100;\nconst adjustedFcfSales = (adjustedFCF / turnover) * 100;\nconst interestCover = ebitda / netInterest;\nconst adjustedInterestCover = adjustedEbitda / adjustedNetInterest;"})]}),(0,a.jsxs)("div",{className:"bg-blue-50 rounded p-4",children:[(0,a.jsx)("h3",{className:"text-sm font-bold text-gray-700 mb-3 sticky top-0 bg-blue-50 pb-2",children:"Values"}),(0,a.jsxs)("div",{className:"text-xs font-mono space-y-1",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"totalSpend:"})," ",ax(tm)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"domesticSharePct:"})," ",tu.toFixed(2),"%"]}),(0,a.jsx)("div",{className:"pt-2 text-gray-500",children:"// Auto-calculated Tier 3 values"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tier3Suppliers:"}
1)," ",tg.toLocaleString()]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tier3SpendPct:"})," ",ty.toFixed(2),"%"]}),(0,a.jsx)("div",{className:"pt-2 text-gray-500",children:"// Spend by tier"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"spendTier1:"})," ",ax(tf)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"spendTier2:"})," ",ax(tb)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"spendTier3:"})," ",ax(tj)]}),(0,a.jsx)("div",{className:"pt-2 text-gray-500",children:"// Average time to approve invoices"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"avgApprovalTime:"})," ",tv.toFixed(2)," days"]}),(0,a.jsx)("div",{className:"pt-3 font-bold text-gray-700",children:"TRADITIONAL SCF CALCULATIONS"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tradEligibleSpend:"})," ",ax(tN)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tradParticipatingTier1:"})," ",ax(tT)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tradParticipatingTier2:"})," ",ax(tw)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tradParticipatingTier3:"})," ",ax(tS)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tradParticipatingSpend:"})," ",ax(tP)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tradSupplierCashReceipt:"})," ",tC.toFixed(2)," days"]}),(0,a.jsx)("div",{className:"pt-2 text-gray-500",children:"// Days advanced by tier"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tradDaysAdvancedTier1:"})," ",tF.toFixed(2)," days"]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tradDaysAdvancedTier2:"})," ",tD.toFixed(2)," days"]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tradDaysAdvancedTier3:"})," ",tA.toFixed(2)," days"]}),(0,a.jsx)("div",{className:"pt-2 text-gray-500",children:"// Financing costs by tier (Traditional)"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tradFinancingTier1:"})," ",ax(tB)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tradFinancingTier2:"})," ",ax(tk)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tradFinancingTier3:"})," ",ax(tM)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tradTotalFinancing:"})," ",ax(tE)]}),(0,a.jsx)("div",{className:"pt-2 text-gray-500",children:"// Discounts by tier (Traditional)"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tradDiscountTier1:"})," ",ax(tR)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tradDiscountTier2:"})," ",ax(tV)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tradDiscountTier3:"})," ",ax(tI)]}),(0,a.jsx)("div",{className:"pt-2 text-gray-500",children:"// Actual discount (MAX)"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tradActualDiscountTier1:"})," ",ax(tO)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tradActualDiscountTier2:"})," ",ax(tL)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tradActualDiscountTier3:"})," ",ax(tZ)]}),(0,a.jsx)("div",{className:"pt-2 text-gray-500",children:"// Card costs"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tradCardCosts:"})," ",ax(tU)]}),(0,a.jsx)("div",{className:"pt-2 text-gray-500",children:"// Total supplier costs"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tradTotalSupplierCosts:"})," ",ax(tW)]}),(0,a.jsx)("div",{className:"pt-2 text-gray-500",children:"// Supplier time value benefits"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tradSupplierBenefitTier1:"})," ",ax(tH)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tradSupplierBenefitTier2:"})," ",ax(tq)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tradTier3Participating:"})," ",ax(tS)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tradTier3OnCards:"})," ",ax(tz)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tradSupplierBenefitTier3:"})," ",ax(t_)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tradTotalSupplierTimeValue:"})," ",ax(tK)]}),(0,a.jsx)("div",{className:"pt-2 text-gray-500",children:"// Supplier net benefit"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tradSupplierNetBenefit:"})," ",ax(tG)]}),(0,a.jsx)("div",{className:"pt-2 text-gray-500",children:"// Buyer card benefits"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tradBuyerCardRebate:"})," ",ax(t$)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tradBuyerCardFreeFunding:"})," ",ax(tY)]}),(0,a.jsx)("div",{className:"pt-2 text-gray-500",children:"// Trade credit and working c
1apital"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tradCardSpend:"})," ",ax(tJ)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tradCardFreeFundingBalance:"})," ",ax(tX)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tradTotalTradeCredit:"})," ",ax(tQ)]}),(0,a.jsx)("div",{className:"pt-2 text-gray-500",children:"// Outstanding balance"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tradOutstandingBalance:"})," ",ax(t0)]}),(0,a.jsx)("div",{className:"pt-2 text-gray-500",children:"// Funding benefit"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tradScfFundingBenefit:"})," ",ax(t1)]}),(0,a.jsx)("div",{className:"pt-2 text-gray-500",children:"// Buyer net benefit"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tradBuyerNetBenefit:"})," ",ax(t2)]}),(0,a.jsx)("div",{className:"pt-2 text-gray-500",children:"// Discounts passed through"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tradDiscountsPassedThrough:"})," ",ax(t3)]}),(0,a.jsx)("div",{className:"pt-2 text-gray-500",children:"// Total value created"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tradTotalValue:"})," ",ax(t4)]}),(0,a.jsx)("div",{className:"pt-2 text-gray-500",children:"// Active suppliers"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tradActiveTier1:"})," ",t6.toFixed(2)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tradActiveTier2:"})," ",t5.toFixed(2)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tradActiveTier3:"})," ",t7.toFixed(2)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tradTotalActive:"})," ",t9.toFixed(2)]}),(0,a.jsx)("div",{className:"pt-3 font-bold text-gray-700",children:"PRIMATRADE CALCULATIONS"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"ptEligibleSpend:"})," ",ax(t8)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"ptParticipatingTier1:"})," ",ax(se)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"ptParticipatingTier2:"})," ",ax(st)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"ptParticipatingTier3:"})," ",ax(ss)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"ptParticipatingSpend:"})," ",ax(sa)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"ptSupplierCashReceipt:"})," ",eG.toFixed(2)," days"]}),(0,a.jsx)("div",{className:"pt-2 text-gray-500",children:"// Days advanced by tier"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"ptDaysAdvancedTier1:"})," ",sr.toFixed(2)," days"]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"ptDaysAdvancedTier2:"})," ",si.toFixed(2)," days"]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"ptDaysAdvancedTier3:"})," ",sn.toFixed(2)," days"]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"ptDaysFaster:"})," ",sl.toFixed(2)," days"]}),(0,a.jsx)("div",{className:"pt-2 text-gray-500",children:"// Financing costs by tier (PrimaTrade)"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"ptFinancingTier1:"})," ",ax(sd)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"ptFinancingTier2:"})," ",ax(sc)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"ptFinancingTier3:"})," ",ax(so)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"ptTotalFinancing:"})," ",ax(sp)]}),(0,a.jsx)("div",{className:"pt-2 text-gray-500",children:"// Agreed discounts by tier"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"ptDiscountTier1:"})," ",ax(sx)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"ptDiscountTier2:"})," ",ax(sh)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"ptDiscountTier3:"})," ",ax(sm)]}),(0,a.jsx)("div",{className:"pt-2 text-gray-500",children:"// Actual discount (MAX)"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"ptActualDiscountTier1:"})," ",ax(su)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"ptActualDiscountTier2:"})," ",ax(sg)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"ptActualDiscountTier3:"})," ",ax(sy)]}),(0,a.jsx)("div",{className:"pt-2 text-gray-500",children:"// Card costs"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"ptCardCosts:"})," ",ax(sf)]}),(0,a.jsx)("div",{className:"pt-2 text-gray-500",children:"// Total supplier costs"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"ptTotalSupplierCosts:"})," ",ax(sb)]}),(0,a.jsx)("div",{className:"pt-2 text-gray-500",children:"// Supplier time value benefits"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"ptSupplierBenefitTier1:"})," ",ax(sj)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"ptSupplierBenefitTier2:"})," ",ax(sv)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"ptSupplierBenefitTier3:"})," ",ax(sN)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"ptTotalSupplierTimeValue:"})," ",ax(sT)]}),(0,a.jsx)("div",{className:"pt-2 text-gray-500",children:"// Supplier net benefit"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"ptSupplierNetBenefit:"})," ",ax(sw)]}),(0,a.jsx)("div",{className:"pt-2 text-gray-500",children:"// Card benefits for buyer"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"ptBuyerCardRebate:"})," ",ax(sS)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"ptBuyerCardFreeFunding:"})," ",ax(sP)]}),(0,a.jsx)("div",{className:"pt-2 text-gray-500",children:"// Trade credit and working c
1apital"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"ptCardSpend:"})," ",ax(sC)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"ptCardFreeFundingBalance:"})," ",ax(sF)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"ptTotalTradeCredit:"})," ",ax(sD)]}),(0,a.jsx)("div",{className:"pt-2 text-gray-500",children:"// Additional working capital"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"additionalWorkingCapital:"})," ",ax(sA)]}),(0,a.jsx)("div",{className:"pt-2 text-gray-500",children:"// Trade credit generated"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"baselineTradeCredit:"})," ",ax(sB)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tradTradeCreditGenerated:"})," ",ax(sk)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"ptTradeCreditGenerated:"})," ",ax(sM)]}),(0,a.jsx)("div",{className:"pt-2 text-gray-500",children:"// Outstanding balance"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"ptOutstandingBalance:"})," ",ax(sE)]}),(0,a.jsx)("div",{className:"pt-2 text-gray-500",children:"// Funding benefit"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"ptScfFundingBenefit:"})," ",ax(sR)]}),(0,a.jsx)("div",{className:"pt-2 text-gray-500",children:"// Buyer net benefit"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"ptBuyerNetBenefit:"})," ",ax(sV)]}),(0,a.jsx)("div",{className:"pt-2 text-gray-500",children:"// Discounts passed through"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"ptDiscountsPassedThrough:"})," ",ax(sI)]}),(0,a.jsx)("div",{className:"pt-2 text-gray-500",children:"// Total value created"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"ptTotalValue:"})," ",ax(sO)]}),(0,a.jsx)("div",{className:"pt-2 text-gray-500",children:"// Active suppliers"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"ptActiveTier1:"})," ",sL.toFixed(2)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"ptActiveTier2:"})," ",sZ.toFixed(2)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"ptActiveTier3:"})," ",sU.toFixed(2)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"ptTotalActive:"})," ",sW.toFixed(2)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"ptSuppliersFromCards:"})," ",sU.toFixed(2)]}),(0,a.jsx)("div",{className:"pt-2 text-gray-500",children:"// Suppliers on cards"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tradSuppliersOnCards:"})," ",sH.toFixed(2)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"ptSuppliersOnCards:"})," ",sq.toFixed(2)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"tradEligibleSuppliers:"})," ",sz.toFixed(2)]}),(0,a.jsx)("div",{className:"pt-3 font-bold text-gray-700",children:"DELTAS"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"deltaEligibleSpend:"})," ",ax(t8-tN)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"deltaParticipatingSpend:"})," ",ax(s_)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"deltaOutstandingBalance:"})," ",ax(sK)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"deltaEligibleSuppliers:"})," ",sG.toFixed(2)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"deltaActiveSuppliers:"})," ",s$.toFixed(2)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"deltaSuppliersFromCards:"})," ",sU.toFixed(2)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"deltaCashReceipt:"})," ",sY.toFixed(2)," days"]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"deltaBuyerBenefit:"})," ",ax(sJ)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"deltaSupplierBenefit:"})," ",ax(sX)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"deltaTotalValue:"})," ",ax(sQ)]}),(0,a.jsx)("div",{className:"pt-3 font-bold text-gray-700",children:"SIMULATION CALCULATIONS"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"deltaEarlyPaymentDiscounts:"})," ",ax(s0)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"deltaFundingBenefits:"})," ",ax(sJ-s0)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"totalWCBenefit:"})," ",ax(sA)]}),(0,a.jsx)("div",{className:"pt-2 text-gray-500",children:"// Adjusted financials"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"adjustedCostOfSales:"})," ",ax(s1)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"adjustedOperatingProfit:"})," ",ax(s2)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"adjustedProfitBeforeTax:"})," ",ax(s3)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"adjustedEbitda:"})," ",ax(s4)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"adjustedNetInterest:"})," ",ax(s6)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"adjustedTradePayables:"})," ",ax(s5)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"adjustedNetDebt:"})," ",ax(s7)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"adjustedEquity:"})," ",ax(s9)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"adjustedFCF:"})," ",ax(s8)]}),(0,a.jsx)("div",{className:"pt-2 text-gray-500",children:"// Calculate ratios"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"ebitdaMargin:"})," ",ae.toFixed(2),"%"]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"adjustedEbitdaMargin:"})," ",at.toFixed(2),"%"]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"operatingMargin:"})," ",as.toFixed(2),"%"]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"adjustedOperatingMargin:"})," ",aa.toFixed(2),"%"]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"leverage:"})," ",ar.toFixed(2)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"adjustedLeverage:"})," ",ai.toFixed(2)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"solvency:"})," ",an.toFixed(2)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"adjustedSolvency:"})," ",al.toFixed(2)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"fcfSales:"})," ",ad.toFixed(2),"%"]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"adjustedFcfSales:"})," ",ac.toFixed(2),"%"]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"interestCover:"})," ",ao.toFixed(2)]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"adjustedInterestCover:"})," ",ap.toFixed(2)]})]})]})]})})]})]})})]})]})]})})}},5995:function(e,t,s){"use strict";s.d(t,{default:function(){return o}});var a=s(7437),r=s(2265),i=s(6648),n=s(7138),l=e=>{let{isDark:t=!1,width:s="auto",height:r=51}=e;return(0,a.jsx)(n.default,{href:"/",className:"h-full w-full max-w-[300px] sm:max-w-[15vw] sm:min-w-[200px] hover:scale-105 transition-all ease-in-out duration-200",children:(0,a.jsx)(i.default,{src:"/assets/logo.png",alt:"PrimaTrade",width:230,height:40})})},d=s(5884),c=s(5169),o=e=>{let{defaultSticky:t=!0}=e,[s,i]=(0,r.useState)(!1),[n,o]=(0,r.useState)(t);return t||(0,r.useEffect)(()=>{let e=()=>{o(window.scrollY>40)};return window.addEventListener("scroll",e),()=>{window.removeEventListener("scroll",e)}},[n]),(0,a.jsxs)(a.Fragment,{children:[n||null==n?(0,a.jsxs)("div",{className:"sticky bg-brand-darkRed px-2 sm:px-[12%] py-4 lg:py-5 w-full z-50 lg:justify-center top-0 left-0 flex\n flex-row items-center justify-between monitor:px-24 print:absolute print:top-0 print:left-0 print:p-4 print:-z-50",id:"nav-bar",children:[(0,a.jsx)("div",{className:"max-w-[200px] sm:max-w-none print:max-w-none",children:(0,a.jsx)(l,{})}),(0,a.jsxs)("div",{className:" lg:flex flex-row text-sm text-white gap-5 h-full items-center justify-center w-full mr-10 sm:mr-3 monitor:mr-0 hidden print:hidden",children:[(0,a.jsx)("a",{href:"/",onClick:()=>i(!1),className:"text-nowrap hover:text-brand-orange uppercase text-s2",children:"Home"}),(0,a.jsx)("a",{href:"/platform",onClick:()=>i(!1),className:"text-nowrap hover:text-brand-orange uppercase text-s2",children:"Platform"}),(0,a.jsx)("a",{href:"/blogs",onClick:()=>i(!1),className:"text-nowrap hover:text-brand-orange uppercase text-s2",children:"BLOG"}),(0,a.jsx)("a",{onClick:()=>i(!1),href:"/contact",className:"text-nowrap hover:text-brand-orange uppercase text-s2",children:"Contact"})]}),(0,a.jsxs)("a",{href:c.O.login,target:"_blank",rel:"noreferrer",className:"flex-row gap-2 underline text-white lg:flex items-center justify-center hidden print:hidden",children:[(0,a.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"17",height:"18",viewBox:"0 0 17 18",fill:"none",children:[(0,a.jsx)("path",{d:"M8.49962 9.62009C10.8991 9.62009 12.844 7.67635 12.844 5.2783C12.844 2.88026 10.8991 0.936523 8.49962 0.936523C6.10016 0.936523 4.15527 2.88026 4.15527 5.2783C4.15527 7.67635 6.10016 9.62009 8.49962 9.62009Z",fill:"white"}),(0,a.jsx)("path",{d:"M6.53132 10.9414C2.92393 10.9414 0 13.8636 0 17.4689C0 17.7218 0.204373 17.926 0.457447 17.926H16.5426C16.7956 17.926 17 17.7218 17 17.4689C17 13.8636 14.0761 10.9414 10.4687 10.9414H6.53132Z",fill:"white"})]}),"login"]}),(0,a.jsx)("div",{className:"cursor-pointer text-white rounded-full overflow-hidden transition-all duration-500 lg:hidden print:hidden",children:(0,a.jsx)(d.o,{color:"#fff",size:24,toggled:s,toggle:i})})]}):(0,a.jsxs)("div",{className:"".concat(s?"bg-brand-darkRed opacity-95 lg:bg-none":"bg-none"," absolute py-4 lg:top-6 md:w-full gap-5\n lg:py-5 z-50 lg:justify-center top-0 left-0 flex flex-row items-center justify-between px-4 w-full lg:px-[12%] mx-0\n transition-all duration-300 ease-in-out monitor:mx-auto monitor:max-w-[calc(1600px-100px)] print:p-4"),id:"nav-bar",children:[(0,a.jsx)("div",{className:"max-w-[200px] sm:max-w-none print:max-w-none hover:scale-105 transition-all ease-in-out duration-200",children:(0,a.jsx)(l,{})}),(0,a.jsxs)("div",{className:" lg:flex flex-row text-sm text-white gap-8 h-full items-center justify-center w-full monitor:mr-0 hidden print:hidden",children:[(0,a.jsx)("a",{href:"/",onClick:()=>i(!1),className:"text-nowrap hover:text-brand-orange uppercase text-s2 transition-all duration-200 ease-in-out ",children:"HOME"}),(0,a.jsx)("a",{href:"/platform",onClick:()=>i(!1),className:"text-nowrap hover:text-brand-orange uppercase text-s2 transition-all duration-200 ease-in-out",children:"Platform"}),(0,a.jsx)("a",{href:"/blogs",onClick:()=>i(!1),className:"text-nowrap hover:text-brand-orange uppercase text-s2 transition-all duration-200 ease-in-out",children:"Blog"}),(0,a.jsx)("a",{onClick:()=>i(!1),href:"/contact",className:"text-nowrap hover:text-brand-orange uppercase text-s2 transition-all duration-200 ease-in-out",children:"CONTACT"})]}),(0,a.jsxs)("a",{href:c.O.login,target:"_blank",rel:"noreferrer",className:"flex-row gap-2 underline text-white lg:flex items-center justify-center hidden print:hidden hover:scale-110 transition-all duration-200 ease-in-out",children:[(0,a.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"17",height:"18",viewBox:"0 0 17 18",fill:"white",children:[(0,a.jsx)("path",{d:"M8.49962 9.62009C10.8991 9.62009 12.844 7.67635 12.844 5.2783C12.844 2.88026 10.8991 0.936523 8.49962 0.936523C6.10016 0.936523 4.15527 2.88026 4.15527 5.2783C4.15527 7.67635 6.10016 9.62009 8.49962 9.62009Z"}),(0,a.jsx)("path",{d:"M6.53132 10.9414C2.92393 10.9414 0 13.8636 0 17.4689C0 17.7218 0.204373 17.926 0.457447 17.926H16.5426C16.7956 17.926 17 17.7218 17 17.4689C17 13.8636 14.0761 10.9414 10.4687 10.9414H6.53132Z"})]}),"login"]}),(0,a.jsx)("div",{className:"cursor-pointer text-white rounded-full overflow-hidden transition-all duration-500 lg:hidden print:hidden",children:(0,a.jsx)(d.o,{size:24,color:"#fff",toggled:s,toggle:i})})]}),(0,a.jsx)("div",{className:"w-screen h-full pb-4 fixed top-[80px] lg:hidden print:hidden bg-brand-darkRed opacity-95 z-50 transition-all duration-300 ease-in-out ".concat(s?"right-0":"-right-[110%]"),children:s&&(0,a.jsx)("div",{className:"px-5 ",children:(0,a.jsxs)("nav",{className:"p-4 flex flex-col gap-6 text-white justify-center items-center mt-6",children:[(0,a.jsx)("a",{href:"/",onClick:()=>i(!1),className:"text-nowrap hover:text-brand-orange",children:"Home"}),(0,a.jsx)("a",{href:"/platform",onClick:()=>i(!1),className:"text-nowrap hover:text-brand-orange",children:"Platform"}),(0,a.jsx)("a",{href:"/blogs",onClick:()=>i(!1),className:"text-nowrap hover:text-brand-orange",children:"Blog"}),(0,a.jsx)("a",{href:"/contact",onClick:()=>i(!1),className:"text-nowrap hover:text-brand-orange",children:"Contact"})]})})})]})}},4488:function(e,t,s){"use strict";s.d(t,{Z:function(){return n}});var a=s(7437);let r=(0,s(8030).Z)("info",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]]);var i=s(2265),n=e=>{let{text:t,children:s}=e,[n,l]=(0,i.useState)(!1),[d,c]=(0,i.useState)(null);return(0,a.jsxs)("div",{className:"relative inline-flex items-center",children:[s,(0,a.jsx)("button",{type:"button",onMouseEnter:()=>{d&&(clearTimeout(d),c(null)),l(!0)},onMouseLeave:()=>{c(setTimeout(()=>{l(!1)},800))},onFocus:()=>{d&&(clearTimeout(d),c(null)),l(!0)},onBlur:()=>{c(setTimeout(()=>{l(!1)},800))},className:"ml-1.5 text-gray-400 hover:text-gray-600 transition-colors print:hidden","aria-label":"More information",children:(0,a.jsx)(r,{className:"w-3.5 h-3.5"})}),n&&(0,a.jsxs)("div",{className:"absolute left-0 bottom-full mb-2 z-50 w-64 p-2 bg-gray-900 text-white text-xs rounded shadow-lg pointer-events-none",children:[t,(0,a.jsx)("div",{className:"absolute top-full left-4 w-0 h-0 border-l-4 border-r-4 border-t-4 border-transparent border-t-gray-900"})]})]})}},5169:function(e,t,s){"use strict";s.d(t,{O:function(){return a}});let a={calendly:"https://calendly.com/primatrade/book-a-demo",login:"https://portal.primadollar.com/",linkedin:"https://www.linkedin.com/company/primatrades/?originalSubdomain=uk"}}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.