Files
nexus/sreweekly/articles/129/07-scaling-a-monitoring-platform-to-over-9-600-bank-integrations.html
2026-09-12 17:23:01 +08:00

16 lines
244 KiB
HTML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html><html class="no-js" lang="en"><head><script>window.LD_COOKIE=document.cookie</script><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="ie=edge"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><meta name="msapplication-TileColor" content="#da532c"/><meta name="theme-color" content="#ffffff"/><meta name="format-detection" content="telephone=no"/><link rel="canonical" href="https://plaid.com/blog/scaling-a-monitoring-platform/"/><link rel="preconnect" href="https://images.ctfassets.net" crossorigin="anonymous"/><link rel="dns-prefetch" href="https://images.ctfassets.net"/><link rel="preconnect" href="https://assets.ctfassets.net" crossorigin="anonymous"/><link rel="dns-prefetch" href="https://assets.ctfassets.net"/><link rel="preconnect" href="https://videos.ctfassets.net" crossorigin="anonymous"/><link rel="dns-prefetch" href="https://videos.ctfassets.net"/><link rel="apple-touch-icon" sizes="180x180" href="/assets/img/favicons/apple-touch-icon.png"/><link rel="icon" type="image/png" sizes="32x32" href="/assets/img/favicons/favicon-32x32.png"/><link rel="icon" type="image/png" sizes="16x16" href="/assets/img/favicons/favicon-16x16.png"/><link rel="manifest" href="/assets/img/favicons/site.webmanifest"/><link rel="mask-icon" href="/assets/img/favicons/safari-pinned-tab.svg" color="#5bbad5"/><link rel="preload" as="font" href="/assets/fonts/PlaidSans-Medium.woff2" crossorigin="anonymous"/><link rel="preload" as="font" href="/assets/fonts/PlaidSans-Regular.woff2" crossorigin="anonymous"/><link rel="preload" as="font" href="/assets/fonts/PlaidSans-Bold.woff2" crossorigin="anonymous"/><link rel="preload" as="font" href="/assets/fonts/PlaidSans-SemiBold.woff2" crossorigin="anonymous"/><link rel="preload" as="font" href="/assets/fonts/cern-bold.woff2" crossorigin="anonymous"/><link rel="preload" as="font" href="/assets/fonts/cern-extrabold.woff2" crossorigin="anonymous"/><link rel="preload" as="font" href="/assets/fonts/cern-italic.woff2" crossorigin="anonymous"/><link rel="preload" as="font" href="/assets/fonts/cern-medium.woff2" crossorigin="anonymous"/><link rel="preload" as="font" href="/assets/fonts/cern-regular.woff2" crossorigin="anonymous"/><link rel="preload" as="font" href="/assets/fonts/cern-semibold.woff2" crossorigin="anonymous"/><link rel="preload" as="font" href="/assets/fonts/Inconsolata-Bold.woff2" crossorigin="anonymous"/><link rel="preload" as="font" href="/assets/fonts/Inconsolata-Regular.woff2" crossorigin="anonymous"/><link rel="preload" as="font" href="/assets/fonts/BoweryStreet-Bold.woff2" crossorigin="anonymous"/><link rel="preload" as="font" href="/assets/fonts/BoweryStreet-Light.woff2" crossorigin="anonymous"/><link rel="preload" as="font" href="/assets/fonts/BoweryStreet-Medium.woff2" crossorigin="anonymous"/><link rel="preload" as="font" href="/assets/fonts/BoweryStreet-Regular.woff2" crossorigin="anonymous"/><title>Scaling a monitoring platform to over 9,600 bank integrations | Plaid</title><meta name="description" content="At Plaid, one of the things we do is we maintain integrations with more than
9,600 banks. Our core promise to customers is providing reliable and homogenous
..."/><meta property="og:title" content="Scaling a monitoring platform to over 9,600 bank integrations | Plaid"/><meta property="og:site_name" content="Plaid"/><meta property="og:description" content="At Plaid, one of the things we do is we maintain integrations with more than
9,600 banks. Our core promise to customers is providing reliable and homogenous
..."/><meta property="og:type" content="website"/><meta property="og:url" content="https://plaid.com/blog/scaling-a-monitoring-platform/"/><meta property="og:image" content="https://plaid.com/assets/img/plaid-social-card-landscape.jpg"/><meta property="article:published_time" content="2018-06-28T13:45:00.000Z"/><meta property="article:modified_time" content="2018-10-12T00:05:43.000Z"/><meta property="article:tag" content="engineering"/><meta name="twitter:site" content="@plaid"/><meta name="twitter:title" content="Scaling a monitoring platform to over 9,600 bank integrations | Plaid"/><meta name="twitter:card" content="summary_large_image"/><meta property="twitter:description" content="At Plaid, one of the things we do is we maintain integrations with more than
9,600 banks. Our core promise to customers is providing reliable and homogenous
..."/><meta name="twitter:url" content="https://plaid.com/blog/scaling-a-monitoring-platform/"/><meta name="twitter:image" content="https://plaid.com/assets/img/plaid-social-card.jpg"/><meta name="twitter:label1" content="Written by"/><meta name="twitter:data1" content="Joy Zheng &amp; Jeeyoung Kim "/><meta name="twitter:label2" content="Filed under"/><meta name="twitter:data2" content="engineering"/><meta name="google-site-verification" content="92umdhJ1LufsliBdSAFEltp1osgG_ehru4C__nMCJpQ"/><meta name="facebook-domain-verification" content="8pfbsxqbxm99hpn4wd4lmfewlc624z"/><style type="text/css">.Touchable-module_resetButtonOrLink__noLuP{background:transparent;border:none;cursor:pointer;display:inline-block;font-family:Cern,Helvetica,Arial,sans-serif;font-size:inherit;line-height:inherit;margin:0;padding:0;text-align:left;text-decoration:none}.Touchable-module_block__Sx70f{display:block;min-width:22.4rem}.Touchable-module_centered__XLVj9{text-align:center}.Touchable-module_inline__96Syk{display:inline;margin-right:2.4rem}.Touchable-module_inline__96Syk:last-child{margin-right:0}.Touchable-module_wide__q9oU5{min-width:0;width:100%}.Touchable-module_hideFocus__qHjzN:focus{outline:none}.Touchable-module_size14__PF2Rv{font-size:1.4rem;line-height:2rem}.Touchable-module_size16__ejsJb{font-size:1.6rem;line-height:2.4rem}
.Icons-module_icon__9LCqQ{align-items:center;display:inline-flex;height:2.4rem;justify-content:center;width:2.4rem}.Icons-module_icon__9LCqQ svg{height:auto;width:100%}
.Button-module_button__PM45p{align-items:center;background:var(--button-primary-fill-default);border:1px solid transparent;border-radius:2px;display:inline-flex;font-size:1.6rem;font-weight:600;height:4.8rem;line-height:2.4rem;padding-left:1.6rem;padding-right:.8rem;position:relative;transition-duration:.1s;transition-property:background-color,border-color;transition-timing-function:ease-in-out}.Button-module_button__PM45p .Button-module_caret__Ng-Es,.Button-module_button__PM45p .Button-module_text__49LJf{align-items:center;color:var(--color-fill-inverse);display:flex;transition-duration:.1s;transition-property:color;transition-timing-function:ease-out}.Button-module_button__PM45p:focus{outline:2px solid var(--color-border-state-focused);outline-offset:2px}.Button-module_button__PM45p:focus:not(:focus-visible){outline:none}.Button-module_button__PM45p:focus-visible{outline:2px solid var(--color-border-state-focused);outline-offset:2px}.Button-module_button__PM45p:hover{background:var(--color-fill-state-hover);cursor:pointer}.Button-module_button__PM45p:hover .Button-module_icon__9MxrK{-webkit-transform:translateX(.4rem);transform:translateX(.4rem)}.Button-module_button__PM45p:hover .Button-module_animatedCaret__1BKP6 .Button-module_icon__9MxrK{opacity:0;right:-.2rem;transition:right 1.4s cubic-bezier(.23,1.2,.32,1),opacity 1.4s cubic-bezier(.23,1.2,.32,1),-webkit-transform .1s ease-in-out;transition:right 1.4s cubic-bezier(.23,1.2,.32,1),opacity 1.4s cubic-bezier(.23,1.2,.32,1),transform .1s ease-in-out;transition:right 1.4s cubic-bezier(.23,1.2,.32,1),opacity 1.4s cubic-bezier(.23,1.2,.32,1),transform .1s ease-in-out,-webkit-transform .1s ease-in-out}.Button-module_button__PM45p:hover .Button-module_animatedCaret__1BKP6 .Button-module_icon__9MxrK.Button-module_secondaryIcon__HoJSd{opacity:1;right:.6rem}.Button-module_button__PM45p:active{background:var(--color-fill-state-pressed)}.Button-module_button__PM45p:active .Button-module_icon__9MxrK{-webkit-transform:translateX(0);transform:translateX(0)}.Button-module_leadingIcon__-pGiX{align-items:center;color:var(--color-fill-inverse);display:flex;margin-left:-2.8rem;padding-right:.4rem}.Button-module_secondary__iLaPu .Button-module_leadingIcon__-pGiX,.Button-module_tertiary__WZEbY .Button-module_leadingIcon__-pGiX{color:var(--color-text-high-contrast)}.Button-module_secondary__iLaPu:hover .Button-module_leadingIcon__-pGiX,.Button-module_tertiary__WZEbY:hover .Button-module_leadingIcon__-pGiX{color:var(--color-text-state-hover)}.Button-module_secondary__iLaPu:active .Button-module_leadingIcon__-pGiX,.Button-module_tertiary__WZEbY:active .Button-module_leadingIcon__-pGiX{color:var(--color-text-state-pressed)}.Button-module_inline__jIPkS .Button-module_leadingIcon__-pGiX{margin-left:-.4rem}.Button-module_secondary__iLaPu{background:transparent;border:1px solid var(--color-border-state-filled);outline-color:var(--color-border-state-focused)}.Button-module_secondary__iLaPu .Button-module_caret__Ng-Es,.Button-module_secondary__iLaPu .Button-module_text__49LJf{align-items:center;color:var(--color-text-high-contrast);display:flex;transition-duration:.1s;transition-property:color;transition-timing-function:ease-out}.Button-module_secondary__iLaPu:hover{background:transparent;border:1px solid var(--color-border-state-hover);cursor:pointer}.Button-module_secondary__iLaPu:hover .Button-module_caret__Ng-Es,.Button-module_secondary__iLaPu:hover .Button-module_text__49LJf{align-items:center;color:var(--color-text-state-hover);display:flex;transition-duration:.1s;transition-property:color;transition-timing-function:ease-out}.Button-module_secondary__iLaPu:active{background:transparent;border:1px solid var(--color-border-state-pressed);cursor:pointer}.Button-module_secondary__iLaPu:active .Button-module_caret__Ng-Es,.Button-module_secondary__iLaPu:active .Button-module_text__49LJf{align-items:center;color:var(--color-text-state-pressed);display:flex;transition-duration:.1s;transition-property:color;transition-timing-function:ease-out}.Button-module_centered__0xN0T{padding-right:1.6rem;text-align:center}.Button-module_centered__0xN0T .Button-module_flex__wAxRs{justify-content:center}.Button-module_tertiary__WZEbY{background:var(--transparent);border:none;height:4rem}.Button-module_tertiary__WZEbY .Button-module_caret__Ng-Es,.Button-module_tertiary__WZEbY .Button-module_text__49LJf{align-items:center;color:var(--color-text-high-contrast);display:flex;transition-duration:.1s;transition-property:color;transition-timing-function:ease-out}.Button-module_tertiary__WZEbY:hover{background:var(--transparent)}.Button-module_tertiary__WZEbY:hover .Button-module_caret__Ng-Es,.Button-module_tertiary__WZEbY:hover .Button-module_text__49LJf{align-items:center;color:var(--color-fill-state-hover);display:flex;transition-duration:.1s;transition-property:color;transition-timing-function:ease-out}.Button-module_tertiary__WZEbY:active{background:var(--transparent)}.Button-module_tertiary__WZEbY:active .Button-module_caret__Ng-Es,.Button-module_tertiary__WZEbY:active .Button-module_text__49LJf{align-items:center;color:var(--color-fill-state-pressed);display:flex;transition-duration:.1s;transition-property:color;transition-timing-function:ease-out}.Button-module_caret__Ng-Es{fill:currentColor;margin-left:auto}.Button-module_inline__jIPkS .Button-module_caret__Ng-Es{margin-left:2.4rem}.Button-module_icon__9MxrK{justify-content:flex-end;transition:-webkit-transform .1s ease-in-out;transition:transform .1s ease-in-out;transition:transform .1s ease-in-out,-webkit-transform .1s ease-in-out}.Button-module_animatedCaret__1BKP6 .Button-module_icon__9MxrK{opacity:1;position:absolute;right:.6rem;transition:right 1.4s cubic-bezier(.23,1.2,.32,1),opacity 1.4s cubic-bezier(.23,1.2,.32,1)}.Button-module_animatedCaret__1BKP6 .Button-module_icon__9MxrK.Button-module_secondaryIcon__HoJSd{opacity:0;right:1.4rem}.Button-module_disabled__yV9KZ{background:var(--button-primary-fill-disabled)}.Button-module_disabled__yV9KZ.Button-module_secondary__iLaPu,.Button-module_disabled__yV9KZ.Button-module_tertiary__WZEbY{background:var(--color-fill-inverse);border-color:var(--button-primary-border-disabled)}.Button-module_disabled__yV9KZ.Button-module_secondary__iLaPu .Button-module_caret__Ng-Es,.Button-module_disabled__yV9KZ.Button-module_secondary__iLaPu .Button-module_text__49LJf,.Button-module_disabled__yV9KZ.Button-module_tertiary__WZEbY .Button-module_caret__Ng-Es,.Button-module_disabled__yV9KZ.Button-module_tertiary__WZEbY .Button-module_text__49LJf{align-items:center;color:#767676;display:flex;transition-duration:.1s;transition-property:color;transition-timing-function:ease-out}.Button-module_disabled__yV9KZ.Button-module_secondary__iLaPu:hover,.Button-module_disabled__yV9KZ.Button-module_tertiary__WZEbY:hover{background:var(--color-fill-inverse)}.Button-module_disabled__yV9KZ:hover{background:var(--button-primary-fill-disabled);cursor:not-allowed}.Button-module_disabled__yV9KZ:hover .Button-module_icon__9MxrK{-webkit-transform:none;transform:none}.Button-module_disabled__yV9KZ .Button-module_icon__9MxrK{transition:none}.Button-module_submitting__Jg2Fb{background:var(--color-border-state-focused)}.Button-module_submitting__Jg2Fb.Button-module_secondary__iLaPu,.Button-module_submitting__Jg2Fb.Button-module_tertiary__WZEbY{background:var(--color-fill-bg-primary);border-color:var(--color-border-state-focused);color:var(--color-border-state-hover)}.Button-module_submitting__Jg2Fb.Button-module_secondary__iLaPu .Button-module_caret__Ng-Es,.Button-module_submitting__Jg2Fb.Button-module_secondary__iLaPu .Button-module_text__49LJf,.Button-module_submitting__Jg2Fb.Button-module_tertiary__WZEbY .Button-module_caret__Ng-Es,.Button-module_submitting__Jg2Fb.Button-module_tertiary__WZEbY .Button-module_text__49LJf{align-items:center;color:var(--color-text-state-hover);display:flex;transition-duration:.1s;transition-property:color;transition-timing-function:ease-out}.Button-module_flex__wAxRs{align-items:center;display:flex;height:100%;justify-content:flex-start;width:100%}.Button-module_flex__wAxRs.Button-module_round__boeNk{justify-content:center}.Button-module_size32__U8LF1{font-size:1.4rem;height:3.2rem;line-height:1.4rem}.Button-module_size32__U8LF1:not(.Button-module_centered__0xN0T):not(.Button-module_inline__jIPkS){padding-left:1.2rem;padding-right:.4rem}.Button-module_size32__U8LF1.Button-module_centered__0xN0T:not(.Button-module_inline__jIPkS){padding-right:1.2rem}.Button-module_size40__wQWzj{font-size:1.6rem;height:4rem}.Button-module_size56__BQ3-u{font-size:2rem;height:5.6rem}.Button-module_spinnerContainer__u-gbN,.Button-module_spinner__uD-e9{height:1em;width:1em}.Button-module_spinnerContainer__u-gbN{margin:0 auto;position:absolute}.Button-module_spinner__uD-e9 circle{stroke:var(--color-border-state-focused);stroke-width:.4rem}.Button-module_primary__rJteP .Button-module_spinner__uD-e9 circle{stroke:var(--color-border-state-filled)}
.Grid-module_grid__qkVbd{box-sizing:border-box;display:flex;flex-wrap:wrap;justify-self:center;margin-right:calc(var(--unit)*-2)}.Grid-module_grid__qkVbd.Grid-module_align-center__-IP6e{justify-content:center;text-align:center}.Grid-module_fullWidth__k6Zqi>.Grid-module_grid__qkVbd{margin-right:0}.Grid-module_noMarginRightSmall__CzNr3{box-sizing:inherit}@media screen and (max-width:639px){.Grid-module_noMarginRightSmall__CzNr3{margin-right:0}}.Grid-module_noMarginRightMedium__TVkj1{box-sizing:inherit}@media screen and (min-width:640px) and (max-width:1023px){.Grid-module_noMarginRightMedium__TVkj1{margin-right:0}}.Grid-module_noMarginRightLarge__1MDp6{box-sizing:inherit}@media screen and (min-width:1024px){.Grid-module_noMarginRightLarge__1MDp6{margin-right:0}}.Grid-module_gridContainer__6UGne{margin:0 auto;max-width:calc(var(--unit)*126);padding:0 calc(var(--unit)*3)}.Grid-module_fullWidth__k6Zqi{max-width:100%;padding-left:0;padding-right:0}.Grid-module_noPadding__gmVwp{padding:0}
.threadsGridDebug .Column-module_column__pOLxR{background:#e1e1ff;margin-bottom:calc(var(--unit)*4);padding:.8rem}.Column-module_column__pOLxR.Column-module_noMarginRight__SNOsB{margin-right:0}.Column-module_column__pOLxR{box-sizing:border-box;flex:1 1 100%;margin-right:calc(var(--unit)*2);position:relative;text-align:left}.Column-module_column__pOLxR.Column-module_centeredContent__avUw0{justify-content:center;text-align:center}.Column-module_column__pOLxR.Column-module_allowOverflow__eFO7a{overflow:visible}@media screen and (min-width:640px){.Column-module_column__pOLxR:last-child{margin-right:0}}.Column-module_small1__kUlrM{display:block;flex-basis:calc(8.33333% - var(--unit)*2);flex-grow:0;overflow:hidden}@media screen and (max-width:639px){.Column-module_smallOrder1__o08Gi{order:1}}.Column-module_small2__OWUS-{display:block;flex-basis:calc(16.66667% - var(--unit)*2);flex-grow:0;overflow:hidden}@media screen and (max-width:639px){.Column-module_smallOrder2__huNta{order:2}}.Column-module_small3__osOrJ{display:block;flex-basis:calc(25% - var(--unit)*2);flex-grow:0;overflow:hidden}@media screen and (max-width:639px){.Column-module_smallOrder3__3ZZUV{order:3}}.Column-module_small4__GfUje{display:block;flex-basis:calc(33.33333% - var(--unit)*2);flex-grow:0;overflow:hidden}@media screen and (max-width:639px){.Column-module_smallOrder4__QpUrI{order:4}}.Column-module_small5__IXE-9{display:block;flex-basis:calc(41.66667% - var(--unit)*2);flex-grow:0;overflow:hidden}@media screen and (max-width:639px){.Column-module_smallOrder5__boyCT{order:5}}.Column-module_small6__hKrDn{display:block;flex-basis:calc(50% - var(--unit)*2);flex-grow:0;overflow:hidden}@media screen and (max-width:639px){.Column-module_smallOrder6__RjTKl{order:6}}.Column-module_small7__B-gJF{display:block;flex-basis:calc(58.33333% - var(--unit)*2);flex-grow:0;overflow:hidden}@media screen and (max-width:639px){.Column-module_smallOrder7__olwT4{order:7}}.Column-module_small8__zd792{display:block;flex-basis:calc(66.66667% - var(--unit)*2);flex-grow:0;overflow:hidden}@media screen and (max-width:639px){.Column-module_smallOrder8__0t6ES{order:8}}.Column-module_small9__NyrKl{display:block;flex-basis:calc(75% - var(--unit)*2);flex-grow:0;overflow:hidden}@media screen and (max-width:639px){.Column-module_smallOrder9__CRuZO{order:9}}.Column-module_small10__XqdTG{display:block;flex-basis:calc(83.33333% - var(--unit)*2);flex-grow:0;overflow:hidden}@media screen and (max-width:639px){.Column-module_smallOrder10__MxFTO{order:10}}.Column-module_small11__vd9X2{display:block;flex-basis:calc(91.66667% - var(--unit)*2);flex-grow:0;overflow:hidden}@media screen and (max-width:639px){.Column-module_smallOrder11__cVFYP{order:11}}.Column-module_small12__lCMRh{display:block;flex-basis:100%;flex-grow:1;overflow:hidden}@media screen and (max-width:639px){.Column-module_smallOrder12__AJX9H{order:12}.Column-module_smallOrder0__xgyuo{order:0}}.Column-module_smallAuto__ief-W{flex:1}.Column-module_smallHide__RmzhC{display:none}@media screen and (min-width:640px){.Column-module_medium1__N-cAs{display:block;flex-basis:calc(8.33333% - var(--unit)*2);flex-grow:0;overflow:hidden}}@media screen and (min-width:640px) and (max-width:1023px){.Column-module_mediumOrder1__YuprG{order:1}}@media screen and (min-width:640px){.Column-module_medium2__P3AI6{display:block;flex-basis:calc(16.66667% - var(--unit)*2);flex-grow:0;overflow:hidden}}@media screen and (min-width:640px) and (max-width:1023px){.Column-module_mediumOrder2__LXTO4{order:2}}@media screen and (min-width:640px){.Column-module_medium3__HTHCG{display:block;flex-basis:calc(25% - var(--unit)*2);flex-grow:0;overflow:hidden}}@media screen and (min-width:640px) and (max-width:1023px){.Column-module_mediumOrder3__e-xEZ{order:3}}@media screen and (min-width:640px){.Column-module_medium4__7L49i{display:block;flex-basis:calc(33.33333% - var(--unit)*2);flex-grow:0;overflow:hidden}}@media screen and (min-width:640px) and (max-width:1023px){.Column-module_mediumOrder4__1ohiH{order:4}}@media screen and (min-width:640px){.Column-module_medium5__c-LIS{display:block;flex-basis:calc(41.66667% - var(--unit)*2);flex-grow:0;overflow:hidden}}@media screen and (min-width:640px) and (max-width:1023px){.Column-module_mediumOrder5__bURn-{order:5}}@media screen and (min-width:640px){.Column-module_medium6__F8ZDR{display:block;flex-basis:calc(50% - var(--unit)*2);flex-grow:0;overflow:hidden}}@media screen and (min-width:640px) and (max-width:1023px){.Column-module_mediumOrder6__96ZdK{order:6}}@media screen and (min-width:640px){.Column-module_medium7__6u2SH{display:block;flex-basis:calc(58.33333% - var(--unit)*2);flex-grow:0;overflow:hidden}}@media screen and (min-width:640px) and (max-width:1023px){.Column-module_mediumOrder7__nRyRS{order:7}}@media screen and (min-width:640px){.Column-module_medium8__QPnP-{display:block;flex-basis:calc(66.66667% - var(--unit)*2);flex-grow:0;overflow:hidden}}@media screen and (min-width:640px) and (max-width:1023px){.Column-module_mediumOrder8__RW6Yl{order:8}}@media screen and (min-width:640px){.Column-module_medium9__VPta4{display:block;flex-basis:calc(75% - var(--unit)*2);flex-grow:0;overflow:hidden}}@media screen and (min-width:640px) and (max-width:1023px){.Column-module_mediumOrder9__D-K8h{order:9}}@media screen and (min-width:640px){.Column-module_medium10__c4-KI{display:block;flex-basis:calc(83.33333% - var(--unit)*2);flex-grow:0;overflow:hidden}}@media screen and (min-width:640px) and (max-width:1023px){.Column-module_mediumOrder10__yEACp{order:10}}@media screen and (min-width:640px){.Column-module_medium11__8yw-D{display:block;flex-basis:calc(91.66667% - var(--unit)*2);flex-grow:0;overflow:hidden}}@media screen and (min-width:640px) and (max-width:1023px){.Column-module_mediumOrder11__MbVf-{order:11}}@media screen and (min-width:640px){.Column-module_medium12__Z2MBQ{display:block;flex-basis:100%;flex-grow:0;overflow:hidden}}@media screen and (min-width:640px) and (max-width:1023px){.Column-module_mediumOrder12__LonDp{order:12}.Column-module_mediumOrder0__xJhVi{order:0}}@media screen and (min-width:640px){.Column-module_mediumAuto__0JVCY{flex:1}.Column-module_mediumHide__Rv2-u{display:none}}@media screen and (min-width:1024px){.Column-module_large1__xAWMd{display:block;flex-basis:calc(8.33333% - var(--unit)*2);flex-grow:0;overflow:hidden}.Column-module_largeOrder1__G-okJ{order:1}.Column-module_large2__BZErW{display:block;flex-basis:calc(16.66667% - var(--unit)*2);flex-grow:0;overflow:hidden}.Column-module_largeOrder2__797mE{order:2}.Column-module_large3__ibGZl{display:block;flex-basis:calc(25% - var(--unit)*2);flex-grow:0;overflow:hidden}.Column-module_largeOrder3__03dbt{order:3}.Column-module_large4__vWApq{display:block;flex-basis:calc(33.33333% - var(--unit)*2);flex-grow:0;overflow:hidden}.Column-module_largeOrder4__CJffp{order:4}.Column-module_large5__W1lOM{display:block;flex-basis:calc(41.66667% - var(--unit)*2);flex-grow:0;overflow:hidden}.Column-module_largeOrder5__JzRgO{order:5}.Column-module_large6__0v52u{display:block;flex-basis:calc(50% - var(--unit)*2);flex-grow:0;overflow:hidden}.Column-module_largeOrder6__qBTc-{order:6}.Column-module_large7__TYT5q{display:block;flex-basis:calc(58.33333% - var(--unit)*2);flex-grow:0;overflow:hidden}.Column-module_largeOrder7__y6zHY{order:7}.Column-module_large8__ImVM2{display:block;flex-basis:calc(66.66667% - var(--unit)*2);flex-grow:0;overflow:hidden}.Column-module_largeOrder8__FX0AA{order:8}.Column-module_large9__lmND-{display:block;flex-basis:calc(75% - var(--unit)*2);flex-grow:0;overflow:hidden}.Column-module_largeOrder9__cz9wZ{order:9}.Column-module_large10__JMVof{display:block;flex-basis:calc(83.33333% - var(--unit)*2);flex-grow:0;overflow:hidden}.Column-module_largeOrder10__tCPfr{order:10}.Column-module_large11__ITbvx{display:block;flex-basis:calc(91.66667% - var(--unit)*2);flex-grow:0;overflow:hidden}.Column-module_largeOrder11__ED7Xr{order:11}.Column-module_large12__ppR91{display:block;flex-basis:100%;flex-grow:0;overflow:hidden}.Column-module_largeOrder12__Nlhtz{order:12}.Column-module_largeOrder0__DxEjS{order:0}.Column-module_largeAuto__7RrGy{flex:1}.Column-module_largeHide__GWHKE{display:none}}
.Select-module_multiValueRemove__34fTi{height:1.6rem;position:absolute;right:.8rem;width:1.6rem}.Select-module_input__HAhy- input{font-family:Cern,Helvetica,Arial,sans-serif}.Select-module_label40__XvR8I:not([class*=floatLabel]){font-size:1.4rem;top:.8rem}.Select-module_label56__BzrHI:not([class*=floatLabel]){top:1.6rem}</style><script>
navigator.userAgent.indexOf('Algolia') < 0 && !function(){
var analytics=window.analytics=window.analytics||[];if(!analytics.initialize)if(analytics.invoked)window.console&&console.error&&console.error("Segment snippet included twice.");else{analytics.invoked=!0;analytics.methods=["trackSubmit","trackClick","trackLink","trackForm","pageview","identify","reset","group","track","ready","alias","debug","page","once","off","on","addSourceMiddleware"];analytics.factory=function(t){return function(){var e=Array.prototype.slice.call(arguments);e.unshift(t);analytics.push(e);return analytics}};for(var t=0;t<analytics.methods.length;t++){var e=analytics.methods[t];analytics[e]=analytics.factory(e)}analytics.load=function(t,e){var n=document.createElement("script");n.type="text/javascript";n.async=!0;n.src="https://cdn.segment.com/analytics.js/v1/"+t+"/analytics.min.js";var a=document.getElementsByTagName("script")[0];a.parentNode.insertBefore(n,a);analytics._loadOptions=e};analytics.SNIPPET_VERSION="4.1.0";
}}();
</script><script type="application/ld+json">{"@context":"https://schema.org","@type":"Article","author":[{"@type":"Person","name":"Joy Zheng & Jeeyoung Kim "}],"datePublished":"2018-06-28T13:45:00.000Z","dateModified":"2018-10-12T00:05:43.000Z","headline":"Scaling a monitoring platform to over 9,600 bank integrations","publisher":{"@type":"Organization","name":"Plaid","logo":{"@type":"ImageObject","url":"https://dka575ofm4ao0.cloudfront.net/pages-transactional_logos/retina/93189/plaid-logo-horizontal-RGB-2.png"}}}</script><link rel="preconnect" href="https://dev.visualwebsiteoptimizer.com"/><script type="text/javascript" id="vwoCode">window._vwo_code||(function(){var w=window,d=document;var account_id=1200187,version=2.2,settings_tolerance=2000,hide_element='body',hide_element_style='opacity:0 !important;filter:alpha(opacity=0) !important;background:none !important';if(f=!1,v=d.querySelector('#vwoCode'),cc={},-1<d.URL.indexOf('__vwo_disable__')||w._vwo_code)return;try{var e=JSON.parse(localStorage.getItem('_vwo_'+account_id+'_config'));cc=e&&'object'==typeof e?e:{}}catch(e){}function r(t){try{return decodeURIComponent(t)}catch(e){return t}}var s=(()=>{var e={combination:[],combinationChoose:[],split:[],exclude:[],uuid:null,consent:null,optOut:null},t=d.cookie||'';if(t)for(var i,n,o=/(?:^|;\s*)(?:(_vis_opt_exp_(\d+)_combi=([^;]*))|(_vis_opt_exp_(\d+)_combi_choose=([^;]*))|(_vis_opt_exp_(\d+)_split=([^:;]*))|(_vis_opt_exp_(\d+)_exclude=[^;]*)|(_vis_opt_out=([^;]*))|(_vwo_global_opt_out=[^;]*)|(_vwo_uuid=([^;]*))|(_vwo_consent=([^;]*)))/g;null!==(i=o.exec(t));)try{i[1]?e.combination.push({id:i[2],value:r(i[3])}):i[4]?e.combinationChoose.push({id:i[5],value:r(i[6])}):i[7]?e.split.push({id:i[8],value:r(i[9])}):i[10]?e.exclude.push({id:i[11]}):i[12]?e.optOut=r(i[13]):i[14]?e.optOut=!0:i[15]?e.uuid=r(i[16]):i[17]&&(n=r(i[18]),e.consent=n&&3<=n.length?n.substring(0,3):null)}catch(e){}return e})();function n(){var e=(()=>{if(w.VWO&&Array.isArray(w.VWO))for(var e=0;e<w.VWO.length;e++){var t=w.VWO[e];if(Array.isArray(t)&&('setVisitorId'===t[0]||'setSessionId'===t[0]))return!0}return!1})(),t='a='+account_id+'&u='+encodeURIComponent(w._vis_opt_url||d.URL)+'&vn='+version+'&ph=1'+('undefined'!=typeof platform?'&p='+platform:'')+'&st='+w.performance.now(),e=(!e&&((e=(()=>{var e,t=[],i={},n=w.VWO&&w.VWO.appliedCampaigns||{};for(e in n){var o=n[e]&&n[e].v;o&&(t.push(e+'-'+o+'-1'),i[e]=!0)}if(s&&s.combination)for(var r=0;r<s.combination.length;r++){var a=s.combination[r];i[a.id]||t.push(a.id+'-'+a.value)}return t.join('|')})())&&(t+='&c='+e),(e=(()=>{var e=[],t={};if(s&&s.combinationChoose)for(var i=0;i<s.combinationChoose.length;i++){var n=s.combinationChoose[i];e.push(n.id+'-'+n.value),t[n.id]=!0}if(s&&s.split)for(var o=0;o<s.split.length;o++)t[(n=s.split[o]).id]||e.push(n.id+'-'+n.value);return e.join('|')})())&&(t+='&cc='+e),e=(()=>{var e={},t=[];if(w.VWO&&Array.isArray(w.VWO))for(var i=0;i<w.VWO.length;i++){var n=w.VWO[i];if(Array.isArray(n)&&'setVariation'===n[0]&&n[1]&&Array.isArray(n[1]))for(var o=0;o<n[1].length;o++){var r,a=n[1][o];a&&'object'==typeof a&&(r=a.e,a=a.v,r)&&a&&(e[r]=a)}}for(r in e)t.push(r+'-'+e[r]);return t.join('|')})())&&(t+='&sv='+e),s&&s.optOut&&(t+='&o='+s.optOut),(()=>{var e=[],t={};if(s&&s.exclude)for(var i=0;i<s.exclude.length;i++){var n=s.exclude[i];t[n.id]||(e.push(n.id),t[n.id]=!0)}return e.join('|')})());return e&&(t+='&e='+e),s&&s.uuid&&(t+='&id='+s.uuid),s&&s.consent&&(t+='&consent='+s.consent),w.name&&-1<w.name.indexOf('_vis_preview')&&(t+='&pM=true'),w.VWO&&w.VWO.ed&&(t+='&ed='+w.VWO.ed),t}code={nonce:v&&v.nonce,library_tolerance:function(){return'undefined'!=typeof library_tolerance?library_tolerance:void 0},settings_tolerance:function(){return cc.sT||settings_tolerance},hide_element_style:function(){return'{'+(cc.hES||hide_element_style)+'}'},hide_element:function(){return performance.getEntriesByName('first-contentful-paint')[0]?'':'string'==typeof cc.hE?cc.hE:hide_element},getVersion:function(){return version},finish:function(e){var t;f||(f=!0,(t=d.getElementById('_vis_opt_path_hides'))&&t.parentNode.removeChild(t),e&&((new Image).src='https://dev.visualwebsiteoptimizer.com/ee.gif?a='+account_id+e))},finished:function(){return f},addScript:function(e){var t=d.createElement('script');t.type='text/javascript',e.src?t.src=e.src:t.text=e.text,v&&t.setAttribute('nonce',v.nonce),d.getElementsByTagName('head')[0].appendChild(t)},load:function(e,t){t=t||{};var i=new XMLHttpRequest;i.open('GET',e,!0),i.withCredentials=!t.dSC,i.responseType=t.responseType||'text',i.onload=function(){if(t.onloadCb)return t.onloadCb(i,e);200===i.status?w._vwo_code.addScript({text:i.responseText}):w._vwo_code.finish('&e=loading_failure:'+e)},i.onerror=function(){if(t.onerrorCb)return t.onerrorCb(e);w._vwo_code.finish('&e=loading_failure:'+e)},i.send()},init:function(){var e,t,i=this.settings_tolerance(),i=(w._vwo_settings_timer=setTimeout(function(){w._vwo_code.finish()},i),'body'!==this.hide_element()?(e=d.createElement('style'),t=(i=this.hide_element())?i+this.hide_element_style():'',i=d.getElementsByTagName('head')[0],e.setAttribute('id','_vis_opt_path_hides'),v&&e.setAttribute('nonce',v.nonce),e.setAttribute('type','text/css'),e.styleSheet?e.styleSheet.cssText=t:e.appendChild(d.createTextNode(t)),i.appendChild(e)):(e=d.getElementsByTagName('head')[0],(t=d.createElement('div')).style.cssText='z-index: 2147483647 !important;position: fixed !important;left: 0 !important;top: 0 !important;width: 100% !important;height: 100% !important;background:white!important;',t.setAttribute('id','_vis_opt_path_hides'),t.classList.add('_vis_hide_layer'),e.parentNode.insertBefore(t,e.nextSibling)),'https://dev.visualwebsiteoptimizer.com/j.php?'+n());-1!==w.location.search.indexOf('_vwo_xhr')?this.addScript({src:i}):this.load(i+'&x=true',{l:1})}};w._vwo_code=code;code.init();})();(function(){var t=window;function d(){var e;t._vwo_code&&(e=d.hidingStyle=document.getElementById('_vis_opt_path_hides')||d.hidingStyle,t._vwo_code.finished()||t._vwo_code.libExecuted||t.VWO&&t.VWO.dNR||(document.getElementById('_vis_opt_path_hides')||document.getElementsByTagName('head')[0].appendChild(e),requestAnimationFrame(d)))}d();})();</script><meta name="next-head-count" content="60"/><link rel="preload" href="/_next/static/css/04c2dbf1976e3e7d.css" as="style"/><link rel="stylesheet" href="/_next/static/css/04c2dbf1976e3e7d.css" data-n-g=""/><link rel="preload" href="/_next/static/css/78b471bc96beda5d.css" as="style"/><link rel="stylesheet" href="/_next/static/css/78b471bc96beda5d.css" data-n-p=""/><link rel="preload" href="/_next/static/css/78ff4129d9a5d14b.css" as="style"/><link rel="stylesheet" href="/_next/static/css/78ff4129d9a5d14b.css" data-n-p=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/_next/static/chunks/polyfills-42372ed130431b0a.js"></script><script src="/_next/static/chunks/webpack-6548a8062488ad6c.js" defer=""></script><script src="/_next/static/chunks/framework-57847b52bcbe24f7.js" defer=""></script><script src="/_next/static/chunks/main-93ab5d7ae02d96a6.js" defer=""></script><script src="/_next/static/chunks/pages/_app-2128d12e7f7a35b0.js" defer=""></script><script src="/_next/static/chunks/4b358913-307739a2a8d60d69.js" defer=""></script><script src="/_next/static/chunks/b637e9a5-9d3be992dc61993b.js" defer=""></script><script src="/_next/static/chunks/29622-c29ec10a41cc79ee.js" defer=""></script><script src="/_next/static/chunks/68239-44ffb165a1bdac34.js" defer=""></script><script src="/_next/static/chunks/87474-eea013f32a5d0e38.js" defer=""></script><script src="/_next/static/chunks/62842-2dcdbada17de0c3a.js" defer=""></script><script src="/_next/static/chunks/97275-d74fbbc2195ac070.js" defer=""></script><script src="/_next/static/chunks/53483-9f506a436d524061.js" defer=""></script><script src="/_next/static/chunks/51762-02c082a56371cf4e.js" defer=""></script><script src="/_next/static/chunks/89031-79cbc6855e2a3906.js" defer=""></script><script src="/_next/static/chunks/61740-3bd829676e145f2b.js" defer=""></script><script src="/_next/static/chunks/14823-cd8ad24776cff1d6.js" defer=""></script><script src="/_next/static/chunks/pages/blog/%5Bpost%5D-c48f27e69b21c332.js" defer=""></script><script src="/_next/static/baae19cfe58fa5432fae44d68730edad047c6a52/_buildManifest.js" defer=""></script><script src="/_next/static/baae19cfe58fa5432fae44d68730edad047c6a52/_ssgManifest.js" defer=""></script></head><body><div id="__next"><div class="blog"><div class="banner-container"><noscript><div class="Banner_content__fRQzw"><div class="Banner_flag__NqMsv">FYI</div><p class="Banner_text__Mu9ix">This site requires Javascript for full functionality</p></div></noscript></div><nav id="web3-nav" aria-label="Main Navigation" class="MainNavigationBar_Root__ffY5g MainNavigationBar_Root_light__sdvnA MainNavigationBar_Root_show-by-scroll__wz4b2"><style data-emotion="css 12evewr">.css-12evewr{margin:0 auto;max-width:1730px;padding-top:0;padding-bottom:0;}@media (min-width:0px){.css-12evewr{padding-left:13px;padding-right:13px;}}@media (min-width:640px){.css-12evewr{padding-left:40px;padding-right:40px;}}</style><div class="cms-container css-12evewr"><style data-emotion="css 1wccvsj">.css-1wccvsj{--Grid-columns:24;--Grid-columnSpacing:0.4rem;--Grid-rowSpacing:0.4rem;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;min-width:0;box-sizing:border-box;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-flex-wrap:wrap;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;margin:calc(var(--Grid-rowSpacing) / -2) calc(var(--Grid-columnSpacing) / -2);}@media (min-width:640px){.css-1wccvsj{--Grid-columnSpacing:0.8rem;}}@media (min-width:1024px){.css-1wccvsj{--Grid-columnSpacing:1.6rem;}}@media (min-width:640px){.css-1wccvsj{--Grid-rowSpacing:0.8rem;}}@media (min-width:1024px){.css-1wccvsj{--Grid-rowSpacing:1.6rem;}}</style><div class="MuiGrid-root MuiGrid-container MuiGrid-direction-xs-row cms-row undefined css-1wccvsj"><style data-emotion="css i5w622">.css-i5w622{-webkit-box-flex:0;-webkit-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-webkit-flex-basis:auto;-ms-flex-preferred-size:auto;flex-basis:auto;width:calc(100% * 24 / var(--Grid-columns));min-width:0;box-sizing:border-box;padding:calc(var(--Grid-rowSpacing) / 2) calc(var(--Grid-columnSpacing) / 2);}@media (min-width:1280px){.css-i5w622{-webkit-box-flex:0;-webkit-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-webkit-flex-basis:auto;-ms-flex-preferred-size:auto;flex-basis:auto;width:calc(100% * 20 / var(--Grid-columns));}}@media (min-width:1280px){.css-i5w622{margin-left:calc(100% * 2 / var(--Grid-columns));}}</style><div class="MuiGrid-root MuiGrid-direction-xs-row MuiGrid-grid-xs-24 MuiGrid-grid-lg-20 cms-column undefined css-i5w622"><div class="MainNavigationBar_Root__bar__B48cc"><div class="MainNavigationBar_Root__inner__AUy0j"><a href="#main-content" class="MainNavigationBar_Root__link-to-content__pqlzU">Skip to main content</a><a class="MainNavigationBar_Logo__liIxh css-0" aria-label="Go to Plaid homepage" href="/"><style data-emotion="css 6ht02i">.css-6ht02i{display:block;color:#111;}@media (min-width:0px){.css-6ht02i{height:24px;}}@media (min-width:640px){.css-6ht02i{height:28px;}}</style><svg height="48" viewBox="0 0 77 29" xmlns="http://www.w3.org/2000/svg" aria-label="Plaid" class="css-6ht02i"><g fill="currentColor" fill-rule="evenodd"><path d="M37.3252 14.9546H36.2239V12.5005H37.2135C38.4162 12.5005 39.0177 12.9124 39.0177 13.7353C39.0177 14.5484 38.4537 14.9546 37.3252 14.9546ZM40.3753 10.9121C39.7365 10.3878 38.6455 10.126 37.1019 10.126H33.6211V20.617H36.2239V17.33H37.3893C38.8052 17.33 39.8431 17.0256 40.5028 16.417C41.2475 15.7359 41.6206 14.8291 41.6206 13.6961C41.6206 12.5218 41.2058 11.5939 40.3753 10.9121ZM46.0756 10.1256H43.3611V20.6173H49.2216V18.2421H46.0758L46.0756 10.1256ZM54.5063 16.9683L55.6241 13.382L56.7254 16.9683H54.5063ZM54.538 10.1256L50.275 20.6173H53.197L53.7559 19.0919H57.46L57.9707 20.6173H60.9256L56.6937 10.1256H54.538ZM62.2824 20.6173H64.9969V10.1256H62.2824V20.6173ZM71.1922 18.2422H70.0263V12.5005H71.2081C72.0385 12.5005 72.6766 12.7536 73.1239 13.2592C73.5712 13.7654 73.7944 14.4828 73.7944 15.4101C73.7944 17.2986 72.9266 18.2422 71.1922 18.2422ZM75.5353 12.0917C75.1737 11.588 74.7422 11.1849 74.2424 10.8806C73.4221 10.3769 72.3043 10.125 70.8885 10.125H67.3119V20.6167H71.4956C73.0068 20.6167 74.2209 20.135 75.1363 19.1701C76.0517 18.2052 76.5091 16.9261 76.5091 15.3319C76.5089 14.0633 76.1842 12.9835 75.5353 12.0917Z"></path><path d="M25.7629 26.2628L28 17.5309L24.9691 14.5001L27.9999 11.4691L25.7628 2.73706L17.0309 0.5L14.0001 3.531L10.969 0.50014L2.23706 2.73734L0 11.4691L3.03128 14.4999L0.00014 17.531L2.2372 26.2629L10.9691 28.5L14.0001 25.469L17.031 28.4999L25.7629 26.2628ZM15.7321 23.7371L18.6186 20.8505L22.2912 24.5233L17.6956 25.7007L15.7321 23.7371ZM11.1136 9.88154L14.0003 6.99502L16.8868 9.8814L14.0001 12.7679L11.1136 9.88154ZM12.2682 14.5L9.38154 17.3865L6.49502 14.5L9.38154 11.6135L12.2682 14.5ZM18.6187 11.6133L21.5053 14.5L18.6186 17.3865L15.7321 14.5L18.6187 11.6133ZM16.8867 19.1186L14.0001 22.0051L11.1135 19.1185L14.0001 16.2319L16.8867 19.1186ZM10.3044 25.7007L5.70864 24.5233L9.38154 20.8504L12.2682 23.7371L10.3044 25.7007ZM4.76308 16.2319L7.6496 19.1185L3.9767 22.7914L2.7993 18.1957L4.76308 16.2319ZM3.9767 6.20836L7.64974 9.8814L4.76308 12.7681L2.7993 10.8041L3.9767 6.20836ZM12.2683 5.26294L9.38168 8.1496L5.70892 4.4767L10.3047 3.2993L12.2683 5.26294ZM17.6959 3.2993L22.2915 4.4767L18.6186 8.14946L15.7321 5.26294L17.6959 3.2993ZM23.2372 12.7681L20.3505 9.8814L24.0233 6.20878L25.2007 10.8046L23.2372 12.7681ZM24.0233 22.7914L20.3505 19.1186L23.2372 16.2321L25.2007 18.1957L24.0233 22.7914Z"></path></g></svg></a><button type="button" class="MainNavigationBar_Burger__DKxT3" tabindex="0" aria-label="Main menu" aria-expanded="false"><span class="icon-container"><!--$--><style data-emotion="css 1ktnz7v">.css-1ktnz7v{width:22px;height:22px;}</style><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-1ktnz7v" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4396)"><path d="M14 4.25H2V2.75H14V4.25Z" fill="currentColor"></path><path d="M14 8.75H2V7.25H14V8.75Z" fill="currentColor"></path><path d="M2 13.25H14V11.75H2V13.25Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4396"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></button></div></div></div></div></div><dialog class="Dialog_Dialog__mC3_V MainNavigationBar_Root__dialog__jJWmD" id="main-menu-dialog"><div class="Dialog_Dialog__inner__0VS6t"><div class="Dialog_Dialog__head__4sNv1"><form method="dialog"><button type="button" class="Dialog_Close__kLyHQ" tabindex="0" aria-label="Close main menu modal"><span class="icon-container"><!--$--><style data-emotion="css 1g6nv6q">.css-1g6nv6q{width:22px;height:24px;}</style><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-1g6nv6q" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4045)"><path d="M8.00006 6.93933L3.53039 2.46967L2.46973 3.53033L6.9394 8L2.46973 12.4697L3.53039 13.5303L8.00006 9.06066L12.4697 13.5303L13.5304 12.4697L9.06072 8L13.5304 3.53033L12.4697 2.46967L8.00006 6.93933Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4045"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></button><input type="submit" style="display:none" value="Close main menu modal"/></form><a class="Dialog_Logo__Y1KHY css-0" aria-label="Go to Plaid homepage" href="/"><style data-emotion="css 1u0ii08">.css-1u0ii08{display:block;margin-left:16px;color:#111;}@media (min-width:0px){.css-1u0ii08{height:24px;}}@media (min-width:640px){.css-1u0ii08{height:28px;}}</style><svg height="48" viewBox="0 0 77 29" xmlns="http://www.w3.org/2000/svg" aria-label="Plaid" class="css-1u0ii08"><g fill="currentColor" fill-rule="evenodd"><path d="M37.3252 14.9546H36.2239V12.5005H37.2135C38.4162 12.5005 39.0177 12.9124 39.0177 13.7353C39.0177 14.5484 38.4537 14.9546 37.3252 14.9546ZM40.3753 10.9121C39.7365 10.3878 38.6455 10.126 37.1019 10.126H33.6211V20.617H36.2239V17.33H37.3893C38.8052 17.33 39.8431 17.0256 40.5028 16.417C41.2475 15.7359 41.6206 14.8291 41.6206 13.6961C41.6206 12.5218 41.2058 11.5939 40.3753 10.9121ZM46.0756 10.1256H43.3611V20.6173H49.2216V18.2421H46.0758L46.0756 10.1256ZM54.5063 16.9683L55.6241 13.382L56.7254 16.9683H54.5063ZM54.538 10.1256L50.275 20.6173H53.197L53.7559 19.0919H57.46L57.9707 20.6173H60.9256L56.6937 10.1256H54.538ZM62.2824 20.6173H64.9969V10.1256H62.2824V20.6173ZM71.1922 18.2422H70.0263V12.5005H71.2081C72.0385 12.5005 72.6766 12.7536 73.1239 13.2592C73.5712 13.7654 73.7944 14.4828 73.7944 15.4101C73.7944 17.2986 72.9266 18.2422 71.1922 18.2422ZM75.5353 12.0917C75.1737 11.588 74.7422 11.1849 74.2424 10.8806C73.4221 10.3769 72.3043 10.125 70.8885 10.125H67.3119V20.6167H71.4956C73.0068 20.6167 74.2209 20.135 75.1363 19.1701C76.0517 18.2052 76.5091 16.9261 76.5091 15.3319C76.5089 14.0633 76.1842 12.9835 75.5353 12.0917Z"></path><path d="M25.7629 26.2628L28 17.5309L24.9691 14.5001L27.9999 11.4691L25.7628 2.73706L17.0309 0.5L14.0001 3.531L10.969 0.50014L2.23706 2.73734L0 11.4691L3.03128 14.4999L0.00014 17.531L2.2372 26.2629L10.9691 28.5L14.0001 25.469L17.031 28.4999L25.7629 26.2628ZM15.7321 23.7371L18.6186 20.8505L22.2912 24.5233L17.6956 25.7007L15.7321 23.7371ZM11.1136 9.88154L14.0003 6.99502L16.8868 9.8814L14.0001 12.7679L11.1136 9.88154ZM12.2682 14.5L9.38154 17.3865L6.49502 14.5L9.38154 11.6135L12.2682 14.5ZM18.6187 11.6133L21.5053 14.5L18.6186 17.3865L15.7321 14.5L18.6187 11.6133ZM16.8867 19.1186L14.0001 22.0051L11.1135 19.1185L14.0001 16.2319L16.8867 19.1186ZM10.3044 25.7007L5.70864 24.5233L9.38154 20.8504L12.2682 23.7371L10.3044 25.7007ZM4.76308 16.2319L7.6496 19.1185L3.9767 22.7914L2.7993 18.1957L4.76308 16.2319ZM3.9767 6.20836L7.64974 9.8814L4.76308 12.7681L2.7993 10.8041L3.9767 6.20836ZM12.2683 5.26294L9.38168 8.1496L5.70892 4.4767L10.3047 3.2993L12.2683 5.26294ZM17.6959 3.2993L22.2915 4.4767L18.6186 8.14946L15.7321 5.26294L17.6959 3.2993ZM23.2372 12.7681L20.3505 9.8814L24.0233 6.20878L25.2007 10.8046L23.2372 12.7681ZM24.0233 22.7914L20.3505 19.1186L23.2372 16.2321L25.2007 18.1957L24.0233 22.7914Z"></path></g></svg></a></div><div class="Dialog_Dialog__body__f7oVb"><style data-emotion="css mlgwz3">.css-mlgwz3{-webkit-box-flex:2;-webkit-flex-grow:2;-ms-flex-positive:2;flex-grow:2;}</style><div class="MuiBox-root css-mlgwz3"><style data-emotion="css 1cvbjj5">.css-1cvbjj5{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;gap:16px;margin:16px 0;padding:0;}.css-1cvbjj5>li>ul{margin-top:8px;padding:8px 0;margin-bottom:0;margin-left:-16px;margin-right:-16px;background:linear-gradient(48deg, #f2fbff, #effffa 50%, #f0fdf8);}.css-1cvbjj5>li>ul>li{padding-left:16px;padding-right:16px;}.css-1cvbjj5>li>ul>li>ul{background:#fff!important;border:1px solid #EAEFF0;border-radius:12px;margin-bottom:0;margin-left:0;margin-right:0;gap:8px;}.css-1cvbjj5>li>ul>li>ul>li{padding-left:0;}.css-1cvbjj5>li>ul>li:last-child>ul{margin-bottom:8px;}</style><ul class="css-1cvbjj5"><style data-emotion="css 1lwrckp">.css-1lwrckp{list-style:none;padding:0;}</style><li class="css-1lwrckp"><style data-emotion="css 1l2x1ad">.css-1l2x1ad{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:8px;font-size:18px;font-style:normal;font-weight:600;line-height:24px;text-align:left;width:100%;padding:8px 16px;color:#111112;}</style><button aria-expanded="false" aria-controls="main-menu-item-002-menu" class="css-1l2x1ad">Products<span class="icon-container"><!--$--><style data-emotion="css gjnjl3">.css-gjnjl3{-webkit-transform:rotate(0deg);-moz-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg);-webkit-transition:-webkit-transform 0.3s ease;transition:transform 0.3s ease;}</style><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-gjnjl3" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_3962)"><path d="M14.0303 6.53027L8 12.5605L1.96973 6.53027L3.03027 5.46973L8 10.4395L12.9697 5.46973L14.0303 6.53027Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_3962"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></button><style data-emotion="css tgr9go">.css-tgr9go{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;gap:16px;margin:16px 0;padding:0;display:none;}.css-tgr9go>li>ul{margin-top:8px;padding:8px 0;margin-bottom:0;margin-left:-16px;margin-right:-16px;background:linear-gradient(48deg, #f2fbff, #effffa 50%, #f0fdf8);}.css-tgr9go>li>ul>li{padding-left:16px;padding-right:16px;}.css-tgr9go>li>ul>li>ul{background:#fff!important;border:1px solid #EAEFF0;border-radius:12px;margin-bottom:0;margin-left:0;margin-right:0;gap:8px;}.css-tgr9go>li>ul>li>ul>li{padding-left:0;}.css-tgr9go>li>ul>li:last-child>ul{margin-bottom:8px;}</style><ul id="main-menu-item-002-menu" class="css-tgr9go"><li class="css-1lwrckp"><button aria-expanded="false" aria-controls="main-menu-item-012-menu" class="css-1l2x1ad">Payments<span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-gjnjl3" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_3962)"><path d="M14.0303 6.53027L8 12.5605L1.96973 6.53027L3.03027 5.46973L8 10.4395L12.9697 5.46973L14.0303 6.53027Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_3962"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></button><ul id="main-menu-item-012-menu" class="css-tgr9go"><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/solutions/payments/"><style data-emotion="css ibgeem">.css-ibgeem{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:flex-start;-webkit-box-align:flex-start;-ms-flex-align:flex-start;align-items:flex-start;gap:16px;font-size:18px;font-style:normal;font-weight:600;line-height:24px;padding:8px 16px;color:#111112;}</style><div class="css-ibgeem"><style data-emotion="css 4mjv7g">.css-4mjv7g{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:28px;height:28px;border-radius:4px;padding:4px;background:linear-gradient(48deg, #CDF5FD 0%, #D8FEF3 50%, #E8FED7 100%);}</style><span class="css-4mjv7g"><span class="icon-container"><!--$--><style data-emotion="css 13sjdh2">.css-13sjdh2{color:#0ba299!important;}</style><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4225)"><path d="M10.5 6.5C10.5 7.05228 10.0523 7.5 9.5 7.5C8.94771 7.5 8.5 7.05228 8.5 6.5C8.5 5.94771 8.94771 5.5 9.5 5.5C10.0523 5.5 10.5 5.94771 10.5 6.5Z" fill="currentColor"></path><path d="M11.75 4.5H13.25V8.5H11.75V4.5Z" fill="currentColor"></path><path d="M7.25 8.5V4.5L5.75 4.5V8.5H7.25Z" fill="currentColor"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M3.25 1.75H15.75V11.25H3.25V1.75ZM4.75 3.25V9.75H14.25V3.25H4.75Z" fill="currentColor"></path><path d="M1.75 12.75V5.5H0.25V14.25H13V12.75H1.75Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4225"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><style data-emotion="css 8tremo">.css-8tremo{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;line-height:28px;}</style><span class="MuiBox-root css-8tremo">Overview<style data-emotion="css 61plmn">.css-61plmn{color:#012e37;font-weight:400;font-size:14px;line-height:20px;}</style><span class="MuiBox-root css-61plmn">Explore payments solutions</span></span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/products/auth/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4252)"><path fill-rule="evenodd" clip-rule="evenodd" d="M8.33541 0.829241C8.12427 0.723668 7.87574 0.723668 7.6646 0.829241L0.664595 4.32924C0.252461 4.53531 0.123538 5.08144 0.400006 5.45006L1.75 7.25005V13.25H0V14.75H16V13.25H14.25V7.25007L15.6 5.45006C15.8765 5.08144 15.7475 4.53531 15.3354 4.32924L8.33541 0.829241ZM12.75 7.75006H10.75V13.25H12.75V7.75006ZM9.25 7.75006H6.75V13.25H9.25V7.75006ZM5.25 7.75006H3.25V13.25H5.25V7.75006ZM2.87501 6.25006L2.1392 5.26899L8.00001 2.33859L13.8608 5.26899L13.125 6.25006H2.87501Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4252"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Auth<span class="MuiBox-root css-61plmn">Verified account and routing numbers</span></span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/products/identity/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4207)"><path fill-rule="evenodd" clip-rule="evenodd" d="M8 5.25C9.2255 5.25 10.25 6.2745 10.25 7.5C10.25 8.17642 9.93549 8.82874 9.41421 9.25001L10 9.25001C10.9665 9.25001 11.75 10.0335 11.75 11V12H10.25V11C10.25 10.8619 10.1381 10.75 10 10.75L6 10.75C5.86193 10.75 5.75 10.8619 5.75 11V12H4.25V11C4.25 10.0335 5.0335 9.25 6.00001 9.25L6.58578 9.25C6.06451 8.82873 5.75 8.17642 5.75 7.5C5.75 6.2745 6.7745 5.25 8 5.25ZM8 6.75C7.60218 6.75 7.25 7.10218 7.25 7.5C7.25 7.89782 7.60218 8.25 8 8.25C8.39782 8.25 8.75 7.89782 8.75 7.5C8.75 7.10218 8.39782 6.75 8 6.75Z" fill="currentColor"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M11.225 1.25H13.5C14.1904 1.25 14.75 1.80964 14.75 2.5V14C14.75 14.6904 14.1904 15.25 13.5 15.25H2.5C1.80964 15.25 1.25 14.6904 1.25 14V2.5C1.25 1.80964 1.80964 1.25 2.5 1.25H4.775C4.89082 0.67944 5.39526 0.25 6 0.25H10C10.6047 0.25 11.1092 0.67944 11.225 1.25ZM4.75 2.75H2.75V13.75H13.25V2.75H11.25V3C11.25 3.69036 10.6904 4.25 10 4.25H6C5.30964 4.25 4.75 3.69036 4.75 3V2.75ZM6.25 2.75V1.75H9.75V2.75H6.25Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4207"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Identity<span class="MuiBox-root css-61plmn">Bank account-holder information</span></span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/products/balance/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4333)"><path d="M12.3785 6.06033L14.6102 2.93594L13.3896 2.06409L11.2921 5.00066L9.78164 4.09439C9.22281 3.75909 8.50014 3.90939 8.12135 4.4397L6.2921 7.00066L4.78164 6.09439C4.22281 5.75909 3.50014 5.90939 3.12135 6.4397L0.889648 9.56409L2.11025 10.4359L4.2078 7.49937L5.71826 8.40565C6.27709 8.74094 6.99975 8.59064 7.37855 8.06033L9.2078 5.49937L10.7183 6.40565C11.2771 6.74094 11.9998 6.59064 12.3785 6.06033Z" fill="currentColor"></path><path d="M15 12.25H1V13.75H15V12.25Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4333"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Balance<span class="MuiBox-root css-61plmn">Real-time balance checks</span></span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/products/signal/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4675)"><path d="M11.5303 5.53026L10.4696 4.4696L6.99993 7.93927L5.53026 6.4696L4.4696 7.53026L6.99993 10.0606L11.5303 5.53026Z" fill="currentColor"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M8.3031 0.302702C8.10405 0.25294 7.89581 0.25294 7.69676 0.302704L2.19683 1.6777C1.64037 1.81682 1.25 2.3168 1.25 2.89038V11.2128C1.25 11.6574 1.48614 12.0685 1.87016 12.2925L7.37009 15.5009C7.75929 15.7279 8.24056 15.7279 8.62977 15.5009L14.1298 12.2925C14.5139 12.0685 14.75 11.6574 14.75 11.2128V2.89038C14.75 2.3168 14.3596 1.81682 13.8032 1.6777L8.3031 0.302702ZM2.75 3.08557L7.99993 1.77307L13.25 3.08558V11.0692L7.99994 14.1317L2.75 11.0692V3.08557Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4675"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Signal<span class="MuiBox-root css-61plmn">ACH payment risk platform</span></span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/products/transfer/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4756)"><path d="M15.0608 4.5L11.0304 0.469666L9.96978 1.53033L12.1895 3.75L2.00011 3.75V5.25H12.1894L9.96978 7.46967L11.0304 8.53033L15.0608 4.5Z" fill="currentColor"></path><path d="M0.939453 11.5L4.96978 15.5303L6.03044 14.4697L3.81077 12.25L14.0001 12.25V10.75L3.81078 10.75L6.03044 8.53033L4.96978 7.46967L0.939453 11.5Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4756"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Transfer<span class="MuiBox-root css-61plmn">ACH, RTP, and FedNow payment processing</span></span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/products/investments-move/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_3998)"><path d="M7.46997 3.03027L12.4397 8L7.46997 12.9697L8.53052 14.0303L14.5608 8L8.53052 1.96973L7.46997 3.03027Z" fill="currentColor"></path><path d="M2.46997 3.03027L7.4397 8L2.46997 12.9697L3.53052 14.0303L9.56079 8L3.53052 1.96973L2.46997 3.03027Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_3998"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Investments Move<span class="MuiBox-root css-61plmn">Streamline asset transfers. Unlock growth.</span></span></div></a></li></ul></li><li class="css-1lwrckp"><button aria-expanded="false" aria-controls="main-menu-item-022-menu" class="css-1l2x1ad">Fraud &amp; risk<span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-gjnjl3" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_3962)"><path d="M14.0303 6.53027L8 12.5605L1.96973 6.53027L3.03027 5.46973L8 10.4395L12.9697 5.46973L14.0303 6.53027Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_3962"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></button><ul id="main-menu-item-022-menu" class="css-tgr9go"><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/solutions/fraud/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4270)"><path d="M11.5304 7.03026L7.50006 11.0606L4.96973 8.53026L6.03039 7.4696L7.50006 8.93927L10.4697 5.9696L11.5304 7.03026Z" fill="currentColor"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M4.98936 1.25C5.10518 0.67944 5.60962 0.25 6.21436 0.25H9.71436C10.3191 0.25 10.8235 0.67944 10.9394 1.25H13C13.6904 1.25 14.25 1.80964 14.25 2.5V13.5C14.25 14.1904 13.6904 14.75 13 14.75H3C2.30964 14.75 1.75 14.1904 1.75 13.5V2.5C1.75 1.80964 2.30964 1.25 3 1.25H4.98936ZM4.96436 2.75H3.25V13.25H12.75V2.75H10.9644V3C10.9644 3.69036 10.4047 4.25 9.71436 4.25H6.21436C5.524 4.25 4.96436 3.69036 4.96436 3V2.75ZM6.46436 1.75V2.75H9.46436V1.75H6.46436Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4270"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Overview<span class="MuiBox-root css-61plmn">Explore fraud and risk solution</span></span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/products/identity-verification/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4540)"><path d="M2.25 2.25H4.75V0.75H1.96429C1.29365 0.75 0.75 1.29365 0.75 1.96429V4.75H2.25V2.25Z" fill="currentColor"></path><path d="M13.75 2.25H11.25V0.75H14.0357C14.7063 0.75 15.25 1.29366 15.25 1.96429V4.75H13.75V2.25Z" fill="currentColor"></path><path d="M2.25 13.75V11.25H0.75V14.0357C0.75 14.7063 1.29366 15.25 1.96429 15.25H4.75V13.75H2.25Z" fill="currentColor"></path><path d="M13.75 13.75V11.25H15.25V14.0357C15.25 14.7063 14.7063 15.25 14.0357 15.25H11.25V13.75H13.75Z" fill="currentColor"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M5.5 6.25C5.5 4.86929 6.61929 3.75 8 3.75C9.38071 3.75 10.5 4.86929 10.5 6.25C10.5 7.0678 10.1073 7.79389 9.50024 8.25C11.0189 8.25013 12.25 9.4813 12.25 11V11.5H10.75V11C10.75 10.3096 10.1904 9.75 9.5 9.75H6.5C5.80964 9.75 5.25 10.3096 5.25 11V11.5H3.75V11C3.75 9.4813 4.98108 8.25013 6.49976 8.25C5.89267 7.79389 5.5 7.0678 5.5 6.25ZM8 5.25C7.44772 5.25 7 5.69772 7 6.25C7 6.80228 7.44772 7.25 8 7.25C8.55228 7.25 9 6.80228 9 6.25C9 5.69772 8.55228 5.25 8 5.25Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4540"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Identity Verification<span class="MuiBox-root css-61plmn">Global KYC and anti-fraud</span></span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/products/beacon/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4531)"><path d="M6.98873 0.315466C7.32004 0.27225 7.65761 0.25 8 0.25C8.34239 0.25 8.67996 0.27225 9.01127 0.315466L8.81726 1.80287C8.55011 1.76802 8.27735 1.75 8 1.75C7.72265 1.75 7.44989 1.76802 7.18274 1.80287L6.98873 0.315466Z" fill="currentColor"></path><path d="M8 15.75C7.65761 15.75 7.32004 15.7277 6.98873 15.6845L7.18275 14.1971C7.44989 14.232 7.72265 14.25 8 14.25C8.27735 14.25 8.55011 14.232 8.81726 14.1971L9.01127 15.6845C8.67996 15.7277 8.34239 15.75 8 15.75Z" fill="currentColor"></path><path d="M5.0332 15.1616C4.40273 14.9002 3.81457 14.5581 3.28152 14.1485L4.19551 12.9591C4.62582 13.2898 5.10007 13.5655 5.60778 13.776L5.0332 15.1616Z" fill="currentColor"></path><path d="M3.28152 1.85151C3.81457 1.44188 4.40273 1.09981 5.03319 0.838369L5.60778 2.22396C5.10007 2.43449 4.62582 2.71022 4.19551 3.04089L3.28152 1.85151Z" fill="currentColor"></path><path d="M1.85151 12.7185C1.44188 12.1854 1.09981 11.5973 0.838369 10.9668L2.22396 10.3922C2.43449 10.8999 2.71022 11.3742 3.04089 11.8045L1.85151 12.7185Z" fill="currentColor"></path><path d="M0.838369 5.0332C1.09981 4.40273 1.44188 3.81457 1.85151 3.28152L3.04089 4.19551C2.71022 4.62582 2.43449 5.10007 2.22396 5.60778L0.838369 5.0332Z" fill="currentColor"></path><path d="M0.25 8C0.25 7.65761 0.27225 7.32004 0.315466 6.98873L1.80287 7.18275C1.76802 7.44989 1.75 7.72265 1.75 8C1.75 8.27735 1.76802 8.55011 1.80287 8.81726L0.315466 9.01127C0.27225 8.67996 0.25 8.34239 0.25 8Z" fill="currentColor"></path><path d="M10.9668 15.1616C11.5973 14.9002 12.1854 14.5581 12.7185 14.1485L11.8045 12.9591C11.3742 13.2898 10.8999 13.5655 10.3922 13.776L10.9668 15.1616Z" fill="currentColor"></path><path d="M12.7185 1.85151C12.1854 1.44188 11.5973 1.09981 10.9668 0.838369L10.3922 2.22396C10.8999 2.43449 11.3742 2.71022 11.8045 3.04089L12.7185 1.85151Z" fill="currentColor"></path><path d="M14.1485 12.7185C14.5581 12.1854 14.9002 11.5973 15.1616 10.9668L13.776 10.3922C13.5655 10.8999 13.2898 11.3742 12.9591 11.8045L14.1485 12.7185Z" fill="currentColor"></path><path d="M15.1616 5.0332C14.9002 4.40273 14.5581 3.81457 14.1485 3.28152L12.9591 4.19551C13.2898 4.62582 13.5655 5.10007 13.776 5.60778L15.1616 5.0332Z" fill="currentColor"></path><path d="M15.75 8C15.75 7.65761 15.7278 7.32004 15.6845 6.98873L14.1971 7.18275C14.232 7.44989 14.25 7.72265 14.25 8C14.25 8.27735 14.232 8.55011 14.1971 8.81726L15.6845 9.01127C15.7278 8.67996 15.75 8.34239 15.75 8Z" fill="currentColor"></path><path d="M8 5C8.55229 5 9 4.55228 9 4C9 3.44772 8.55229 3 8 3C7.44772 3 7 3.44772 7 4C7 4.55228 7.44772 5 8 5Z" fill="currentColor"></path><path d="M9 12C9 12.5523 8.55229 13 8 13C7.44772 13 7 12.5523 7 12C7 11.4477 7.44772 11 8 11C8.55229 11 9 11.4477 9 12Z" fill="currentColor"></path><path d="M5.40185 6.5C5.67799 6.02171 5.51412 5.41012 5.03583 5.13398C4.55753 4.85783 3.94594 5.02171 3.6698 5.5C3.39366 5.97829 3.55753 6.58989 4.03583 6.86603C4.51412 7.14217 5.12571 6.97829 5.40185 6.5Z" fill="currentColor"></path><path d="M11.964 9.13398C12.4423 9.41012 12.6062 10.0217 12.3301 10.5C12.0539 10.9783 11.4423 11.1422 10.964 10.866C10.4858 10.5899 10.3219 9.9783 10.598 9.5C10.8742 9.02171 11.4858 8.85783 11.964 9.13398Z" fill="currentColor"></path><path d="M5.40185 9.5C5.12571 9.02171 4.51412 8.85783 4.03583 9.13398C3.55753 9.41012 3.39366 10.0217 3.6698 10.5C3.94594 10.9783 4.55753 11.1422 5.03583 10.866C5.51412 10.5899 5.67799 9.9783 5.40185 9.5Z" fill="currentColor"></path><path d="M10.964 5.13398C11.4423 4.85783 12.0539 5.02171 12.3301 5.5C12.6062 5.97829 12.4423 6.58989 11.964 6.86603C11.4858 7.14217 10.8742 6.97829 10.598 6.5C10.3219 6.02171 10.4858 5.41012 10.964 5.13398Z" fill="currentColor"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M8 5.75C6.75736 5.75 5.75 6.75736 5.75 8C5.75 9.24264 6.75736 10.25 8 10.25C9.24264 10.25 10.25 9.24264 10.25 8C10.25 6.75736 9.24264 5.75 8 5.75ZM7.25 8C7.25 7.58579 7.58579 7.25 8 7.25C8.41421 7.25 8.75 7.58579 8.75 8C8.75 8.41421 8.41421 8.75 8 8.75C7.58579 8.75 7.25 8.41421 7.25 8Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4531"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Beacon<span class="MuiBox-root css-61plmn">Anti-fraud network</span></span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/products/monitor/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4549)"><path d="M7.21973 8.21967C7.77201 8.21967 8.21973 7.77196 8.21973 7.21967C8.21973 6.66739 7.77201 6.21967 7.21973 6.21967C6.66744 6.21967 6.21973 6.66739 6.21973 7.21967C6.21973 7.77196 6.66744 8.21967 7.21973 8.21967Z" fill="currentColor"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M3.16132 6.70042C4.05994 5.33292 5.4932 3.96967 7.21974 3.96967C8.94628 3.96967 10.3795 5.33292 11.2782 6.70042C11.4606 6.97798 11.5473 7.29821 11.3629 7.60559C11.36 7.6104 11.36 7.6104 11.3629 7.60559C10.4976 9.03919 8.96971 10.4697 7.21974 10.4697C5.49322 10.4697 4.05997 9.10649 3.16132 7.73903C2.94385 7.40809 2.93922 7.03839 3.16132 6.70042ZM9.81013 7.21971C9.20353 6.40895 8.30124 5.46967 7.21974 5.46967C6.13824 5.46967 5.23595 6.40895 4.62935 7.21971C5.23596 8.03045 6.13825 8.96967 7.21974 8.96967C8.30123 8.96967 9.20352 8.03045 9.81013 7.21971Z" fill="currentColor"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M7.21973 0.469673C10.9476 0.469673 13.9697 3.49175 13.9697 7.21967C13.9697 8.81345 13.4174 10.2782 12.4936 11.433L14.75 13.6893L13.6893 14.75L11.433 12.4936C10.2782 13.4173 8.81347 13.9697 7.21973 13.9697C3.4918 13.9697 0.469727 10.9476 0.469727 7.21967C0.469727 3.49175 3.4918 0.469673 7.21973 0.469673ZM12.4697 7.21967C12.4697 4.32018 10.1192 1.96967 7.21973 1.96967C4.32023 1.96967 1.96973 4.32018 1.96973 7.21967C1.96973 10.1192 4.32023 12.4697 7.21973 12.4697C10.1192 12.4697 12.4697 10.1192 12.4697 7.21967Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4549"><rect width="16" height="16" fill="currentColor" transform="matrix(1 0 0 -1 0 16)"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Monitor<span class="MuiBox-root css-61plmn">AML watchlist screening</span></span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/products/signal/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4675)"><path d="M11.5303 5.53026L10.4696 4.4696L6.99993 7.93927L5.53026 6.4696L4.4696 7.53026L6.99993 10.0606L11.5303 5.53026Z" fill="currentColor"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M8.3031 0.302702C8.10405 0.25294 7.89581 0.25294 7.69676 0.302704L2.19683 1.6777C1.64037 1.81682 1.25 2.3168 1.25 2.89038V11.2128C1.25 11.6574 1.48614 12.0685 1.87016 12.2925L7.37009 15.5009C7.75929 15.7279 8.24056 15.7279 8.62977 15.5009L14.1298 12.2925C14.5139 12.0685 14.75 11.6574 14.75 11.2128V2.89038C14.75 2.3168 14.3596 1.81682 13.8032 1.6777L8.3031 0.302702ZM2.75 3.08557L7.99993 1.77307L13.25 3.08558V11.0692L7.99994 14.1317L2.75 11.0692V3.08557Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4675"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Signal<span class="MuiBox-root css-61plmn">ACH payment risk platform</span></span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/products/identity/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4207)"><path fill-rule="evenodd" clip-rule="evenodd" d="M8 5.25C9.2255 5.25 10.25 6.2745 10.25 7.5C10.25 8.17642 9.93549 8.82874 9.41421 9.25001L10 9.25001C10.9665 9.25001 11.75 10.0335 11.75 11V12H10.25V11C10.25 10.8619 10.1381 10.75 10 10.75L6 10.75C5.86193 10.75 5.75 10.8619 5.75 11V12H4.25V11C4.25 10.0335 5.0335 9.25 6.00001 9.25L6.58578 9.25C6.06451 8.82873 5.75 8.17642 5.75 7.5C5.75 6.2745 6.7745 5.25 8 5.25ZM8 6.75C7.60218 6.75 7.25 7.10218 7.25 7.5C7.25 7.89782 7.60218 8.25 8 8.25C8.39782 8.25 8.75 7.89782 8.75 7.5C8.75 7.10218 8.39782 6.75 8 6.75Z" fill="currentColor"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M11.225 1.25H13.5C14.1904 1.25 14.75 1.80964 14.75 2.5V14C14.75 14.6904 14.1904 15.25 13.5 15.25H2.5C1.80964 15.25 1.25 14.6904 1.25 14V2.5C1.25 1.80964 1.80964 1.25 2.5 1.25H4.775C4.89082 0.67944 5.39526 0.25 6 0.25H10C10.6047 0.25 11.1092 0.67944 11.225 1.25ZM4.75 2.75H2.75V13.75H13.25V2.75H11.25V3C11.25 3.69036 10.6904 4.25 10 4.25H6C5.30964 4.25 4.75 3.69036 4.75 3V2.75ZM6.25 2.75V1.75H9.75V2.75H6.25Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4207"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Identity<span class="MuiBox-root css-61plmn">Bank account-holder information</span></span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/products/protect/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_20107_139)"><path d="M13.7902 7.99C13.8402 7.93 13.9002 7.87 13.9502 7.8C15.0002 6.4 15.2702 5.09 14.7102 4.12C14.1202 3.08 12.7002 2.71 10.9002 2.97C10.2202 1.28 9.19021 0.239998 8.00021 0.239998C6.81021 0.239998 5.78021 1.28 5.10021 2.97C3.30021 2.71 1.88021 3.08 1.29021 4.12C0.730206 5.09 1.00021 6.4 2.05021 7.8C2.10021 7.87 2.16021 7.93 2.21021 7.99C2.16021 8.05 2.10021 8.12 2.05021 8.18C1.00021 9.59 0.730206 10.9 1.29021 11.87C1.75021 12.67 2.71021 13.1 4.03021 13.1C4.29021 13.1 4.57021 13.08 4.86021 13.05C4.94021 13.04 5.02021 13.02 5.10021 13C5.77021 14.7 6.80021 15.74 8.00021 15.74C9.20021 15.74 10.2302 14.7 10.9002 13C10.9802 13.02 11.0602 13.04 11.1402 13.05C11.4302 13.08 11.7102 13.1 11.9702 13.1C13.2902 13.1 14.2502 12.67 14.7102 11.87C15.2702 10.9 15.0002 9.59 13.9502 8.18C13.9002 8.12 13.8402 8.05 13.7902 7.99ZM6.12021 4.73C6.25021 4.19 6.41021 3.71 6.59021 3.31C7.03021 2.3 7.56021 1.74 8.00021 1.74C8.44021 1.74 8.97021 2.3 9.41021 3.3C8.95021 3.44 8.48021 3.61 8.00021 3.81C7.39021 4.07 6.77021 4.38 6.14021 4.74H6.12021V4.73ZM2.59021 4.87C2.76021 4.56 3.27021 4.39 4.02021 4.39C4.21021 4.39 4.42021 4.4 4.65021 4.43C4.53021 4.9 4.44021 5.4 4.38021 5.92C4.30021 6.58 4.25021 7.27 4.25021 7.99C3.87021 7.63 3.53021 7.27 3.25021 6.9C3.25021 6.9 3.25021 6.89 3.24021 6.89C2.61021 6.04 2.36021 5.26 2.59021 4.87ZM4.69021 11.56H4.65021C3.61021 11.68 2.82021 11.51 2.59021 11.12C2.36021 10.72 2.61021 9.95 3.24021 9.1C3.59021 9.43 3.97021 9.75 4.38021 10.06C4.92021 10.47 5.49021 10.87 6.11021 11.23C6.12021 11.23 6.12021 11.24 6.12021 11.24C5.62021 11.39 5.14021 11.51 4.69021 11.56ZM9.42021 12.66C8.98021 13.67 8.44021 14.24 8.00021 14.24C7.56021 14.24 7.02021 13.67 6.58021 12.66C7.05021 12.53 7.52021 12.36 8.00021 12.16C8.62021 11.89 9.25021 11.6 9.87021 11.24H9.88021C9.75021 11.78 9.59021 12.26 9.42021 12.66ZM10.2002 9.26C9.86021 9.5 9.50021 9.72 9.12021 9.94C8.75021 10.16 8.37021 10.35 8.00021 10.53C7.63021 10.35 7.25021 10.16 6.88021 9.94C6.50021 9.72 6.14021 9.5 5.80021 9.26C5.77021 8.86 5.75021 8.43 5.75021 7.99C5.75021 7.55 5.77021 7.13 5.80021 6.72C6.14021 6.49 6.50021 6.26 6.88021 6.04C7.26021 5.82 7.63021 5.63 8.00021 5.46C8.37021 5.63 8.74021 5.82 9.12021 6.04C9.50021 6.26 9.86021 6.49 10.2002 6.72C10.2302 7.13 10.2502 7.55 10.2502 7.99C10.2502 8.43 10.2302 8.86 10.2002 9.26ZM13.4102 11.12C13.1902 11.51 12.3902 11.68 11.3502 11.56C11.4702 11.09 11.5602 10.59 11.6202 10.06C11.7002 9.41 11.7502 8.72 11.7502 7.99C12.1302 8.35 12.4702 8.71 12.7502 9.08C12.7502 9.08 12.7535 9.08667 12.7602 9.1C13.3902 9.95 13.6402 10.72 13.4102 11.12ZM12.7602 6.89C12.4102 6.55 12.0302 6.23 11.6202 5.92C11.0802 5.51 10.5102 5.11 9.89021 4.75C9.89021 4.75 9.88687 4.74666 9.88021 4.74H9.86021L9.88021 4.73C10.4202 4.58 10.9102 4.48 11.3502 4.43C11.5802 4.4 11.7902 4.39 11.9802 4.39C12.7302 4.39 13.2402 4.56 13.4102 4.87C13.6402 5.26 13.3902 6.04 12.7602 6.89Z" fill="currentColor"></path><path d="M9.00021 8C9.00021 8.55228 8.55249 9 8.00021 9C7.44792 9 7.00021 8.55228 7.00021 8C7.00021 7.44771 7.44792 7 8.00021 7C8.55249 7 9.00021 7.44771 9.00021 8Z" fill="currentColor"></path></g><defs><clipPath id="clip0_20107_139"><rect width="16" height="16" fill="currentColor" transform="matrix(1 0 0 -1 0 16)"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Protect<span class="MuiBox-root css-61plmn">Fraud intelligence system</span></span></div></a></li></ul></li><li class="css-1lwrckp"><button aria-expanded="false" aria-controls="main-menu-item-032-menu" class="css-1l2x1ad">Personal finance insights<span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-gjnjl3" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_3962)"><path d="M14.0303 6.53027L8 12.5605L1.96973 6.53027L3.03027 5.46973L8 10.4395L12.9697 5.46973L14.0303 6.53027Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_3962"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></button><ul id="main-menu-item-032-menu" class="css-tgr9go"><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/solutions/personal-financial-management/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4162)"><path d="M6.85706 10.775L11.3874 6.24462L10.3267 5.18396L6.85706 8.65363L5.10168 6.89825L4.04102 7.95891L6.85706 10.775Z" fill="currentColor"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M1.15715 1.26666C0.697518 1.16816 0.25 1.52994 0.25 2.00001V12.5C0.25 12.8537 0.49705 13.1593 0.842853 13.2334L7.84285 14.7334C7.94644 14.7556 8.05356 14.7556 8.15715 14.7334L15.1571 13.2334C15.5029 13.1593 15.75 12.8537 15.75 12.5V2.00001C15.75 1.52995 15.3025 1.16816 14.8429 1.26666L8 2.73298L1.15715 1.26666ZM1.75 11.8937V2.92775L7.84285 4.23336C7.94644 4.25556 8.05356 4.25556 8.15715 4.23336L14.25 2.92775V11.8937L8 13.233L1.75 11.8937Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4162"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Overview<span class="MuiBox-root css-61plmn">Explore the personal finance insights solution</span></span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/products/transactions/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4558)"><path d="M6 5.25V6.75H10V5.25H6Z" fill="currentColor"></path><path d="M6 4.25V2.75H10V4.25H6Z" fill="currentColor"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M8 0.25C3.7087 0.25 0.25 3.78072 0.25 8.11111C0.25 12.4415 3.7087 15.9722 8 15.9722C12.2913 15.9722 15.75 12.4415 15.75 8.11111C15.75 3.78072 12.2913 0.25 8 0.25ZM4.75 2.67703C5.69812 2.08855 6.81139 1.75 8 1.75C9.18861 1.75 10.3019 2.08855 11.25 2.67703V9.64682L8.6625 8.02963C8.25716 7.77629 7.74284 7.77629 7.3375 8.02963L4.75 9.64682V2.67703ZM3.25 3.97652C2.31558 5.08687 1.75 6.52978 1.75 8.11111C1.75 11.6354 4.55931 14.4722 8 14.4722C11.4407 14.4722 14.25 11.6354 14.25 8.11111C14.25 6.52978 13.6844 5.08687 12.75 3.97652V10.0979C12.75 11.0797 11.6701 11.6782 10.8375 11.1579L8 9.38444L5.1625 11.1579C4.32994 11.6782 3.25 11.0797 3.25 10.0979V3.97652Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4558"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Transactions<span class="MuiBox-root css-61plmn">Up to 24 months of categorized data</span></span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/products/investments/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4333)"><path d="M12.3785 6.06033L14.6102 2.93594L13.3896 2.06409L11.2921 5.00066L9.78164 4.09439C9.22281 3.75909 8.50014 3.90939 8.12135 4.4397L6.2921 7.00066L4.78164 6.09439C4.22281 5.75909 3.50014 5.90939 3.12135 6.4397L0.889648 9.56409L2.11025 10.4359L4.2078 7.49937L5.71826 8.40565C6.27709 8.74094 6.99975 8.59064 7.37855 8.06033L9.2078 5.49937L10.7183 6.40565C11.2771 6.74094 11.9998 6.59064 12.3785 6.06033Z" fill="currentColor"></path><path d="M15 12.25H1V13.75H15V12.25Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4333"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Investments<span class="MuiBox-root css-61plmn">Retirement, brokerage, and crypto data</span></span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/products/liabilities/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_3854)"><path d="M13.25 1V11.5H14.75V1H13.25Z" fill="currentColor"></path><path d="M1.25 11.5V8H2.75V11.5H1.25Z" fill="currentColor"></path><path d="M0 13.25H16V14.75H0V13.25Z" fill="currentColor"></path><path d="M6.75 3.5V11.5H5.25V3.5H6.75Z" fill="currentColor"></path><path d="M10.75 11.5V5.5H9.25V11.5H10.75Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_3854"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Liabilities<span class="MuiBox-root css-61plmn">Credit card and mortgage data</span></span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/products/enrich/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4738)"><path d="M10.9999 6C10.9999 6.55228 10.5522 7 9.99988 7C9.44759 7 8.99988 6.55228 8.99988 6C8.99988 5.44772 9.44759 5 9.99988 5C10.5522 5 10.9999 5.44772 10.9999 6Z" fill="currentColor"></path><path d="M5.96954 7.03033L8.96954 10.0303L10.0302 8.96967L7.0302 5.96967L5.96954 7.03033Z" fill="currentColor"></path><path d="M6.96954 12.0303L3.96954 9.03033L5.0302 7.96967L8.0302 10.9697L6.96954 12.0303Z" fill="currentColor"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M8.20703 1.24994C7.87551 1.24994 7.55757 1.38163 7.32315 1.61605L0.823148 8.11606C0.334992 8.60421 0.334992 9.39567 0.823148 9.88382L6.11604 15.1767C6.6042 15.6649 7.39565 15.6649 7.88381 15.1767L14.3838 8.67672C14.6182 8.4423 14.7499 8.12435 14.7499 7.79283V2.49994C14.7499 1.80958 14.1903 1.24994 13.4999 1.24994H8.20703ZM2.06058 8.99994L8.31059 2.74994H13.2499V7.68928L6.99992 13.9393L2.06058 8.99994Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4738"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Enrich<span class="MuiBox-root css-61plmn">Cleanse and categorize internal transactions</span></span></div></a></li></ul></li><li class="css-1lwrckp"><button aria-expanded="false" aria-controls="main-menu-item-042-menu" class="css-1l2x1ad">Credit underwriting<span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-gjnjl3" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_3962)"><path d="M14.0303 6.53027L8 12.5605L1.96973 6.53027L3.03027 5.46973L8 10.4395L12.9697 5.46973L14.0303 6.53027Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_3962"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></button><ul id="main-menu-item-042-menu" class="css-tgr9go"><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/industries/consumer-lending/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4027)"><path d="M11.5 7.75H7V6.25H11.5V7.75Z" fill="currentColor"></path><path d="M7 11.25H11.5V9.75H7V11.25Z" fill="currentColor"></path><path d="M6 7C6 7.55228 5.55228 8 5 8C4.44772 8 4 7.55228 4 7C4 6.44772 4.44772 6 5 6C5.55228 6 6 6.44772 6 7Z" fill="currentColor"></path><path d="M5 11.5C5.55228 11.5 6 11.0523 6 10.5C6 9.94771 5.55228 9.5 5 9.5C4.44772 9.5 4 9.94771 4 10.5C4 11.0523 4.44772 11.5 5 11.5Z" fill="currentColor"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M11.225 1.25H13.5C14.1904 1.25 14.75 1.80964 14.75 2.5V14C14.75 14.6904 14.1904 15.25 13.5 15.25H2.5C1.80964 15.25 1.25 14.6904 1.25 14V2.5C1.25 1.80964 1.80964 1.25 2.5 1.25H4.775C4.89082 0.67944 5.39526 0.25 6 0.25H10C10.6047 0.25 11.1092 0.67944 11.225 1.25ZM4.75 2.75H2.75V13.75H13.25V2.75H11.25V3C11.25 3.69036 10.6904 4.25 10 4.25H6C5.30964 4.25 4.75 3.69036 4.75 3V2.75ZM6.25 2.75V1.75H9.75V2.75H6.25Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4027"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Overview<span class="MuiBox-root css-61plmn">Explore our credit underwriting solutions</span></span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/check/income-and-underwriting/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4810)"><path d="M10.25 11V9H11.75V11H10.25Z" fill="currentColor"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M13.9014 5.25L10.7149 0.470276L9.5 1.25127V1.25H4C2.48122 1.25 1.25 2.48122 1.25 4V12C1.25 13.5188 2.48122 14.75 4 14.75H13.5C14.1904 14.75 14.75 14.1904 14.75 13.5V5.25H13.9014ZM12.0986 5.25L10.2851 2.52977L6.05364 5.25H12.0986ZM3.46577 5.13041C3.04266 4.9301 2.75 4.49923 2.75 4C2.75 3.30964 3.30964 2.75 4 2.75H7.16864L3.46577 5.13041ZM2.75 6.45015V12C2.75 12.6904 3.30964 13.25 4 13.25H13.25V6.75H4C3.54989 6.75 3.12503 6.64186 2.75 6.45015Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4810"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Income &amp; Underwriting<span class="MuiBox-root css-61plmn">Credit risk insights powered by Plaid Check</span></span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/check/lendscore/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4576)"><path d="M14.2487 7.99892C14.2487 4.54714 11.4505 1.74892 7.99874 1.74892C7.58037 1.74892 7.17232 1.78992 6.77816 1.8679L6.48706 0.396414C6.97658 0.299572 7.48212 0.248917 7.99874 0.248917C12.2789 0.248917 15.7487 3.71871 15.7487 7.99892C15.7487 12.2791 12.2789 15.7489 7.99874 15.7489C7.48212 15.7489 6.97658 15.6983 6.48706 15.6014L6.77816 14.1299C7.17233 14.2079 7.58037 14.2489 7.99874 14.2489C11.4505 14.2489 14.2487 11.4507 14.2487 7.99892Z" fill="currentColor"></path><path d="M3.69219 14.4431C2.84737 13.8775 2.12015 13.1503 1.55456 12.3055L2.80101 11.471C3.25753 12.1529 3.84478 12.7401 4.52667 13.1966L3.69219 14.4431Z" fill="currentColor"></path><path d="M1.55456 3.69237C2.12015 2.84754 2.84737 2.12033 3.69219 1.55473L4.52667 2.80119C3.84478 3.2577 3.25753 3.84495 2.80101 4.52685L1.55456 3.69237Z" fill="currentColor"></path><path d="M0.396239 9.5106C0.202556 8.53156 0.202556 7.46627 0.396239 6.48723L1.86772 6.77834C1.71177 7.56666 1.71177 8.43117 1.86772 9.2195L0.396239 9.5106Z" fill="currentColor"></path><path d="M6.99875 11.0594L11.5594 6.4988L10.4988 5.43813L6.99875 8.93812L5.49875 7.43812L4.43809 8.49878L6.99875 11.0594Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4576"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">LendScore<span class="MuiBox-root css-61plmn">A credit risk score powered by unique insights</span></span></div></a></li></ul></li><li class="css-1lwrckp"><button aria-expanded="false" aria-controls="main-menu-item-052-menu" class="css-1l2x1ad">Open finance<span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-gjnjl3" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_3962)"><path d="M14.0303 6.53027L8 12.5605L1.96973 6.53027L3.03027 5.46973L8 10.4395L12.9697 5.46973L14.0303 6.53027Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_3962"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></button><ul id="main-menu-item-052-menu" class="css-tgr9go"><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/use-cases/open-finance/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4252)"><path fill-rule="evenodd" clip-rule="evenodd" d="M8.33541 0.829241C8.12427 0.723668 7.87574 0.723668 7.6646 0.829241L0.664595 4.32924C0.252461 4.53531 0.123538 5.08144 0.400006 5.45006L1.75 7.25005V13.25H0V14.75H16V13.25H14.25V7.25007L15.6 5.45006C15.8765 5.08144 15.7475 4.53531 15.3354 4.32924L8.33541 0.829241ZM12.75 7.75006H10.75V13.25H12.75V7.75006ZM9.25 7.75006H6.75V13.25H9.25V7.75006ZM5.25 7.75006H3.25V13.25H5.25V7.75006ZM2.87501 6.25006L2.1392 5.26899L8.00001 2.33859L13.8608 5.26899L13.125 6.25006H2.87501Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4252"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Overview<span class="MuiBox-root css-61plmn">Explore open finance solution</span></span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/products/core-exchange/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4153)"><path fill-rule="evenodd" clip-rule="evenodd" d="M0.25 8V8.00104C0.250561 12.2808 3.72014 15.75 8 15.75C12.2802 15.75 15.75 12.2802 15.75 8C15.75 3.71979 12.2802 0.25 8 0.25C3.71979 0.25 0.25 3.71979 0.25 8ZM8 1.75C7.01975 1.75 6.09221 1.97567 5.26649 2.37789C5.9333 2.59919 6.73744 2.89503 7.24002 3.41334C8.02021 4.21794 7.4451 5.17746 6.62548 5.63925C6.21328 5.88455 5.79437 6.12455 5.40267 6.40231C5.75478 6.41526 6.10696 6.40001 6.45898 6.42114C6.89979 6.44758 7.48402 6.52873 7.96186 6.88367C8.49273 7.27799 8.75 7.89496 8.75 8.6737C8.75 9.86608 8.40196 11.1472 8.01095 12.264C7.80334 12.8977 7.08711 13.2408 6.46311 13.0053C5.73586 12.7307 5.36384 11.7087 4.88541 11.1976C4.45993 10.7431 4.04806 10.4999 3.625 10.4999C3.06706 10.4999 2.59166 10.429 2.18896 10.3055C3.1065 12.6162 5.36245 14.25 8 14.25C9.64587 14.25 11.1432 13.6138 12.2593 12.5739C12.5824 11.9153 12.5779 11.529 12.5148 11.3006C12.3154 10.5788 11.3622 10.214 10.8175 9.80584C10.4588 9.53698 9.96502 9.09703 9.90525 8.40406C9.7994 7.61387 10.0297 6.80969 10.6072 6.23217C11.0761 5.76333 11.712 5.49994 12.375 5.49994H13.7299C12.7655 3.29259 10.5629 1.75 8 1.75ZM14.1704 6.99994H12.375C11.8332 6.99994 11.3791 7.45061 11.375 7.99233C11.3929 8.68308 12.3905 9.02532 12.8712 9.40025C13.1909 9.64958 13.5335 9.97521 13.7666 10.4144C14.078 9.67156 14.25 8.85587 14.25 8C14.25 7.65961 14.2228 7.32557 14.1704 6.99994ZM1.75001 7.98643C1.75372 6.24126 2.4727 4.66403 3.62936 3.53233C4.43923 3.6414 5.21075 3.9346 5.93465 4.30609C5.30695 4.67921 4.59759 5.03037 4.07788 5.55454C3.63051 6.00575 3.54708 6.59865 3.82918 7.16286C4.51529 8.53507 6.1208 7.38467 7.06743 8.08782C7.70157 8.55886 6.9515 10.6163 6.781 11.1927C6.56294 10.8777 6.28725 10.5003 5.98052 10.1726C5.4457 9.6012 4.66319 8.99994 3.625 8.99994C2.96527 8.99994 1.84153 8.8415 1.75086 7.99524L1.75001 7.98643Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4153"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Core Exchange<span class="MuiBox-root css-61plmn">Industry-aligned API connectivity</span></span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/products/permissions-manager/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4792)"><path fill-rule="evenodd" clip-rule="evenodd" d="M2.25 4C2.25 2.48122 3.48122 1.25 5 1.25C6.51878 1.25 7.75 2.48122 7.75 4C7.75 5.51878 6.51878 6.75 5 6.75C3.48122 6.75 2.25 5.51878 2.25 4ZM5 2.75C4.30964 2.75 3.75 3.30964 3.75 4C3.75 4.69036 4.30964 5.25 5 5.25C5.69036 5.25 6.25 4.69036 6.25 4C6.25 3.30964 5.69036 2.75 5 2.75Z" fill="currentColor"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M11 4.25C9.48122 4.25 8.25 5.48122 8.25 7C8.25 8.51878 9.48122 9.75 11 9.75C12.5188 9.75 13.75 8.51878 13.75 7C13.75 5.48122 12.5188 4.25 11 4.25ZM9.75 7C9.75 6.30964 10.3096 5.75 11 5.75C11.6904 5.75 12.25 6.30964 12.25 7C12.25 7.69036 11.6904 8.25 11 8.25C10.3096 8.25 9.75 7.69036 9.75 7Z" fill="currentColor"></path><path d="M9 10.25C7.48122 10.25 6.25 11.4812 6.25 13V14H7.75V13C7.75 12.3096 8.30964 11.75 9 11.75H13C13.6904 11.75 14.25 12.3096 14.25 13V14H15.75V13C15.75 11.4812 14.5188 10.25 13 10.25H9Z" fill="currentColor"></path><path d="M3 7.25C1.48122 7.25 0.25 8.48122 0.25 10V11H1.75V10C1.75 9.30964 2.30964 8.75 3 8.75H7V7.25H3Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4792"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Permissions Manager<span class="MuiBox-root css-61plmn">Embeddable consumer permissions management</span></span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/products/app-directory/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4414)"><path d="M10 4.75H6V3.25H10V4.75Z" fill="currentColor"></path><path d="M9 12C9 12.5523 8.55228 13 8 13C7.44772 13 7 12.5523 7 12C7 11.4477 7.44772 11 8 11C8.55228 11 9 11.4477 9 12Z" fill="currentColor"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M2.75 1.4375C2.75 0.761886 3.30732 0.25 3.95 0.25H12.05C12.6927 0.25 13.25 0.761886 13.25 1.4375V14.5625C13.25 15.2381 12.6927 15.75 12.05 15.75H3.95C3.30732 15.75 2.75 15.2381 2.75 14.5625V1.4375ZM4.25 1.75V14.25H11.75V1.75H4.25Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4414"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">App Directory<span class="MuiBox-root css-61plmn">App insights to help manage risk and compliance</span></span></div></a></li></ul></li><li class="css-1lwrckp"><button aria-expanded="false" aria-controls="main-menu-item-062-menu" class="css-1l2x1ad">Onboarding<span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-gjnjl3" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_3962)"><path d="M14.0303 6.53027L8 12.5605L1.96973 6.53027L3.03027 5.46973L8 10.4395L12.9697 5.46973L14.0303 6.53027Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_3962"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></button><ul id="main-menu-item-062-menu" class="css-tgr9go"><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/solutions/onboarding/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4162)"><path d="M6.85706 10.775L11.3874 6.24462L10.3267 5.18396L6.85706 8.65363L5.10168 6.89825L4.04102 7.95891L6.85706 10.775Z" fill="currentColor"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M1.15715 1.26666C0.697518 1.16816 0.25 1.52994 0.25 2.00001V12.5C0.25 12.8537 0.49705 13.1593 0.842853 13.2334L7.84285 14.7334C7.94644 14.7556 8.05356 14.7556 8.15715 14.7334L15.1571 13.2334C15.5029 13.1593 15.75 12.8537 15.75 12.5V2.00001C15.75 1.52995 15.3025 1.16816 14.8429 1.26666L8 2.73298L1.15715 1.26666ZM1.75 11.8937V2.92775L7.84285 4.23336C7.94644 4.25556 8.05356 4.25556 8.15715 4.23336L14.25 2.92775V11.8937L8 13.233L1.75 11.8937Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4162"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Overview<span class="MuiBox-root css-61plmn">Explore onboarding solutions</span></span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/plaid-link/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4342)"><path d="M12.4945 6.89431L12.141 7.24787L13.2016 8.30853L13.5552 7.95497C15.2149 6.29524 15.2149 3.60429 13.5552 1.94456C11.8955 0.284836 9.20451 0.284836 7.54478 1.94456L6.13057 3.35878C4.47084 5.01851 4.47084 7.70946 6.13057 9.36919L7.19123 8.30853C6.11729 7.23458 6.11729 5.49338 7.19123 4.41944L8.60544 3.00522C9.67938 1.93128 11.4206 1.93128 12.4945 3.00522C13.5685 4.07917 13.5685 5.82037 12.4945 6.89431Z" fill="currentColor"></path><path d="M3.00516 12.5511C1.93122 11.4771 1.93122 9.73591 3.00516 8.66196L3.35872 8.30841L2.29806 7.24775L1.9445 7.6013C0.284775 9.26103 0.284775 11.952 1.9445 13.6117C3.60423 15.2714 6.29518 15.2714 7.95491 13.6117L9.36912 12.1975C11.0289 10.5378 11.0289 7.84682 9.36912 6.18709L8.30846 7.24775C9.38241 8.32169 9.38241 10.0629 8.30846 11.1368L6.89425 12.5511C5.82031 13.625 4.07911 13.625 3.00516 12.5511Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4342"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Link<span class="MuiBox-root css-61plmn">Industry-leading bank connections for 12,000+ institutions</span></span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/layer/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4513)"><path fill-rule="evenodd" clip-rule="evenodd" d="M7.62213 0.352166C7.85565 0.215945 8.14442 0.215945 8.37794 0.352166L14.3779 3.85217C14.865 4.13629 14.865 4.86371 14.3779 5.14783L12.4885 6.25L14.3779 7.35217C14.865 7.63629 14.865 8.36372 14.3779 8.64784L12.4885 9.75001L14.3779 10.8522C14.865 11.1363 14.865 11.8637 14.3779 12.1478L8.37794 15.6478C8.14442 15.7841 7.85565 15.7841 7.62213 15.6478L1.62213 12.1478C1.13507 11.8637 1.13507 11.1363 1.62213 10.8522L3.51156 9.75001L1.62213 8.64784C1.13507 8.36372 1.13507 7.63629 1.62213 7.35217L3.51157 6.25L1.62213 5.14783C1.13507 4.86371 1.13507 4.13629 1.62213 3.85217L7.62213 0.352166ZM5.00004 7.11828L3.48851 8.00001L8.00004 10.6317L12.5116 8.00001L11 7.11828L8.37794 8.64783C8.14442 8.78406 7.85565 8.78406 7.62213 8.64783L5.00004 7.11828ZM5.00004 10.6183L3.48851 11.5L8.00004 14.1317L12.5116 11.5L11 10.6183L8.37794 12.1478C8.14442 12.2841 7.85565 12.2841 7.62213 12.1478L5.00004 10.6183ZM3.48851 4.5L8.00004 7.13172L12.5116 4.5L8.00004 1.86828L3.48851 4.5Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4513"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Layer<span class="MuiBox-root css-61plmn">Capture identity, contact and bank info in a single click. </span></span></div></a></li></ul></li></ul></li><li class="css-1lwrckp"><button aria-expanded="false" aria-controls="main-menu-item-003-menu" class="css-1l2x1ad">Solutions<span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-gjnjl3" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_3962)"><path d="M14.0303 6.53027L8 12.5605L1.96973 6.53027L3.03027 5.46973L8 10.4395L12.9697 5.46973L14.0303 6.53027Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_3962"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></button><ul id="main-menu-item-003-menu" class="css-tgr9go"><li class="css-1lwrckp"><button aria-expanded="false" aria-controls=":Rjb5ad5m:-menu" class="css-1l2x1ad">Use cases<span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-gjnjl3" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_3962)"><path d="M14.0303 6.53027L8 12.5605L1.96973 6.53027L3.03027 5.46973L8 10.4395L12.9697 5.46973L14.0303 6.53027Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_3962"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></button><ul id=":Rjb5ad5m:-menu" class="css-tgr9go"><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/use-cases/open-finance/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4153)"><path fill-rule="evenodd" clip-rule="evenodd" d="M0.25 8V8.00104C0.250561 12.2808 3.72014 15.75 8 15.75C12.2802 15.75 15.75 12.2802 15.75 8C15.75 3.71979 12.2802 0.25 8 0.25C3.71979 0.25 0.25 3.71979 0.25 8ZM8 1.75C7.01975 1.75 6.09221 1.97567 5.26649 2.37789C5.9333 2.59919 6.73744 2.89503 7.24002 3.41334C8.02021 4.21794 7.4451 5.17746 6.62548 5.63925C6.21328 5.88455 5.79437 6.12455 5.40267 6.40231C5.75478 6.41526 6.10696 6.40001 6.45898 6.42114C6.89979 6.44758 7.48402 6.52873 7.96186 6.88367C8.49273 7.27799 8.75 7.89496 8.75 8.6737C8.75 9.86608 8.40196 11.1472 8.01095 12.264C7.80334 12.8977 7.08711 13.2408 6.46311 13.0053C5.73586 12.7307 5.36384 11.7087 4.88541 11.1976C4.45993 10.7431 4.04806 10.4999 3.625 10.4999C3.06706 10.4999 2.59166 10.429 2.18896 10.3055C3.1065 12.6162 5.36245 14.25 8 14.25C9.64587 14.25 11.1432 13.6138 12.2593 12.5739C12.5824 11.9153 12.5779 11.529 12.5148 11.3006C12.3154 10.5788 11.3622 10.214 10.8175 9.80584C10.4588 9.53698 9.96502 9.09703 9.90525 8.40406C9.7994 7.61387 10.0297 6.80969 10.6072 6.23217C11.0761 5.76333 11.712 5.49994 12.375 5.49994H13.7299C12.7655 3.29259 10.5629 1.75 8 1.75ZM14.1704 6.99994H12.375C11.8332 6.99994 11.3791 7.45061 11.375 7.99233C11.3929 8.68308 12.3905 9.02532 12.8712 9.40025C13.1909 9.64958 13.5335 9.97521 13.7666 10.4144C14.078 9.67156 14.25 8.85587 14.25 8C14.25 7.65961 14.2228 7.32557 14.1704 6.99994ZM1.75001 7.98643C1.75372 6.24126 2.4727 4.66403 3.62936 3.53233C4.43923 3.6414 5.21075 3.9346 5.93465 4.30609C5.30695 4.67921 4.59759 5.03037 4.07788 5.55454C3.63051 6.00575 3.54708 6.59865 3.82918 7.16286C4.51529 8.53507 6.1208 7.38467 7.06743 8.08782C7.70157 8.55886 6.9515 10.6163 6.781 11.1927C6.56294 10.8777 6.28725 10.5003 5.98052 10.1726C5.4457 9.6012 4.66319 8.99994 3.625 8.99994C2.96527 8.99994 1.84153 8.8415 1.75086 7.99524L1.75001 7.98643Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4153"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Open finance</span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/use-cases/fraud-and-risk-prevention/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4675)"><path d="M11.5303 5.53026L10.4696 4.4696L6.99993 7.93927L5.53026 6.4696L4.4696 7.53026L6.99993 10.0606L11.5303 5.53026Z" fill="currentColor"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M8.3031 0.302702C8.10405 0.25294 7.89581 0.25294 7.69676 0.302704L2.19683 1.6777C1.64037 1.81682 1.25 2.3168 1.25 2.89038V11.2128C1.25 11.6574 1.48614 12.0685 1.87016 12.2925L7.37009 15.5009C7.75929 15.7279 8.24056 15.7279 8.62977 15.5009L14.1298 12.2925C14.5139 12.0685 14.75 11.6574 14.75 11.2128V2.89038C14.75 2.3168 14.3596 1.81682 13.8032 1.6777L8.3031 0.302702ZM2.75 3.08557L7.99993 1.77307L13.25 3.08558V11.0692L7.99994 14.1317L2.75 11.0692V3.08557Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4675"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Fraud &amp; risk prevention</span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/use-cases/instant-onboarding-identity-verification/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4540)"><path d="M2.25 2.25H4.75V0.75H1.96429C1.29365 0.75 0.75 1.29365 0.75 1.96429V4.75H2.25V2.25Z" fill="currentColor"></path><path d="M13.75 2.25H11.25V0.75H14.0357C14.7063 0.75 15.25 1.29366 15.25 1.96429V4.75H13.75V2.25Z" fill="currentColor"></path><path d="M2.25 13.75V11.25H0.75V14.0357C0.75 14.7063 1.29366 15.25 1.96429 15.25H4.75V13.75H2.25Z" fill="currentColor"></path><path d="M13.75 13.75V11.25H15.25V14.0357C15.25 14.7063 14.7063 15.25 14.0357 15.25H11.25V13.75H13.75Z" fill="currentColor"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M5.5 6.25C5.5 4.86929 6.61929 3.75 8 3.75C9.38071 3.75 10.5 4.86929 10.5 6.25C10.5 7.0678 10.1073 7.79389 9.50024 8.25C11.0189 8.25013 12.25 9.4813 12.25 11V11.5H10.75V11C10.75 10.3096 10.1904 9.75 9.5 9.75H6.5C5.80964 9.75 5.25 10.3096 5.25 11V11.5H3.75V11C3.75 9.4813 4.98108 8.25013 6.49976 8.25C5.89267 7.79389 5.5 7.0678 5.5 6.25ZM8 5.25C7.44772 5.25 7 5.69772 7 6.25C7 6.80228 7.44772 7.25 8 7.25C8.55228 7.25 9 6.80228 9 6.25C9 5.69772 8.55228 5.25 8 5.25Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4540"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Onboarding &amp; identity verification</span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/use-cases/kyc-aml-compliance/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4792)"><path fill-rule="evenodd" clip-rule="evenodd" d="M2.25 4C2.25 2.48122 3.48122 1.25 5 1.25C6.51878 1.25 7.75 2.48122 7.75 4C7.75 5.51878 6.51878 6.75 5 6.75C3.48122 6.75 2.25 5.51878 2.25 4ZM5 2.75C4.30964 2.75 3.75 3.30964 3.75 4C3.75 4.69036 4.30964 5.25 5 5.25C5.69036 5.25 6.25 4.69036 6.25 4C6.25 3.30964 5.69036 2.75 5 2.75Z" fill="currentColor"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M11 4.25C9.48122 4.25 8.25 5.48122 8.25 7C8.25 8.51878 9.48122 9.75 11 9.75C12.5188 9.75 13.75 8.51878 13.75 7C13.75 5.48122 12.5188 4.25 11 4.25ZM9.75 7C9.75 6.30964 10.3096 5.75 11 5.75C11.6904 5.75 12.25 6.30964 12.25 7C12.25 7.69036 11.6904 8.25 11 8.25C10.3096 8.25 9.75 7.69036 9.75 7Z" fill="currentColor"></path><path d="M9 10.25C7.48122 10.25 6.25 11.4812 6.25 13V14H7.75V13C7.75 12.3096 8.30964 11.75 9 11.75H13C13.6904 11.75 14.25 12.3096 14.25 13V14H15.75V13C15.75 11.4812 14.5188 10.25 13 10.25H9Z" fill="currentColor"></path><path d="M3 7.25C1.48122 7.25 0.25 8.48122 0.25 10V11H1.75V10C1.75 9.30964 2.30964 8.75 3 8.75H7V7.25H3Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4792"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">KYC &amp; AML compliance</span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/check/income-and-underwriting/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4810)"><path d="M10.25 11V9H11.75V11H10.25Z" fill="currentColor"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M13.9014 5.25L10.7149 0.470276L9.5 1.25127V1.25H4C2.48122 1.25 1.25 2.48122 1.25 4V12C1.25 13.5188 2.48122 14.75 4 14.75H13.5C14.1904 14.75 14.75 14.1904 14.75 13.5V5.25H13.9014ZM12.0986 5.25L10.2851 2.52977L6.05364 5.25H12.0986ZM3.46577 5.13041C3.04266 4.9301 2.75 4.49923 2.75 4C2.75 3.30964 3.30964 2.75 4 2.75H7.16864L3.46577 5.13041ZM2.75 6.45015V12C2.75 12.6904 3.30964 13.25 4 13.25H13.25V6.75H4C3.54989 6.75 3.12503 6.64186 2.75 6.45015Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4810"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Income verification &amp; underwriting</span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/use-cases/inbound-bank-payments/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4360)"><path d="M8.00006 2.06065L4.53039 5.53032L3.46973 4.46966L7.11617 0.823209C7.60433 0.335053 8.39579 0.335054 8.88394 0.823209L15.1768 7.1161C15.665 7.60426 15.665 8.39571 15.1768 8.88387L8.88394 15.1768C8.39578 15.6649 7.60433 15.6649 7.11617 15.1768L3.46973 11.5303L4.53039 10.4697L8.00006 13.9393L13.9394 7.99999L8.00006 2.06065Z" fill="currentColor"></path><path d="M7.68939 8.75H1V7.25H7.6894L6.46973 6.03033L7.53039 4.96967L10.5607 8L7.53039 11.0303L6.46973 9.96967L7.68939 8.75Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4360"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Inbound bank payments</span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/use-cases/outbound-bank-payments/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4369)"><path d="M8.24974 2.06065L6.28007 4.03032L5.21941 2.96966L7.36586 0.823209C7.85401 0.335052 8.64547 0.335054 9.13362 0.823209L15.4265 7.1161C15.9147 7.60426 15.9147 8.39571 15.4265 8.88387L9.13362 15.1768C8.64546 15.6649 7.85401 15.6649 7.36586 15.1768L5.21941 13.0303L6.28007 11.9697L8.24974 13.9393L14.1891 7.99999L8.24974 2.06065Z" fill="currentColor"></path><path d="M3.06028 7.25H10.2497V8.75H3.06029L4.27995 9.96967L3.21929 11.0303L0.188965 8L3.21929 4.96967L4.27995 6.03033L3.06028 7.25Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4369"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Outbound bank payments</span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/use-cases/personal-financial-insights/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4162)"><path d="M6.85706 10.775L11.3874 6.24462L10.3267 5.18396L6.85706 8.65363L5.10168 6.89825L4.04102 7.95891L6.85706 10.775Z" fill="currentColor"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M1.15715 1.26666C0.697518 1.16816 0.25 1.52994 0.25 2.00001V12.5C0.25 12.8537 0.49705 13.1593 0.842853 13.2334L7.84285 14.7334C7.94644 14.7556 8.05356 14.7556 8.15715 14.7334L15.1571 13.2334C15.5029 13.1593 15.75 12.8537 15.75 12.5V2.00001C15.75 1.52995 15.3025 1.16816 14.8429 1.26666L8 2.73298L1.15715 1.26666ZM1.75 11.8937V2.92775L7.84285 4.23336C7.94644 4.25556 8.05356 4.25556 8.15715 4.23336L14.25 2.92775V11.8937L8 13.233L1.75 11.8937Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4162"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Personal financial management</span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/use-cases/business-finances/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4333)"><path d="M12.3785 6.06033L14.6102 2.93594L13.3896 2.06409L11.2921 5.00066L9.78164 4.09439C9.22281 3.75909 8.50014 3.90939 8.12135 4.4397L6.2921 7.00066L4.78164 6.09439C4.22281 5.75909 3.50014 5.90939 3.12135 6.4397L0.889648 9.56409L2.11025 10.4359L4.2078 7.49937L5.71826 8.40565C6.27709 8.74094 6.99975 8.59064 7.37855 8.06033L9.2078 5.49937L10.7183 6.40565C11.2771 6.74094 11.9998 6.59064 12.3785 6.06033Z" fill="currentColor"></path><path d="M15 12.25H1V13.75H15V12.25Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4333"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Business financial management</span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/use-cases/earned-wage-access/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4225)"><path d="M10.5 6.5C10.5 7.05228 10.0523 7.5 9.5 7.5C8.94771 7.5 8.5 7.05228 8.5 6.5C8.5 5.94771 8.94771 5.5 9.5 5.5C10.0523 5.5 10.5 5.94771 10.5 6.5Z" fill="currentColor"></path><path d="M11.75 4.5H13.25V8.5H11.75V4.5Z" fill="currentColor"></path><path d="M7.25 8.5V4.5L5.75 4.5V8.5H7.25Z" fill="currentColor"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M3.25 1.75H15.75V11.25H3.25V1.75ZM4.75 3.25V9.75H14.25V3.25H4.75Z" fill="currentColor"></path><path d="M1.75 12.75V5.5H0.25V14.25H13V12.75H1.75Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4225"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Earned wage access</span></div></a></li></ul></li><li class="css-1lwrckp"><button aria-expanded="false" aria-controls=":Rlb5ad5m:-menu" class="css-1l2x1ad">Industries<span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-gjnjl3" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_3962)"><path d="M14.0303 6.53027L8 12.5605L1.96973 6.53027L3.03027 5.46973L8 10.4395L12.9697 5.46973L14.0303 6.53027Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_3962"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></button><ul id=":Rlb5ad5m:-menu" class="css-tgr9go"><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/industries/ai/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_28278_502)"><path d="M12.2125 4.03123L12.5938 4.98448C12.7405 5.35116 13.2595 5.35116 13.4062 4.98448L13.7875 4.03123C13.832 3.92006 13.9201 3.83197 14.0312 3.7875L14.9845 3.40621C15.3512 3.25953 15.3512 2.74046 14.9845 2.59379L14.0312 2.21249C13.9201 2.16802 13.832 2.07993 13.7875 1.96876L13.4062 1.01552C13.2595 0.648829 12.7405 0.648829 12.5938 1.01552L12.2125 1.96876C12.168 2.07993 12.0799 2.16802 11.9688 2.21249L11.0155 2.59379C10.6488 2.74046 10.6488 3.25953 11.0155 3.40621L11.9688 3.7875C12.0799 3.83197 12.168 3.92006 12.2125 4.03123Z" fill="currentColor"></path><path d="M7 1.25C7.33436 1.25 7.62827 1.47163 7.7207 1.79297C8.28575 3.75733 8.75865 4.80643 9.47656 5.52441C10.1945 6.24236 11.2433 6.71504 13.207 7.27929C13.5284 7.37164 13.75 7.66559 13.75 8C13.75 8.33436 13.5284 8.62827 13.207 8.7207C11.2427 9.28575 10.1936 9.75865 9.47559 10.4766C8.75764 11.1945 8.28496 12.2433 7.7207 14.207C7.62835 14.5284 7.3344 14.7499 7 14.75C6.66564 14.75 6.37173 14.5284 6.2793 14.207C5.71425 12.2427 5.24135 11.1936 4.52344 10.4756C3.80549 9.75763 2.75667 9.28496 0.792969 8.7207C0.47157 8.62835 0.250046 8.3344 0.25 8C0.249999 7.66564 0.471629 7.37172 0.792969 7.27929C2.75733 6.71425 3.80643 6.24134 4.52441 5.52343C5.24236 4.80548 5.71504 3.75667 6.2793 1.79297L6.32324 1.67773C6.4459 1.41989 6.7073 1.25004 7 1.25ZM7 4.34375C6.62319 5.25263 6.18507 5.98388 5.58496 6.58398C4.98475 7.18414 4.25316 7.62188 3.34375 7.99902C4.25279 8.37586 4.9838 8.81485 5.58398 9.41504C6.18397 10.0151 6.62196 10.7462 6.99902 11.6553C7.37579 10.7466 7.81504 10.016 8.41504 9.41601C9.01514 8.81595 9.74609 8.37709 10.6553 8C9.74678 7.62326 9.01594 7.18488 8.41602 6.58496C7.81578 5.98467 7.37717 5.25332 7 4.34375Z" fill="currentColor"></path></g><defs><clipPath id="clip0_28278_502"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">AI companies</span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/industries/auto/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4144)"><path fill-rule="evenodd" clip-rule="evenodd" d="M8 4.75C6.20507 4.75 4.75 6.20507 4.75 8C4.75 9.79493 6.20507 11.25 8 11.25C9.79493 11.25 11.25 9.79493 11.25 8C11.25 6.20507 9.79493 4.75 8 4.75ZM6.25 8C6.25 7.0335 7.0335 6.25 8 6.25C8.9665 6.25 9.75 7.0335 9.75 8C9.75 8.9665 8.9665 9.75 8 9.75C7.0335 9.75 6.25 8.9665 6.25 8Z" fill="currentColor"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M10.2858 0.964085C10.2858 0.431635 9.85415 0 9.3217 0H6.67844C6.146 0 5.71436 0.431635 5.71436 0.964084L5.71436 1.30157C5.71436 2.69038 4.17147 3.52328 3.01039 2.76127C2.60936 2.49807 2.0711 2.60775 1.80502 3.00687L0.554775 4.88224C0.248422 5.34176 0.372596 5.96263 0.832125 6.26899C2.11144 7.12187 2.08534 8.89554 0.832125 9.73101C0.372596 10.0374 0.248422 10.6582 0.554775 11.1178L1.80327 12.9905C2.06976 13.3902 2.60984 13.4983 3.00957 13.2318C4.16573 12.461 5.71436 13.2898 5.71436 14.6793L5.71436 15.035C5.71436 15.5679 6.14642 16 6.6794 16H9.32075C9.85373 16 10.2858 15.5679 10.2858 15.035V14.6793C10.2858 13.2898 11.8344 12.461 12.9906 13.2318C13.3903 13.4983 13.9304 13.3902 14.1969 12.9905L15.4454 11.1178C15.7517 10.6582 15.6276 10.0374 15.168 9.73101C13.8887 8.87813 13.9148 7.10446 15.168 6.26899C15.6276 5.96263 15.7517 5.34176 15.4454 4.88224L14.1951 3.00687C13.929 2.60775 13.3908 2.49807 12.9898 2.76127C11.8287 3.52328 10.2858 2.69038 10.2858 1.30158V0.964085ZM2.7398 4.30886C4.74586 5.14247 7.07849 3.7511 7.20865 1.5H8.7915C8.92166 3.7511 11.2543 5.14247 13.2603 4.30886L13.931 5.31478C12.2591 6.70364 12.2591 9.29636 13.931 10.6852L13.2655 11.6834C11.257 10.8377 8.90876 12.235 8.79045 14.5H7.2097C7.09139 12.235 4.74312 10.8377 2.73463 11.6834L2.06919 10.6852C3.74106 9.29636 3.74106 6.70365 2.06919 5.31478L2.7398 4.30886Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4144"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Auto</span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/industries/banks-credit-unions/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4252)"><path fill-rule="evenodd" clip-rule="evenodd" d="M8.33541 0.829241C8.12427 0.723668 7.87574 0.723668 7.6646 0.829241L0.664595 4.32924C0.252461 4.53531 0.123538 5.08144 0.400006 5.45006L1.75 7.25005V13.25H0V14.75H16V13.25H14.25V7.25007L15.6 5.45006C15.8765 5.08144 15.7475 4.53531 15.3354 4.32924L8.33541 0.829241ZM12.75 7.75006H10.75V13.25H12.75V7.75006ZM9.25 7.75006H6.75V13.25H9.25V7.75006ZM5.25 7.75006H3.25V13.25H5.25V7.75006ZM2.87501 6.25006L2.1392 5.26899L8.00001 2.33859L13.8608 5.26899L13.125 6.25006H2.87501Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4252"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Banks &amp; credit unions</span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/industries/billing-recurring-payments/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4594)"><path d="M3.25 1H1.75V6.25H7V4.75H4.5358C5.40302 3.82589 6.6344 3.25 8.00002 3.25C10.6234 3.25 12.75 5.37665 12.75 8H14.25C14.25 4.54822 11.4518 1.75 8.00002 1.75C6.09838 1.75 4.39551 2.59973 3.25 3.93791V1Z" fill="currentColor"></path><path d="M14.25 15H12.75V12.0622C11.6045 13.4003 9.90168 14.25 8.0001 14.25C4.54832 14.25 1.7501 11.4518 1.7501 8H3.2501C3.2501 10.6234 5.37675 12.75 8.0001 12.75C9.36572 12.75 10.5971 12.1741 11.4643 11.25H9V9.75H14.25V15Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4594"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Billing &amp; recurring payments</span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/industries/consumer-lending/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4027)"><path d="M11.5 7.75H7V6.25H11.5V7.75Z" fill="currentColor"></path><path d="M7 11.25H11.5V9.75H7V11.25Z" fill="currentColor"></path><path d="M6 7C6 7.55228 5.55228 8 5 8C4.44772 8 4 7.55228 4 7C4 6.44772 4.44772 6 5 6C5.55228 6 6 6.44772 6 7Z" fill="currentColor"></path><path d="M5 11.5C5.55228 11.5 6 11.0523 6 10.5C6 9.94771 5.55228 9.5 5 9.5C4.44772 9.5 4 9.94771 4 10.5C4 11.0523 4.44772 11.5 5 11.5Z" fill="currentColor"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M11.225 1.25H13.5C14.1904 1.25 14.75 1.80964 14.75 2.5V14C14.75 14.6904 14.1904 15.25 13.5 15.25H2.5C1.80964 15.25 1.25 14.6904 1.25 14V2.5C1.25 1.80964 1.80964 1.25 2.5 1.25H4.775C4.89082 0.67944 5.39526 0.25 6 0.25H10C10.6047 0.25 11.1092 0.67944 11.225 1.25ZM4.75 2.75H2.75V13.75H13.25V2.75H11.25V3C11.25 3.69036 10.6904 4.25 10 4.25H6C5.30964 4.25 4.75 3.69036 4.75 3V2.75ZM6.25 2.75V1.75H9.75V2.75H6.25Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4027"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Consumer lending</span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/industries/gaming/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_19852_33149)"><path d="M6.5 5.5C6.5 6.05228 6.05228 6.5 5.5 6.5C4.94772 6.5 4.5 6.05228 4.5 5.5C4.5 4.94772 4.94772 4.5 5.5 4.5C6.05228 4.5 6.5 4.94772 6.5 5.5Z" fill="currentColor"></path><path d="M11.5 5.5C11.5 6.05228 11.0523 6.5 10.5 6.5C9.94771 6.5 9.5 6.05228 9.5 5.5C9.5 4.94772 9.94771 4.5 10.5 4.5C11.0523 4.5 11.5 4.94772 11.5 5.5Z" fill="currentColor"></path><path d="M6.5 10.5C6.5 11.0523 6.05228 11.5 5.5 11.5C4.94772 11.5 4.5 11.0523 4.5 10.5C4.5 9.94771 4.94772 9.5 5.5 9.5C6.05228 9.5 6.5 9.94771 6.5 10.5Z" fill="currentColor"></path><path d="M11.5 10.5C11.5 11.0523 11.0523 11.5 10.5 11.5C9.94771 11.5 9.5 11.0523 9.5 10.5C9.5 9.94771 9.94771 9.5 10.5 9.5C11.0523 9.5 11.5 9.94771 11.5 10.5Z" fill="currentColor"></path><path d="M9 8C9 8.55228 8.55228 9 8 9C7.44772 9 7 8.55228 7 8C7 7.44772 7.44772 7 8 7C8.55228 7 9 7.44772 9 8Z" fill="currentColor"></path><path d="M2.75 13.25H13.25V2.75H2.75V13.25ZM14.75 13.5C14.75 14.1904 14.1904 14.75 13.5 14.75H2.5C1.80964 14.75 1.25 14.1904 1.25 13.5V2.5C1.25 1.80964 1.80964 1.25 2.5 1.25H13.5C14.1904 1.25 14.75 1.80964 14.75 2.5V13.5Z" fill="currentColor"></path></g><defs><clipPath id="clip0_19852_33149"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Gaming</span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/industries/government-public-sector/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_3908)"><path d="M13 5.75H9V4.25H13V5.75Z" fill="currentColor"></path><path d="M13 8.75H9V7.25H13V8.75Z" fill="currentColor"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M6.25 1.5C6.25 0.809643 6.80964 0.25 7.5 0.25H14.5C15.1904 0.25 15.75 0.809644 15.75 1.5V14.5C15.75 15.1904 15.1904 15.75 14.5 15.75H1.5C0.809645 15.75 0.25 15.1904 0.25 14.5V7.5C0.25 6.80964 0.809644 6.25 1.5 6.25H6.25V1.5ZM6.25 7.75H1.75V14.25H6.25V7.75ZM7.75 14.25H10.25V12H11.75V14.25H14.25V1.75H7.75V14.25Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_3908"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Government &amp; public sector</span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/industries/healthcare/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_27381_201)"><g clip-path="url(#clip1_27381_201)"><path d="M12.2497 11.2498H14.4997V12.7498H12.2497V14.9998H10.7497V12.7498H8.49971V11.2498H10.7497V8.99979H12.2497V11.2498Z" fill="currentColor"></path><path d="M1.82784 2.94901C3.46149 1.28992 6.13753 1.28995 7.7712 2.94901L7.99874 3.18045L8.20772 2.96952C9.85235 1.29928 12.5465 1.29931 14.1911 2.96952C15.7809 4.58428 15.8027 7.16935 14.2399 8.81034L14.0427 9.01737C13.757 9.31708 13.282 9.32834 12.9821 9.04276C12.6825 8.75706 12.6712 8.28204 12.9567 7.98221L13.154 7.77518C14.158 6.72046 14.1445 5.05896 13.1228 4.02127C12.0658 2.94792 10.3341 2.94802 9.27706 4.02127L7.99971 5.31912L6.70284 4.00174C5.65679 2.93947 3.94322 2.93945 2.89718 4.00174C1.87398 5.04105 1.87405 6.70848 2.89718 7.74784L8.53389 13.4734C8.82441 13.7685 8.82095 14.2433 8.52608 14.534C8.231 14.8245 7.75617 14.8211 7.46554 14.5262L1.82784 8.80057C0.229952 7.17739 0.229874 4.57214 1.82784 2.94901Z" fill="currentColor"></path></g></g><defs><clipPath id="clip0_27381_201"><rect width="16" height="16" fill="currentColor"></rect></clipPath><clipPath id="clip1_27381_201"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Healthcare</span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/industries/insurance/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_27124_82)"><path fill-rule="evenodd" clip-rule="evenodd" d="M8 0.25C12.2802 0.25 15.75 3.71979 15.75 8V8.99902C15.7498 9.55708 15.1621 9.91943 14.6631 9.66992L13.7168 9.19727C13.2392 8.95849 12.6823 8.93463 12.1865 9.13281L11.1504 9.54785C10.7332 9.71474 10.2668 9.71474 9.84961 9.54785L9.20703 9.29102C9.05782 9.23133 8.90458 9.18611 8.75 9.14941V13.5C8.75 14.7426 7.74264 15.75 6.5 15.75C5.25736 15.75 4.25 14.7426 4.25 13.5V13.1338H5.75V13.5C5.75 13.9142 6.08579 14.25 6.5 14.25C6.91421 14.25 7.25 13.9142 7.25 13.5V9.14941C7.09542 9.18611 6.94218 9.23133 6.79297 9.29102L6.15039 9.54785C5.73317 9.71474 5.26683 9.71474 4.84961 9.54785L3.81348 9.13281C3.31772 8.93463 2.76075 8.95849 2.2832 9.19727L1.33691 9.66992C0.838093 9.91933 0.250223 9.5573 0.25 8.99902V8C0.25 3.71979 3.71979 0.25 8 0.25ZM8 1.95703C6.96873 2.83733 6.54781 3.69086 6.36133 4.64355C6.25028 5.21114 6.21875 5.83513 6.21875 6.5625C6.21875 6.92523 6.22652 7.3044 6.23438 7.71191C6.23555 7.77286 6.23518 7.8344 6.23633 7.89648C7.368 7.44407 8.63096 7.44429 9.7627 7.89648C9.76384 7.8344 9.76445 7.77286 9.76562 7.71191C9.77348 7.3044 9.78125 6.92523 9.78125 6.5625C9.78125 5.83513 9.74972 5.21114 9.63867 4.64355C9.45219 3.69086 9.03127 2.83733 8 1.95703ZM10.1943 2.14746C10.6733 2.84074 10.9572 3.56867 11.1113 4.35645C11.2502 5.06649 11.2812 5.80393 11.2812 6.5625C11.2812 6.94276 11.2734 7.33804 11.2656 7.74121C11.2647 7.78922 11.2646 7.8374 11.2637 7.88574L11.6289 7.74023C12.4734 7.40244 13.4165 7.42176 14.2441 7.78809C14.1579 5.20067 12.4999 3.01269 10.1943 2.14746ZM5.80469 2.14746C3.49922 3.01288 1.8411 5.20093 1.75488 7.78809C2.58275 7.42142 3.52632 7.40232 4.37109 7.74023L4.73535 7.88574C4.73444 7.83741 4.7353 7.78921 4.73438 7.74121C4.7266 7.33804 4.71875 6.94276 4.71875 6.5625C4.71875 5.80393 4.7498 5.06649 4.88867 4.35645C5.04277 3.56885 5.32595 2.8406 5.80469 2.14746Z" fill="currentColor"></path></g><defs><clipPath id="clip0_27124_82"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Insurance</span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/industries/mortgage/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4288)"><path d="M4.99977 5.5C5.55206 5.5 5.99977 5.05228 5.99977 4.5C5.99977 3.94772 5.55206 3.5 4.99977 3.5C4.44749 3.5 3.99977 3.94772 3.99977 4.5C3.99977 5.05228 4.44749 5.5 4.99977 5.5Z" fill="currentColor"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M2.13782 1.64124C0.282835 3.49623 0.282835 6.50377 2.13782 8.35876C3.06518 9.28611 4.28212 9.75 5.49659 9.75H6.68593L8.24659 11.3107V12.5C8.24659 13.1904 8.80623 13.75 9.49659 13.75L10.2466 13.75V14.5C10.2466 15.1904 10.8062 15.75 11.4966 15.75L14.4997 15.75C15.1901 15.75 15.7497 15.1904 15.7497 14.5V12.2072C15.7497 11.8755 15.6179 11.5575 15.3833 11.3231L10.2466 6.18922V5C10.2466 3.78553 9.78269 2.56859 8.85534 1.64124C7.00035 -0.213748 3.99282 -0.213748 2.13782 1.64124ZM3.19848 7.2981C1.92928 6.02889 1.92928 3.97111 3.19848 2.7019C4.46769 1.4327 6.52548 1.4327 7.79468 2.7019C8.42943 3.33665 8.74658 4.16709 8.74658 5V6.29281C8.74658 6.62445 8.87838 6.9425 9.11295 7.17694L14.2497 12.3108L14.2497 14.25H11.7466V13.5C11.7466 12.8096 11.1869 12.25 10.4966 12.25L9.74659 12.25V11.2071C9.74659 10.8756 9.61489 10.5576 9.38047 10.3232L7.67336 8.61612C7.43894 8.3817 7.121 8.25 6.78948 8.25H5.49659C4.66368 8.25 3.83324 7.93285 3.19848 7.2981Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4288"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Mortgage</span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/industries/platforms-marketplaces/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4513)"><path fill-rule="evenodd" clip-rule="evenodd" d="M7.62213 0.352166C7.85565 0.215945 8.14442 0.215945 8.37794 0.352166L14.3779 3.85217C14.865 4.13629 14.865 4.86371 14.3779 5.14783L12.4885 6.25L14.3779 7.35217C14.865 7.63629 14.865 8.36372 14.3779 8.64784L12.4885 9.75001L14.3779 10.8522C14.865 11.1363 14.865 11.8637 14.3779 12.1478L8.37794 15.6478C8.14442 15.7841 7.85565 15.7841 7.62213 15.6478L1.62213 12.1478C1.13507 11.8637 1.13507 11.1363 1.62213 10.8522L3.51156 9.75001L1.62213 8.64784C1.13507 8.36372 1.13507 7.63629 1.62213 7.35217L3.51157 6.25L1.62213 5.14783C1.13507 4.86371 1.13507 4.13629 1.62213 3.85217L7.62213 0.352166ZM5.00004 7.11828L3.48851 8.00001L8.00004 10.6317L12.5116 8.00001L11 7.11828L8.37794 8.64783C8.14442 8.78406 7.85565 8.78406 7.62213 8.64783L5.00004 7.11828ZM5.00004 10.6183L3.48851 11.5L8.00004 14.1317L12.5116 11.5L11 10.6183L8.37794 12.1478C8.14442 12.2841 7.85565 12.2841 7.62213 12.1478L5.00004 10.6183ZM3.48851 4.5L8.00004 7.13172L12.5116 4.5L8.00004 1.86828L3.48851 4.5Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4513"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Platforms &amp; marketplaces</span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/industries/property-management/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4198)"><path fill-rule="evenodd" clip-rule="evenodd" d="M7.46973 0.46973C7.76262 0.176838 8.23749 0.176838 8.53038 0.46973L15.5304 7.46969L14.4697 8.53036L13.75 7.81064V13.4999C13.75 13.9142 13.4142 14.2499 13 14.2499H3C2.58579 14.2499 2.25 13.9142 2.25 13.4999V7.81075L1.53038 8.53036L0.469727 7.46969L7.46973 0.46973ZM8.00006 2.06072L12.25 6.31064V12.7499H10.5V10.75C10.5 9.36929 9.38071 8.25 8 8.25C6.61929 8.25 5.5 9.36929 5.5 10.75V12.7499H3.75V6.31075L8.00006 2.06072ZM7 12.7499H9V10.75C9 10.1977 8.55228 9.75 8 9.75C7.44772 9.75 7 10.1977 7 10.75V12.7499Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4198"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Property management</span></div></a></li></ul></li></ul></li><li class="css-1lwrckp"><button aria-expanded="false" aria-controls="main-menu-item-005-menu" class="css-1l2x1ad">Developers<span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-gjnjl3" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_3962)"><path d="M14.0303 6.53027L8 12.5605L1.96973 6.53027L3.03027 5.46973L8 10.4395L12.9697 5.46973L14.0303 6.53027Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_3962"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></button><ul id="main-menu-item-005-menu" class="css-tgr9go"><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/docs/quickstart/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_3998)"><path d="M7.46997 3.03027L12.4397 8L7.46997 12.9697L8.53052 14.0303L14.5608 8L8.53052 1.96973L7.46997 3.03027Z" fill="currentColor"></path><path d="M2.46997 3.03027L7.4397 8L2.46997 12.9697L3.53052 14.0303L9.56079 8L3.53052 1.96973L2.46997 3.03027Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_3998"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Quickstart</span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/docs/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4090)"><path d="M1.73717 0.788489L7.5 2.70943L13.2628 0.788489C13.7405 0.629277 14.25 0.996529 14.25 1.5V4C14.25 4.41422 13.9142 4.75 13.5 4.75C13.0858 4.75 12.75 4.41422 12.75 4V2.54057L7.73717 4.21151C7.58322 4.26283 7.41678 4.26283 7.26283 4.21151L2.25 2.54057V11.8286L7.75225 13.7937C8.14233 13.933 8.34562 14.3622 8.20631 14.7523C8.06699 15.1423 7.63783 15.3456 7.24775 15.2063L1.24775 13.0635C0.949253 12.9568 0.75 12.6741 0.75 12.3571V1.5C0.75 0.996529 1.25953 0.629277 1.73717 0.788489Z" fill="currentColor"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M5.75 9C5.75 6.65279 7.65279 4.75 10 4.75C12.3472 4.75 14.25 6.65279 14.25 9C14.25 9.90269 13.9686 10.7397 13.4887 11.4279L15.0304 12.9697L13.9697 14.0303L12.428 12.4886C11.7397 12.9685 10.9027 13.25 10 13.25C7.65279 13.25 5.75 11.3472 5.75 9ZM10 6.25C8.48122 6.25 7.25 7.48121 7.25 9C7.25 10.5188 8.48122 11.75 10 11.75C11.5188 11.75 12.75 10.5188 12.75 9C12.75 7.48121 11.5188 6.25 10 6.25Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4090"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">API documentation</span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/docs/api/libraries/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4306)"><path fill-rule="evenodd" clip-rule="evenodd" d="M0.25 3C0.25 2.30964 0.809644 1.75 1.5 1.75H4C4.17778 1.75 4.34688 1.78711 4.5 1.85401C4.65312 1.78711 4.82222 1.75 5 1.75H7.5C8.02471 1.75 8.47392 2.0733 8.65927 2.53157L10.8406 1.90834C11.4771 1.72647 12.1451 2.07245 12.3638 2.69731L15.5329 11.7518C15.7704 12.4305 15.3878 13.1692 14.6965 13.3667L12.1596 14.0915C11.5231 14.2734 10.8551 13.9274 10.6364 13.3025L8.75 7.91277V13C8.75 13.6904 8.19036 14.25 7.5 14.25H5C4.82222 14.25 4.65312 14.2129 4.5 14.146C4.34689 14.2129 4.17778 14.25 4 14.25H1.5C0.809644 14.25 0.25 13.6904 0.25 13V3ZM3.75 12.75V3.25H1.75V12.75H3.75ZM5.25 12.75H7.25V3.25H5.25V12.75ZM11.0259 3.41541L8.97067 4.00263L11.9743 12.5844L14.0296 11.9972L11.0259 3.41541Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4306"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Libraries</span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="https://github.com/plaid"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4819)"><path fill-rule="evenodd" clip-rule="evenodd" d="M8 15.75C12.2802 15.75 15.75 12.2802 15.75 8C15.75 3.71979 12.2802 0.25 8 0.25C3.71979 0.25 0.25 3.71979 0.25 8C0.25 12.2802 3.71979 15.75 8 15.75ZM8 1.75C6.99439 1.75 6.55997 4.62441 6.45945 5.25H9.54055C9.44003 4.62441 9.00562 1.75 8 1.75ZM4.94201 5.25H2.38595C3.08176 3.83219 4.29885 2.71656 5.78732 2.15298C5.33887 3.12737 5.09594 4.19319 4.94201 5.25ZM4.78826 6.75H1.87502C1.71105 7.55777 1.71105 8.44222 1.87502 9.25H4.78826C4.73781 8.4349 4.73781 7.5651 4.78826 6.75ZM4.94201 10.75H2.38595C3.08176 12.1678 4.29885 13.2834 5.78732 13.847C5.33887 12.8726 5.09594 11.8068 4.94201 10.75ZM6.45945 10.75H9.54055C9.44003 11.3756 9.00562 14.25 8 14.25C6.99439 14.25 6.55997 11.3756 6.45945 10.75ZM9.70864 9.25H6.29136C6.23724 8.44328 6.23724 7.55672 6.29136 6.75H9.70864C9.76276 7.55672 9.76276 8.44328 9.70864 9.25ZM11.058 10.75C10.9041 11.8068 10.6611 12.8726 10.2127 13.847C11.7011 13.2834 12.9182 12.1678 13.6141 10.75H11.058ZM14.125 9.25H11.2117C11.2622 8.4349 11.2622 7.5651 11.2117 6.75H14.125C14.2889 7.55777 14.2889 8.44222 14.125 9.25ZM10.2127 2.15298C11.7011 2.71655 12.9182 3.83219 13.6141 5.25H11.058C10.9041 4.19319 10.6611 3.12737 10.2127 2.15298Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4819"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">GitHub</span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/demo/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4414)"><path d="M10 4.75H6V3.25H10V4.75Z" fill="currentColor"></path><path d="M9 12C9 12.5523 8.55228 13 8 13C7.44772 13 7 12.5523 7 12C7 11.4477 7.44772 11 8 11C8.55228 11 9 11.4477 9 12Z" fill="currentColor"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M2.75 1.4375C2.75 0.761886 3.30732 0.25 3.95 0.25H12.05C12.6927 0.25 13.25 0.761886 13.25 1.4375V14.5625C13.25 15.2381 12.6927 15.75 12.05 15.75H3.95C3.30732 15.75 2.75 15.2381 2.75 14.5625V1.4375ZM4.25 1.75V14.25H11.75V1.75H4.25Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4414"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Product demos</span></div></a></li></ul></li><li class="css-1lwrckp"><button aria-expanded="false" aria-controls="main-menu-item-006-menu" class="css-1l2x1ad">Resources<span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-gjnjl3" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_3962)"><path d="M14.0303 6.53027L8 12.5605L1.96973 6.53027L3.03027 5.46973L8 10.4395L12.9697 5.46973L14.0303 6.53027Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_3962"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></button><ul id="main-menu-item-006-menu" class="css-tgr9go"><li class="css-1lwrckp"><button aria-expanded="false" aria-controls=":Rjb9ad5m:-menu" class="css-1l2x1ad">For builders<span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-gjnjl3" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_3962)"><path d="M14.0303 6.53027L8 12.5605L1.96973 6.53027L3.03027 5.46973L8 10.4395L12.9697 5.46973L14.0303 6.53027Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_3962"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></button><ul id=":Rjb9ad5m:-menu" class="css-tgr9go"><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/whats-new/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4162)"><path d="M6.85706 10.775L11.3874 6.24462L10.3267 5.18396L6.85706 8.65363L5.10168 6.89825L4.04102 7.95891L6.85706 10.775Z" fill="currentColor"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M1.15715 1.26666C0.697518 1.16816 0.25 1.52994 0.25 2.00001V12.5C0.25 12.8537 0.49705 13.1593 0.842853 13.2334L7.84285 14.7334C7.94644 14.7556 8.05356 14.7556 8.15715 14.7334L15.1571 13.2334C15.5029 13.1593 15.75 12.8537 15.75 12.5V2.00001C15.75 1.52995 15.3025 1.16816 14.8429 1.26666L8 2.73298L1.15715 1.26666ZM1.75 11.8937V2.92775L7.84285 4.23336C7.94644 4.25556 8.05356 4.25556 8.15715 4.23336L14.25 2.92775V11.8937L8 13.233L1.75 11.8937Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4162"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">What&#x27;s new</span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/blog/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4432)"><path d="M8.5 2.25H3.75V3.25H4.5V4.75H3.75V7.25H4.5V8.75H3.75V11.25H4.5V12.75H3.75V13.75H12.75V8H14.25V14C14.25 14.6904 13.6904 15.25 13 15.25H3.5C2.80964 15.25 2.25 14.6904 2.25 14V12.75H1V11.25H2.25V8.75H1V7.25H2.25V4.75H1V3.25H2.25V2C2.25 1.30965 2.80964 0.75 3.5 0.75H8.5V2.25Z" fill="currentColor"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M11.6161 1.32327C12.1043 0.835115 12.8957 0.835114 13.3839 1.32327L14.6768 2.61616C15.1649 3.10432 15.1649 3.89577 14.6768 4.38393L10.3697 8.69095L8.01479 9.16194C7.31506 9.30188 6.69815 8.68496 6.83809 7.98524L7.30908 5.63029L11.6161 1.32327ZM12.5 2.56071L8.69088 6.36981L8.45605 7.54398L9.63022 7.30915L13.4393 3.50005L12.5 2.56071Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4432"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Blog</span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/resources/library/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4306)"><path fill-rule="evenodd" clip-rule="evenodd" d="M0.25 3C0.25 2.30964 0.809644 1.75 1.5 1.75H4C4.17778 1.75 4.34688 1.78711 4.5 1.85401C4.65312 1.78711 4.82222 1.75 5 1.75H7.5C8.02471 1.75 8.47392 2.0733 8.65927 2.53157L10.8406 1.90834C11.4771 1.72647 12.1451 2.07245 12.3638 2.69731L15.5329 11.7518C15.7704 12.4305 15.3878 13.1692 14.6965 13.3667L12.1596 14.0915C11.5231 14.2734 10.8551 13.9274 10.6364 13.3025L8.75 7.91277V13C8.75 13.6904 8.19036 14.25 7.5 14.25H5C4.82222 14.25 4.65312 14.2129 4.5 14.146C4.34689 14.2129 4.17778 14.25 4 14.25H1.5C0.809644 14.25 0.25 13.6904 0.25 13V3ZM3.75 12.75V3.25H1.75V12.75H3.75ZM5.25 12.75H7.25V3.25H5.25V12.75ZM11.0259 3.41541L8.97067 4.00263L11.9743 12.5844L14.0296 11.9972L11.0259 3.41541Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4306"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Library</span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/resources/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4423)"><path fill-rule="evenodd" clip-rule="evenodd" d="M2 0.750061C1.30964 0.750061 0.75 1.30971 0.75 2.00006V9.50006H2.25V5.25H13.75V13.7501H6.5V15.2501H14C14.6904 15.2501 15.25 14.6904 15.25 14.0001V2.00006C15.25 1.3097 14.6904 0.750061 14 0.750061H2ZM3.75 3.75H2.25V2.25006H3.75V3.75ZM5.25 3.75H13.75V2.25006H5.25V3.75Z" fill="currentColor"></path><path d="M4.00002 8.24998L6.68935 8.24998L0.969727 13.9696L2.03039 15.0303L7.75002 9.31063L7.75001 12L9.25001 12L9.25003 6.74999L4.00002 6.74998L4.00002 8.24998Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4423"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Industry resources</span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/customer-stories/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4405)"><path d="M12.5 8C12.5 8.55228 12.0523 9 11.5 9C10.9477 9 10.5 8.55228 10.5 8C10.5 7.44772 10.9477 7 11.5 7C12.0523 7 12.5 7.44772 12.5 8Z" fill="currentColor"></path><path d="M8 9C8.55228 9 9 8.55228 9 8C9 7.44772 8.55228 7 8 7C7.44772 7 7 7.44772 7 8C7 8.55228 7.44772 9 8 9Z" fill="currentColor"></path><path d="M5.5 8C5.5 8.55228 5.05228 9 4.5 9C3.94772 9 3.5 8.55228 3.5 8C3.5 7.44772 3.94772 7 4.5 7C5.05228 7 5.5 7.44772 5.5 8Z" fill="currentColor"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M1.00004 15.75H7.99993C12.2801 15.75 15.75 12.2802 15.75 8C15.75 3.71979 12.2802 0.25 8 0.25C3.71979 0.25 0.25 3.71979 0.25 8C0.25 9.75949 0.837111 11.3833 1.82529 12.6841L0.404035 14.5447C0.0344229 15.0286 0.39116 15.75 1.00004 15.75ZM1.75 8C1.75 4.54822 4.54822 1.75 8 1.75C11.4518 1.75 14.25 4.54822 14.25 8C14.25 11.4518 11.4518 14.25 8 14.25H7.99894H2.51673L3.37843 13.1219C3.59698 12.8358 3.58139 12.4348 3.34127 12.1665C2.35116 11.0602 1.75 9.60122 1.75 8Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4405"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Customer stories</span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/events/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_3917)"><path d="M4.5 7.5C5.05228 7.5 5.5 7.05228 5.5 6.5C5.5 5.94772 5.05228 5.5 4.5 5.5C3.94772 5.5 3.5 5.94772 3.5 6.5C3.5 7.05228 3.94772 7.5 4.5 7.5Z" fill="currentColor"></path><path d="M5.5 10C5.5 10.5523 5.05228 11 4.5 11C3.94772 11 3.5 10.5523 3.5 10C3.5 9.44771 3.94772 9 4.5 9C5.05228 9 5.5 9.44771 5.5 10Z" fill="currentColor"></path><path d="M8 7.5C8.55228 7.5 9 7.05228 9 6.5C9 5.94772 8.55228 5.5 8 5.5C7.44772 5.5 7 5.94772 7 6.5C7 7.05228 7.44772 7.5 8 7.5Z" fill="currentColor"></path><path d="M9 10C9 10.5523 8.55228 11 8 11C7.44772 11 7 10.5523 7 10C7 9.44771 7.44772 9 8 9C8.55228 9 9 9.44771 9 10Z" fill="currentColor"></path><path d="M11.5 7.5C12.0523 7.5 12.5 7.05228 12.5 6.5C12.5 5.94772 12.0523 5.5 11.5 5.5C10.9477 5.5 10.5 5.94772 10.5 6.5C10.5 7.05228 10.9477 7.5 11.5 7.5Z" fill="currentColor"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M12.25 1.75H14.5625C15.1944 1.75 15.75 2.2517 15.75 2.92308V13.0769C15.75 13.7483 15.1944 14.25 14.5625 14.25H1.4375C0.805559 14.25 0.25 13.7483 0.25 13.0769V2.92308C0.25 2.2517 0.805559 1.75 1.4375 1.75H3.75V0.5H5.25V1.75H10.75V0.5H12.25V1.75ZM3.75 3.25V4H5.25V3.25H10.75V4H12.25V3.25H14.25V12.75H1.75V3.25H3.75Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_3917"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Events</span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/events/effects/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4801)"><path d="M5 10C5 10.5523 4.55228 11 4 11C3.44772 11 3 10.5523 3 10C3 9.44772 3.44772 9 4 9C4.55228 9 5 9.44772 5 10Z" fill="currentColor"></path><path d="M8 10C8 10.5523 7.55228 11 7 11C6.44772 11 6 10.5523 6 10C6 9.44772 6.44772 9 7 9C7.55228 9 8 9.44772 8 10Z" fill="currentColor"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M1.5 2.25C0.809644 2.25 0.25 2.80964 0.25 3.5V12.5C0.25 13.1904 0.809645 13.75 1.5 13.75H9.5C10.1904 13.75 10.75 13.1904 10.75 12.5V11.008L14.1408 12.0253C14.9428 12.2659 15.75 11.6653 15.75 10.828V5.17202C15.75 4.3347 14.9428 3.73414 14.1408 3.97474L10.75 4.99198V3.5C10.75 2.80964 10.1904 2.25 9.5 2.25H1.5ZM10.75 6.55803V9.44199L14.25 10.492V5.50803L10.75 6.55803ZM1.75 12.25V3.75H9.25V12.25H1.75Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4801"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Annual conference</span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/what-is-plaid/"><div class="css-ibgeem"><span class="css-4mjv7g"><style data-emotion="css 1wwyl5l">.css-1wwyl5l{width:16px;color:#0ba299;}</style><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="none" class="css-1wwyl5l"><path d="M14.7217 14.7216L16 9.73192L14.2681 8.00008L15.9999 6.26808L14.7216 1.27832L9.73192 0L8.00008 1.732L6.268 8e-05L1.27832 1.27848L0 6.26808L1.73216 7.99992L8e-05 9.732L1.2784 14.7217L6.26808 16L8.00008 14.268L9.732 15.9999L14.7217 14.7216ZM8.98976 13.2783L10.6392 11.6289L12.7378 13.7276L10.1118 14.4004L8.98976 13.2783ZM6.35064 5.36088L8.00016 3.71144L9.6496 5.3608L8.00008 7.01024L6.35064 5.36088ZM7.0104 8L5.36088 9.64944L3.71144 8L5.36088 6.35056L7.0104 8ZM10.6393 6.35048L12.2887 8L10.6392 9.64944L8.98976 8L10.6393 6.35048ZM9.64952 10.6392L8.00008 12.2886L6.35056 10.6391L8.00008 8.98968L9.64952 10.6392ZM5.88824 14.4004L3.26208 13.7276L5.36088 11.6288L7.0104 13.2783L5.88824 14.4004ZM2.72176 8.98968L4.3712 10.6391L2.2724 12.7379L1.5996 10.1118L2.72176 8.98968ZM2.2724 3.26192L4.37128 5.3608L2.72176 7.01032L1.5996 5.88808L2.2724 3.26192ZM7.01048 2.72168L5.36096 4.3712L3.26224 2.2724L5.8884 1.5996L7.01048 2.72168ZM10.1119 1.5996L12.738 2.2724L10.6392 4.37112L8.98976 2.72168L10.1119 1.5996ZM13.2784 7.01032L11.6289 5.3608L13.7276 3.26216L14.4004 5.88832L13.2784 7.01032ZM13.7276 12.7379L11.6289 10.6392L13.2784 8.98976L14.4004 10.1118L13.7276 12.7379Z" fill="currentColor"></path></svg></span><span class="MuiBox-root css-8tremo">What is Plaid</span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/intelligent-finance/"><div class="css-ibgeem"><span class="css-4mjv7g"><span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-13sjdh2" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_4315)"><path d="M5.46973 6.5304L7.11618 8.17681C7.15863 8.21925 7.20337 8.25801 7.25 8.29307V10H8.75V8.29315C8.79667 8.25807 8.84145 8.21929 8.88393 8.17681L10.5304 6.5304L9.46972 5.46973L8.00005 6.93936L6.53037 5.46973L5.46973 6.5304Z" fill="currentColor"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M3.91487 1.90001C4.96636 0.911585 6.40915 0.392883 7.99997 0.392883C9.59079 0.392883 11.0336 0.911584 12.0851 1.9C13.1423 2.89374 13.75 4.31239 13.75 6.00006C13.75 6.67656 13.4999 7.33461 13.1982 7.9212C12.8975 8.50597 12.5028 9.09792 12.1371 9.64653L12.124 9.6661C11.7434 10.237 11.3939 10.7629 11.1357 11.265C10.8749 11.7721 10.75 12.1766 10.75 12.5001V15.0001C10.75 15.4143 10.4142 15.7501 10 15.7501H6C5.58579 15.7501 5.25 15.4143 5.25 15.0001V12.5001C5.25 12.1766 5.12511 11.7721 4.86428 11.265C4.6061 10.7629 4.25657 10.237 3.87596 9.6661L3.86293 9.64655C3.49717 9.09793 3.10252 8.50598 2.80178 7.9212C2.50011 7.33461 2.25 6.67656 2.25 6.00006C2.25 4.3124 2.85772 2.89375 3.91487 1.90001ZM4.94225 2.99294C4.2137 3.67779 3.75 4.68772 3.75 6.00006C3.75 6.32356 3.87489 6.72802 4.13572 7.23518C4.3939 7.73721 4.74343 8.26314 5.12404 8.83405L5.13709 8.85363C5.50284 9.40224 5.89748 9.99417 6.19822 10.5789C6.38683 10.9457 6.55528 11.3404 6.65506 11.75H9.34494C9.44472 11.3404 9.61317 10.9457 9.80178 10.5789C10.1025 9.99418 10.4972 9.40224 10.8629 8.85364L10.876 8.83405C11.2566 8.26314 11.6061 7.73721 11.8643 7.23518C12.1251 6.72802 12.25 6.32356 12.25 6.00006C12.25 4.68773 11.7863 3.67779 11.0577 2.99294C10.3235 2.30277 9.2663 1.89288 7.99997 1.89288C6.73365 1.89288 5.67645 2.30277 4.94225 2.99294ZM9.25 13.25H6.75V14.2501H9.25V13.25Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_4315"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></span><span class="MuiBox-root css-8tremo">Intelligent finance</span></div></a></li></ul></li><li class="css-1lwrckp"><button aria-expanded="false" aria-controls=":Rlb9ad5m:-menu" class="css-1l2x1ad">For users<span class="icon-container"><!--$--><svg width="16" height="16" focusable="false" aria-hidden="true" role="img" class="css-gjnjl3" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_611_3962)"><path d="M14.0303 6.53027L8 12.5605L1.96973 6.53027L3.03027 5.46973L8 10.4395L12.9697 5.46973L14.0303 6.53027Z" fill="currentColor"></path></g><defs><clipPath id="clip0_611_3962"><rect width="16" height="16" fill="currentColor"></rect></clipPath></defs></svg><!--/$--></span></button><ul id=":Rlb9ad5m:-menu" class="css-tgr9go"><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/trouble-connecting/"><div class="css-ibgeem"><span class="MuiBox-root css-8tremo">Troubleshoot account connection</span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/trust-safety/"><div class="css-ibgeem"><span class="MuiBox-root css-8tremo">Trust and safety</span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="//my.plaid.com/"><div class="css-ibgeem"><span class="MuiBox-root css-8tremo">Control your data with Plaid Portal</span></div></a></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/check/consumer-service-center/"><div class="css-ibgeem"><span class="MuiBox-root css-8tremo">Plaid Check Consumer Help Center</span></div></a></li></ul></li></ul></li><li class="css-1lwrckp"><a class="Link_default__j2D2I css-0" href="/pricing/"><div class="css-ibgeem"><span class="MuiBox-root css-8tremo">Pricing</span></div></a></li></ul></div><style data-emotion="css qe6l52">.css-qe6l52{padding:16px 0;border-top:1px solid #EAEFF0;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-align-content:stretch;-ms-flex-line-pack:stretch;align-content:stretch;gap:12px;}</style><div class="MuiBox-root css-qe6l52"><style data-emotion="css vumacb">.css-vumacb{-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;border:none;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;gap:1px;font-family:Cern,"Helvetica Neue",Helvetica,"Nimbus Sans",system-ui,-apple-system,BlinkMacSystemFont,Arial,"Segoe UI",Roboto,Oxygen,sans-serif;font-weight:600;height:auto;letter-spacing:-0.75px;line-height:130%;color:#ffffff!important;white-space:nowrap;padding:0;border-radius:100px!important;overflow:hidden;-webkit-text-decoration:none;text-decoration:none;outline:none;--btn-surface-height:48px;--btn-surface-padding-x:24px;--btn-surface-width:100%;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;}@-webkit-keyframes spin{from{-webkit-transform:translate(-50%, -50%) rotate(0deg);-moz-transform:translate(-50%, -50%) rotate(0deg);-ms-transform:translate(-50%, -50%) rotate(0deg);transform:translate(-50%, -50%) rotate(0deg);}to{-webkit-transform:translate(-50%, -50%) rotate(360deg);-moz-transform:translate(-50%, -50%) rotate(360deg);-ms-transform:translate(-50%, -50%) rotate(360deg);transform:translate(-50%, -50%) rotate(360deg);}}@keyframes spin{from{-webkit-transform:translate(-50%, -50%) rotate(0deg);-moz-transform:translate(-50%, -50%) rotate(0deg);-ms-transform:translate(-50%, -50%) rotate(0deg);transform:translate(-50%, -50%) rotate(0deg);}to{-webkit-transform:translate(-50%, -50%) rotate(360deg);-moz-transform:translate(-50%, -50%) rotate(360deg);-ms-transform:translate(-50%, -50%) rotate(360deg);transform:translate(-50%, -50%) rotate(360deg);}}@media (min-width:0px){.css-vumacb{font-size:1.8rem;}}@media (min-width:1024px){.css-vumacb{font-size:2.0rem;}}.css-vumacb:hover{box-shadow:0px 0px 14px #5e5ed9;}.css-vumacb:active{box-shadow:none;}.css-vumacb:focus-visible{outline-width:2px;outline-color:#043c67;outline-style:solid;outline-offset:3px;}.css-vumacb .btn-surface{position:relative;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;box-sizing:border-box;height:var(--btn-surface-height);padding:0 var(--btn-surface-padding-x);border-radius:inherit;width:var(--btn-surface-width);}@media (min-width:1440px){.css-vumacb{--btn-surface-height:56px;}.css-vumacb .btn-surface{line-height:150%;}}.css-vumacb .bg-c{position:absolute;top:0;left:0;bottom:0;right:0;border-radius:inherit;box-shadow:0px 0px 5px 0px rgba(0, 0, 0, 0.20);}.css-vumacb .ring{position:absolute;top:0;left:0;bottom:0;right:0;border-radius:inherit;overflow:hidden;padding:3px;box-sizing:border-box;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:exclude;mask-composite:exclude;}.css-vumacb .ring:before{content:"";position:absolute;top:50%;left:50%;width:200%;aspect-ratio:1;-webkit-transform:translate(-50%, -50%);-moz-transform:translate(-50%, -50%);-ms-transform:translate(-50%, -50%);transform:translate(-50%, -50%);background:conic-gradient(in oklch longer hue, oklch(0.91 0.19 69.4) 0deg 360deg);-webkit-animation:spin 2.5s infinite linear;animation:spin 2.5s infinite linear;will-change:transform;}@media (prefers-reduced-motion: reduce){.css-vumacb .ring::before{-webkit-animation:none;animation:none;}}.css-vumacb .bg{content:"";position:absolute;top:2px;left:2px;right:2px;bottom:2px;background:linear-gradient(77deg, #111112 0%, #373839 100%);border-radius:inherit;mix-blend-mode:luminosity;}.css-vumacb .txt{position:relative;}.css-vumacb:hover .bg-c,.css-vumacb:active .bg-c{mix-blend-mode:luminosity;box-shadow:none;}.css-vumacb:active .bg-c,.css-vumacb:active .txt{-webkit-transition:-webkit-transform 0.1s ease;transition:transform 0.1s ease;-webkit-transform:scale(0.98);-moz-transform:scale(0.98);-ms-transform:scale(0.98);transform:scale(0.98);}.css-vumacb:hover .txt,.css-vumacb:active .txt{color:#eaeff0!important;}</style><a href="https://dashboard.plaid.com/signin" class="base-Button-root cms-btn-primary css-vumacb"><span class="btn-surface MuiBox-root css-1xdhyk6"><span class="bg-c MuiBox-root css-1xdhyk6"><span class="ring MuiBox-root css-1xdhyk6"></span><span class="bg MuiBox-root css-1xdhyk6"></span></span><style data-emotion="css 16d6ty2">.css-16d6ty2{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;gap:1rem;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;width:100%;}.css-16d6ty2 .btn-icon{color:#ffffff;}.css-16d6ty2 .icon-container{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}</style><span class="MuiStack-root txt css-16d6ty2"> <!-- -->Log in<!-- --> </span></span></a><style data-emotion="css bgxv0e">.css-bgxv0e{-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;border:none;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;gap:1px;font-family:Cern,"Helvetica Neue",Helvetica,"Nimbus Sans",system-ui,-apple-system,BlinkMacSystemFont,Arial,"Segoe UI",Roboto,Oxygen,sans-serif;font-weight:600;letter-spacing:-0.75px;line-height:130%;color:#111112!important;white-space:nowrap;padding:0;height:auto;border-radius:100px!important;overflow:hidden;-webkit-text-decoration:none;text-decoration:none;outline:none;--btn-surface-height:48px;--btn-surface-padding-x:24px;--btn-surface-width:100%;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;}@media (min-width:0px){.css-bgxv0e{font-size:1.8rem;}}@media (min-width:1024px){.css-bgxv0e{font-size:2.0rem;}}.css-bgxv0e .btn-surface{position:relative;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;box-sizing:border-box;height:var(--btn-surface-height);padding:0 var(--btn-surface-padding-x);border-radius:inherit;width:var(--btn-surface-width);}@media (min-width:1440px){.css-bgxv0e{--btn-surface-height:56px;}.css-bgxv0e .btn-surface{line-height:150%;}}.css-bgxv0e:focus-visible{outline-width:2px;outline-color:#043c67;outline-style:solid;outline-offset:3px;}.css-bgxv0e .bg-c{position:absolute;top:0;left:0;bottom:0;right:0;border-radius:inherit;}.css-bgxv0e .bg-c:before{content:"";position:absolute;top:0;left:0;bottom:0;right:0;padding:2px;border-radius:inherit;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:exclude;mask-composite:exclude;background:linear-gradient(45deg, #671877 0%, #2b2b82 50%, #043c67 100%);}.css-bgxv0e .bg{content:"";position:absolute;top:2px;left:2px;right:2px;bottom:2px;background:transparent;border-radius:inherit;}.css-bgxv0e .txt{position:relative;}.css-bgxv0e:hover .bg-c,.css-bgxv0e:active .bg-c{background:rgba(255, 255, 255, 0.50);}.css-bgxv0e:hover .bg-c{box-shadow:0px 0px 14px #5e5ed9;}.css-bgxv0e:active .bg-c,.css-bgxv0e:active .txt{box-shadow:none;-webkit-transition:-webkit-transform 0.1s ease;transition:transform 0.1s ease;-webkit-transform:scale(0.98);-moz-transform:scale(0.98);-ms-transform:scale(0.98);transform:scale(0.98);}.css-bgxv0e:hover .bg-c:before{background:#111112;}</style><a href="/contact/" class="base-Button-root cms-btn-secondary css-bgxv0e"><span class="btn-surface MuiBox-root css-1xdhyk6"><span class="bg-c MuiBox-root css-1xdhyk6"><span class="bg MuiBox-root css-1xdhyk6"></span></span><style data-emotion="css 1j7wj83">.css-1j7wj83{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;gap:1rem;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;width:100%;}.css-1j7wj83 .btn-icon{color:#111112;}</style><span class="MuiStack-root txt css-1j7wj83"> <!-- -->Contact sales<!-- --> </span></span></a></div></div></div></dialog></nav><div id="main-content" class="scaling-a-monitoring-platform default" data-env="production"><article><div class="BlogPostTemplate_navspacer__XjWTD"></div><div class="BlogPostTemplate_wrapper__yILPW"><div class="BlogPostTemplate_pageHeader__a6Rjb"><div class="BlogPostTemplate_metaRow__4vDm9"><div class="BlogPostTemplate_dateWrapper__jLpgx"><p class="Date_date__uXOej">June 28, 2018</p></div><div><div class="Tag_blogPostTagWrapper__QiooF"><a href="/blog/tag/engineering/" class="Tag_blogPostTag__Mi8l_"><span>engineering</span></a></div></div></div><h1 class="BlogPostTemplate_headline__BmoDi">Scaling a monitoring platform to over 9,600 bank integrations</h1><div class="ShareBtns_shareBtns__2JqMm ShareBtns_inline__12gid BlogPostTemplate_headerShare__4OLA1"><a class="ShareBtns_shareBtn__LEkDL css-0" target="_blank" rel="noreferrer" aria-label="Share on LinkedIn" href="https://www.linkedin.com/sharing/share-offsite/?url=https://plaid.com/blog/scaling-a-monitoring-platform/&amp;title=Scaling%20a%20monitoring%20platform%20to%20over%209,600%20bank%20integrations"><svg width="52" height="30" viewBox="0 0 52 30" fill="none" xmlns="http://www.w3.org/2000/svg"><rect width="52" height="30" rx="15" fill="url(#linkedin_gradient)"></rect><path d="M19.9991 7C18.8976 7 18.0008 7.89467 18 8.99461C18 10.0945 18.8968 10.9894 19.9991 10.9894C21.1009 10.9894 21.9973 10.0945 21.9973 8.99461C21.9973 7.89479 21.1009 7 19.9991 7Z" fill="#043C67"></path><path d="M21.5036 11.7938H18.5027C18.3599 11.7938 18.2441 11.9093 18.2441 12.0519V21.6898C18.2441 21.8323 18.3599 21.9478 18.5027 21.9478H21.5035C21.6463 21.9478 21.7621 21.8322 21.7621 21.6898V12.0519C21.7621 11.9092 21.6464 11.7938 21.5036 11.7938Z" fill="#043C67"></path><path d="M29.1729 11.6798C28.0747 11.6798 27.1097 12.0135 26.5208 12.5576V12.0513C26.5208 11.9088 26.405 11.7933 26.2622 11.7933H23.3836C23.2408 11.7933 23.125 11.9088 23.125 12.0513V21.6892C23.125 21.8317 23.2408 21.9472 23.3836 21.9472H26.3816C26.5244 21.9472 26.6402 21.8317 26.6402 21.6892V16.9209C26.6402 15.5527 26.8924 14.7047 28.151 14.7047C29.391 14.7062 29.4838 15.6156 29.4838 17.0026V21.6892C29.4838 21.8317 29.5996 21.9472 29.7425 21.9472H32.7418C32.8846 21.9472 33.0004 21.8317 33.0004 21.6892V16.4024C33.0003 14.2036 32.5653 11.6798 29.1729 11.6798Z" fill="#043C67"></path><defs><linearGradient id="linkedin_gradient" x1="5.32716e-06" y1="30" x2="28.5211" y2="-14.9106" gradientUnits="userSpaceOnUse"><stop stop-color="#E6E6FF"></stop><stop offset="0.5" stop-color="#E5EFFE"></stop><stop offset="1" stop-color="#CCF8FF"></stop></linearGradient></defs></svg></a><a class="ShareBtns_shareBtn__LEkDL css-0" target="_blank" rel="noreferrer" aria-label="Share on X (Twitter)" href="https://twitter.com/intent/tweet?text=Scaling%20a%20monitoring%20platform%20to%20over%209,600%20bank%20integrations%20https://plaid.com/blog/scaling-a-monitoring-platform/"><svg width="53" height="30" viewBox="0 0 53 30" fill="none" xmlns="http://www.w3.org/2000/svg"><rect width="53" height="30" rx="15" fill="url(#x_gradient)"></rect><path d="M28.5222 13.7749L34.4785 7H33.0671L27.8952 12.8826L23.7644 7H19L25.2466 15.8955L19 23H20.4115L25.8732 16.7878L30.2356 23H35L28.5218 13.7749H28.5222ZM26.5889 15.9738L25.956 15.0881L20.9201 8.03974H23.0882L27.1522 13.728L27.7851 14.6137L33.0677 22.0075H30.8997L26.5889 15.9742V15.9738Z" fill="#043C67"></path><defs><linearGradient id="x_gradient" x1="5.42961e-06" y1="30" x2="28.2869" y2="-15.3983" gradientUnits="userSpaceOnUse"><stop stop-color="#E6E6FF"></stop><stop offset="0.5" stop-color="#E5EFFE"></stop><stop offset="1" stop-color="#CCF8FF"></stop></linearGradient></defs></svg></a><a class="ShareBtns_shareBtn__LEkDL css-0" target="_blank" rel="noreferrer" aria-label="Share on Facebook" href="https://www.facebook.com/sharer/sharer.php?u=https://plaid.com/blog/scaling-a-monitoring-platform/"><svg width="52" height="30" viewBox="0 0 52 30" fill="none" xmlns="http://www.w3.org/2000/svg"><rect width="52" height="30" rx="15" fill="url(#facebook_gradient)"></rect><path d="M26.9296 9.63906C26.9296 8.95508 27.5255 8.70937 28.1927 8.70937C28.8599 8.70937 29.5725 8.92187 29.5725 8.92187L30 6.31875C30 6.31875 29.0931 6 26.9296 6C25.6016 6 24.8308 6.51797 24.2672 7.28164C23.736 8.00547 23.7166 9.16758 23.7166 9.91797V11.6246H22V14.168H23.7166V23H26.9296V14.168H29.4753L29.6632 11.6246H26.9296V9.63906Z" fill="#043C67"></path><defs><linearGradient id="facebook_gradient" x1="5.32716e-06" y1="30" x2="28.5211" y2="-14.9106" gradientUnits="userSpaceOnUse"><stop stop-color="#E6E6FF"></stop><stop offset="0.5" stop-color="#E5EFFE"></stop><stop offset="1" stop-color="#CCF8FF"></stop></linearGradient></defs></svg></a></div><div class="BlogPostTemplate_authors__bGtEK"><div class="Author_author__tSZdK Author_authorNameOnly__b6Q_I"><div class="Author_authorInfo__wlXYy"><div class="Author_name__1RSX8">Joy Zheng &amp; Jeeyoung Kim </div></div></div></div></div><div class="BlogPostTemplate_main__saPsO"><div class="BlogPostTemplate_body__L8ldk" data-testid="blogPostTemplate"><div class=""><p class="">At Plaid, one of the things we do is we maintain integrations with more than 9,600 banks. Our core promise to customers is providing reliable and homogenous data from all of these financial institutions. From an operational perspective, that requires us to monitor 9,600 external dependencies on top of our own infrastructure. This is an inside look at monitoring at Plaid.</p><p class="">As the number of integrations grew from a handful to nearly ten thousand over the last few years, we increasingly found that we had outgrown our legacy, logs-based monitoring system. But given the diversity of institutions, we struggled to determine what the right replacement would be and how to get it built. This post dives into how we answered these questions and what we had learned once we were done.</p><h3 class="">Determining Requirements</h3><p class=""><b class="">Step 1: Understanding the Problem</b></p><p class="">Our primary monitoring challenge lies in the combination of integration count with the heterogeneity of the integrations monitored. The financial institutions with which we integrate range from the largest banks in the United States to small, regional credit unions. In practice, this means that similar metrics have different meanings across integrations. While any monitoring system should be able to handle differential configuration, doing so across a large number of metrics becomes more complicated.</p><figure class="BlogPost_figure__Bq72i"><div class="lazyload-wrapper "><div style="height:100%" class="lazyload-placeholder"></div></div></figure><p class="">In Hour 1, both integrations look fine; there are some failed linkages, which is expected since users often misremember their password on the first try. In Hour 2, however, we see that all the linkages for Tattersall Federal Credit Union have failed, but the low count makes it hard to tell whether this is a problem with the integration or just a string of incorrect passwords. More generally, due to varying traffic levels, it makes more sense to monitor success/failure counts for some integrations and percentages for others. We also look beyond success/failure metrics for failure modes such as latency spikes and data quality degradation.</p><p class="">Our ultimate monitoring solution needed to be able to support cases like this across all 9,600 of Plaid’s supported institutions.</p><p class=""><b class="">Step 2: Do We Need a Rewrite?</b></p><p class="">The first step in building out a new monitoring pipeline was convincing ourselves that we needed a new system—that our legacy system could not scale for the next year of growth.</p><p class="">This legacy monitoring system, which we’d implemented more than two years ago when we had only a handful of in-house integrations, consisted of Nagios sending queries to our ElasticSearch log cluster and forwarding alerts to PagerDuty.</p><p class="">But this system lacked the customizability to extend cleanly as our system grew, and we found ourselves extending it with duct tape in the form of an ever-growing configuration file. Here are some of the problems we faced:</p><ul class="BlogPost_list__pqos1"><li><p class="">As our traffic grew, we were forced to accept dwindling log retention periods in the ElasticSearch cluster</p></li><li><p class="">Log queries could measure the success rate during this time interval, but there was nowhere to track metrics over time past the retention period in order to alert against gradual changes</p></li><li><p class="">The configuration of alerting thresholds was manual on a per-institution basis</p></li><li><p class="">Otherwise innocuous logging changes risked breaking monitoring queries</p></li><li><p class="">The same logs were used for business analytics and quality of service, despite very different latency and granularity requirements between the two</p></li></ul><p class=""><b class="">Step 3: Determining Metrics</b></p><p class="">Having convinced ourselves that our existing system would not allow us to adequately monitor all of our bank integrations, we moved to the second stage of the process: <b class="">identifying a full list of areas we would ideally want to monitor.</b> As discussed above, an especially relevant challenge was varying degrees of traffic per bank—thousands of requests per second for some but only a couple of dozen per day for others. Monitoring a low-throughput system is a very different problem: The orders-of-magnitude difference between institutions challenges traditional assumptions about success and failure rates.</p><p class="">Creating our metrics wishlist made the complexity of our domain evident. Working over different metric types (such as absolute vs. percentage failures), error types, and services where errors could be thrown, we ended with over 20 categories of metrics. We bucketed these metrics into high/medium/low priority based on customer impact and cost of instrumentation, and focused our implementation on only the high-priority areas.</p><p class=""><b class="">Step 4: Technical Requirements</b></p><p class="">Finally, given the product metrics to monitor, we determined the system’s technical requirements:</p><ul class="BlogPost_list__pqos1"><li><p class="">Scalability: We needed to handle a large metric count due to the multiplicative factor of [9.6k banks * N metrics each], so we wanted a system that could handle a high cardinality of metrics</p></li><li><p class="">Latency: We set ourselves goals of at most 30s lag from event to metric creation, and 1s query time</p></li><li><p class="">Usability: Engineers should be able to easily update or create metrics and alerts with a minimum of monitoring-specific domain knowledge</p></li></ul><p class="">Then we researched options for each stage of the system:</p><ul class="BlogPost_list__pqos1"><li><p class="">Event Transport: We chose <b class="">Kinesis</b> (over Logstash and SQS) due to its combination of buffering in case of consumer downtime, allowance for multiple readers for event-stream reuse, and existing client libraries</p></li><li><p class="">Time Series Database: We chose <b class="">Prometheus</b> because it met our scaling needs without requiring an external dependency like HBase or an enterprise edition; other options included Graphite, OpenTSDB, and InfluxDB</p></li><li><p class="">Alerting: We chose <b class="">Alertmanager</b> over Nagios and Grafana due to the amount of flexibility it allowed for notification and alerting rules—for example, grouping and suppressing alerts based on tags—even though it required configuration via config files instead of a UI</p></li><li><p class="">Visualization: We chose <b class="">Grafana</b> because it could integrate not only with Prometheus, but also with other sources of data at Plaid (namely, CloudWatch metrics and ElasticSearch logs)</p></li></ul><h3 class="">Implementation</h3><p class="">Now we could wire up all of those stages into a full pipeline. Working through system requirements taught us that we needed custom components for the sake of metrics generation, but not for scalability.</p><p class="">In particular, Prometheus operates on a pull-based model, where it queries individual servers for metrics on a regular basis; this allows for redundancy by running multiple independent Prometheus servers. For example, individual API servers might export an api_call_count metric. Then, the Prometheus query sum(rate(api_call_count[5m])) adds up the rate of API calls over all servers.</p><p class="">The pull-based model works well for metrics which can be easily aggregated across multiple servers. But it doesn’t always work well for low throughput events where each server sees only partial data. For example, each task runner may only see a handful of requests for Tartan Federal Credit Union over the course of a day, making it impossible for that task runner to individually generate an accurate latency histogram.</p><p class="">As a result, we added custom components to enable metrics generation from a full event stream. For improved usability, we built a monitoring pipeline which could be used either with or without those custom components.</p><h3 class="">Standard Pipeline</h3><p class="">On the one hand, services that can export straightforward metrics by themselves make use of a <b class="">standard metrics pipeline</b>:</p><figure class="BlogPost_figure__Bq72i"><div class="lazyload-wrapper "><div style="height:100%" class="lazyload-placeholder"></div></div><figcaption>The monitoring pipeline for services not requiring custom metric generation</figcaption></figure><p class="">This pipeline leverages Prometheus to poll services for metrics and forward alerts to AlertManager, which sends notifications to PagerDuty and Slack. Engineers using the standard pipeline do not need to interact with or understand custom components, and often do not need to even add instrumentation. Instead, we automatically export metrics from many of our shared libraries, such as server middleware or database transaction wrappers.</p><p class="">This pipeline could handle all of our initial scaling requirements—such as hundreds of thousands of metrics—out of the box while being compatible with custom metric generation.</p><h3 class="">Custom Pipeline</h3><p class="">Meanwhile, other services use the <b class="">custom metrics pipeline</b>, which has the following additions:</p><ul class="BlogPost_list__pqos1"><li><p class="">Services send events to an Amazon Kinesis stream instead of generating their own metrics. The event types are specified by protobufs, which has the extra benefit of providing a well-defined event stream which other services can read</p></li><li><p class="">An event consumer with its own database reads the Kinesis stream, generates metrics, and exposes those metrics to Prometheus. This lets us add custom metric transformations as well. This ability to easily add or plug in custom, advanced metrics is critical to the system’s adaptability to domain-specific situations</p></li></ul><p class="">After this point, Prometheus pulls the metrics and the rest of the pipeline is unchanged.</p><figure class="BlogPost_figure__Bq72i"><div class="lazyload-wrapper "><div style="height:100%" class="lazyload-placeholder"></div></div><figcaption>The monitoring pipeline for services requiring custom metrics generation</figcaption></figure><h3 class="">Outcomes and Ongoing Work</h3><p class="">Nine months later, the monitoring system has reached:</p><ul class="BlogPost_list__pqos1"><li><p class="">More than 700 events per second processed</p></li><li><p class="">190k+ metrics exported</p></li><li><p class="">17 services monitored</p></li><li><p class="">31 engineers who have contributed monitoring configuration changes (on a team of 45)</p></li><li><p class="">&lt; 5 second average delay from events to metric generation</p></li></ul><p class="">Continuing work on the monitoring system has happened in multiple areas:</p><ul class="BlogPost_list__pqos1"><li><p class=""><i class="">Scaling</i>: as the number of metrics grew, we added federation and pre-aggregation of metrics to Prometheus</p></li><li><p class=""><i class="">Tooling:</i> while Prometheus makes it easy to set alerts across entire categories of metrics, a follow-up project built more tooling to templatize tuning alerts on a per-integration basis without having to copy-paste alert configuration</p></li><li><p class=""><i class="">Developer education</i>: we underinvested initially given the number of monitoring components, making it hard for other developers to understand how they should interact with the monitoring system. Improved education has taken the form of internal tech talks and documentation on how to use the system</p></li></ul><p class="">Over time, the monitoring pipeline has been used by an increasing number of services and teams; this means we can instrument services more thoroughly than before and catch regressions faster. Though a few services take advantage of the custom metrics pipeline, most instead export server metrics for the standard pipeline. We are also integrating the monitoring pipeline more directly into other parts of our workflow; for example, filing and autotriaging JIRA issues for regression and automatically gating deployments on monitoring.</p><h3 class="">What We Learned</h3><p class="">We ended up with these key takeaways from building the system and watching its initial usage:</p><ul class="BlogPost_list__pqos1"><li><p class=""><b class="">Build the end-to-end pipeline first to start learning from real usage and avoid building unnecessary complexity.</b> When narrowing down the metrics during the speccing phase, we prioritized some metrics that required a stateful system view, and consequently added an extra feature of backing SQL databases to track state to our metrics generator. But it turned out that in many cases we were able to either deprioritize these metrics or fetch them with higher latency from a separate analytics system instead. If we had built the end-to-end pipeline before tackling the stateful metrics above, we likely would have realized that there were alternative ways to get these metrics without writing complex custom database logic.</p></li><li><p class=""><b class="">Make monitoring components independently usable.</b> Some services obtain significant value from pieces of the monitoring pipeline rather than the full solution, a testament to our success in building the system to be modular.</p><ul class="BlogPost_list__pqos1"><li><p class="">Our fraud detection service also reads from the Kinesis event stream to obtain a full view of all API calls but skips Prometheus by generating its own metrics and sending notifications straight to AlertManager.</p></li><li><p class="">A dynamic load-balancing service queries Prometheus for system health metrics and routes tasks away from failing servers in response.</p></li><li><p class="">We didn’t anticipate this level of reuse, but we’ve taken this as a learning for future designs.</p></li></ul></li><li><p class=""><b class="">Tailor custom aggregation to the narrowest areas which require it.</b> Our event consumer performs roll-ups that would be hard to do at a per-server level, but does not otherwise prevent servers that can perform their own calculations from exporting metrics directly.</p></li><li><p class=""><b class="">Use standard components where possible.</b> Custom components have a higher implementation cost and create increased need for developer education to teach other teams after the system. After we shipped v1 of the new monitoring system, we realized that our teammates had a much harder time working with the custom pipeline than the standard pipeline. Keeping the two separate allowed us to make the most common tasks as simple as possible without sacrificing flexibility where needed.</p></li><li><p class=""><b class="">Developer education is just as important as implementation.</b> We significantly under-invested in documentation about how to interact with the monitoring system, such as wiring it to new services or adding alerts. This became one of the biggest barriers to adoption.</p></li></ul><p class="">In conclusion, we successfully built a monitoring pipeline for a thousands of heterogeneous dependencies using mostly open-source components. While system requirements necessitated a modicum of customization, they suggested that most technical requirements could be met using open-source Prometheus and AlertManager. By minimizing the number of custom services in the pipeline, we increased usability and decreased development cost.</p><p class="">Monitoring is just one of the many challenges we face when integrating with nearly 10,000 financial institutions. If you think you’d enjoy tackling these challenges, take a look at the roles we&#x27;re hiring for!</p><div class="BlogPost_buttonWrapper__QwANk"><style data-emotion="css 1puqhuy">.css-1puqhuy{-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;border:none;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;gap:1px;font-family:Cern,"Helvetica Neue",Helvetica,"Nimbus Sans",system-ui,-apple-system,BlinkMacSystemFont,Arial,"Segoe UI",Roboto,Oxygen,sans-serif;font-weight:600;letter-spacing:-0.75px;line-height:130%;color:#111112!important;white-space:nowrap;padding:0;height:auto;border-radius:100px!important;overflow:hidden;-webkit-text-decoration:none;text-decoration:none;outline:none;--btn-surface-height:48px;--btn-surface-padding-x:24px;--btn-surface-width:100%;}@media (min-width:0px){.css-1puqhuy{font-size:1.8rem;}}@media (min-width:1024px){.css-1puqhuy{font-size:2.0rem;}}.css-1puqhuy .btn-surface{position:relative;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;box-sizing:border-box;height:var(--btn-surface-height);padding:0 var(--btn-surface-padding-x);border-radius:inherit;width:var(--btn-surface-width);}@media (min-width:1440px){.css-1puqhuy{--btn-surface-height:56px;}.css-1puqhuy .btn-surface{line-height:150%;}}.css-1puqhuy:focus-visible{outline-width:2px;outline-color:#043c67;outline-style:solid;outline-offset:3px;}.css-1puqhuy .bg-c{position:absolute;top:0;left:0;bottom:0;right:0;border-radius:inherit;}.css-1puqhuy .bg-c:before{content:"";position:absolute;top:0;left:0;bottom:0;right:0;padding:2px;border-radius:inherit;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:exclude;mask-composite:exclude;background:linear-gradient(45deg, #671877 0%, #2b2b82 50%, #043c67 100%);}.css-1puqhuy .bg{content:"";position:absolute;top:2px;left:2px;right:2px;bottom:2px;background:transparent;border-radius:inherit;}.css-1puqhuy .txt{position:relative;}.css-1puqhuy:hover .bg-c,.css-1puqhuy:active .bg-c{background:rgba(255, 255, 255, 0.50);}.css-1puqhuy:hover .bg-c{box-shadow:0px 0px 14px #5e5ed9;}.css-1puqhuy:active .bg-c,.css-1puqhuy:active .txt{box-shadow:none;-webkit-transition:-webkit-transform 0.1s ease;transition:transform 0.1s ease;-webkit-transform:scale(0.98);-moz-transform:scale(0.98);-ms-transform:scale(0.98);transform:scale(0.98);}.css-1puqhuy:hover .bg-c:before{background:#111112;}</style><a href="https://plaid.com/careers" class="base-Button-root cms-btn-secondary css-1puqhuy"><span class="btn-surface MuiBox-root css-1xdhyk6"><span class="bg-c MuiBox-root css-1xdhyk6"><span class="bg MuiBox-root css-1xdhyk6"></span></span><style data-emotion="css 1j7wj83">.css-1j7wj83{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;gap:1rem;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;width:100%;}.css-1j7wj83 .btn-icon{color:#111112;}</style><span class="MuiStack-root txt css-1j7wj83"> <!-- -->Join us!<!-- --> </span></span></a></div></div></div><p class="Date_date__uXOej Date_updatedDate__JQo_Q">Updated on October 12, 2018</p></div></div></article></div><style data-emotion="css czz0qo">.css-czz0qo{color:#fff;background-color:#00172E;border-radius:0;padding:40px;}@media (min-width:640px){.css-czz0qo{padding:80px;}}@media (min-width:1024px){.css-czz0qo{padding:80px 100px;}}</style><footer id="footer" class="css-czz0qo"><style data-emotion="css 1qaxwzg">.css-1qaxwzg{margin:0 auto;max-width:1730px;padding-top:0;padding-bottom:0;padding-left:0rem;padding-right:0rem;}@media (min-width:0px){.css-1qaxwzg{padding-left:13px;padding-right:13px;}}@media (min-width:640px){.css-1qaxwzg{padding-left:40px;padding-right:40px;}}</style><div class="cms-container css-1qaxwzg"><style data-emotion="css 1wccvsj">.css-1wccvsj{--Grid-columns:24;--Grid-columnSpacing:0.4rem;--Grid-rowSpacing:0.4rem;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;min-width:0;box-sizing:border-box;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-flex-wrap:wrap;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;margin:calc(var(--Grid-rowSpacing) / -2) calc(var(--Grid-columnSpacing) / -2);}@media (min-width:640px){.css-1wccvsj{--Grid-columnSpacing:0.8rem;}}@media (min-width:1024px){.css-1wccvsj{--Grid-columnSpacing:1.6rem;}}@media (min-width:640px){.css-1wccvsj{--Grid-rowSpacing:0.8rem;}}@media (min-width:1024px){.css-1wccvsj{--Grid-rowSpacing:1.6rem;}}</style><nav class="MuiGrid-root MuiGrid-container MuiGrid-direction-xs-row cms-row undefined css-1wccvsj" aria-label="Footer navigation"><style data-emotion="css sc28yt">.css-sc28yt{min-width:0;box-sizing:border-box;padding:calc(var(--Grid-rowSpacing) / 2) calc(var(--Grid-columnSpacing) / 2);}@media (min-width:1024px){.css-sc28yt{-webkit-box-flex:0;-webkit-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-webkit-flex-basis:auto;-ms-flex-preferred-size:auto;flex-basis:auto;width:calc(100% * 22 / var(--Grid-columns));}}@media (min-width:1024px){.css-sc28yt{margin-left:calc(100% * 1 / var(--Grid-columns));}}</style><div class="MuiGrid-root MuiGrid-direction-xs-row MuiGrid-grid-md-22 cms-column undefined css-sc28yt"><style data-emotion="css 1dt9yf1">.css-1dt9yf1{gap:2.4rem;display:grid;grid-template-columns:repeat(2, 1fr);}@media (min-width:640px){.css-1dt9yf1{grid-template-columns:repeat(4, 1fr);}}@media (min-width:1280px){.css-1dt9yf1{grid-template-columns:repeat(5, 1fr);}}</style><div class="MuiBox-root css-1dt9yf1"><style data-emotion="css 1eb4n6c">.css-1eb4n6c{grid-row:1;grid-column:1/span 2;}@media (min-width:640px){.css-1eb4n6c{grid-row:1/span 3;grid-column:1;}}</style><div class="MuiBox-root css-1eb4n6c"><svg xmlns="http://www.w3.org/2000/svg" width="68" height="68" viewBox="0 0 68 68" fill="none"><g filter="url(#filter0_dd_5537_1683)"><path fill-rule="evenodd" clip-rule="evenodd" d="M29.0329 7.60001L14.1767 11.452L10.0837 26.2432L15.204 31.4484L10 36.5677L13.8529 51.4243L28.6439 55.5163L33.8478 50.3959L38.9681 55.6L53.8233 51.748L57.9163 36.9547L52.797 31.7517L58 26.6323L54.1481 11.7757L39.3551 7.68375L34.1532 12.8031L29.0329 7.60001ZM19.9141 14.3002L27.7394 12.27L31.1614 15.7483L26.1709 20.6583L19.9141 14.3002ZM37.0996 15.7919L40.5768 12.3708L48.3684 14.5266L42.0095 20.7825L37.0996 15.7919ZM14.7695 25.0325L16.9253 17.2417L23.18 23.5998L18.1905 28.5098L14.7695 25.0325ZM44.9395 23.7682L51.2984 17.5112L53.3265 25.3378L49.8504 28.7589L44.9395 23.7682ZM29.1133 23.6429L34.1038 18.7329L39.0127 23.7236L34.0232 28.6336L29.1133 23.6429ZM21.1387 31.4915L26.1282 26.5815L31.0391 31.5722L26.0486 36.4822L21.1387 31.4915ZM36.9648 31.6292L41.9544 26.7192L46.8643 31.7099L41.8737 36.6199L36.9648 31.6292ZM14.6699 37.861L18.1481 34.439L23.057 39.4307L16.7 45.6856L14.6699 37.861ZM28.9902 39.4738L33.9808 34.5638L38.8907 39.5544L33.9011 44.4644L28.9902 39.4738ZM44.8164 39.6038L49.807 34.6939L53.229 38.1711L51.0732 45.9619L44.8164 39.6038ZM19.6387 48.6764L25.9966 42.4194L30.9075 47.4101L27.4303 50.8322L19.6387 48.6764ZM36.8359 47.4601L41.8255 42.5501L48.0813 48.9082L40.2569 50.9373L36.8359 47.4601Z" fill="white"></path></g><defs><filter id="filter0_dd_5537_1683" x="0.4" y="0.400006" width="67.2" height="67.2" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB"><feFlood flood-opacity="0" result="BackgroundImageFix"></feFlood><feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"></feColorMatrix><feOffset dy="2.4"></feOffset><feGaussianBlur stdDeviation="4.8"></feGaussianBlur><feComposite in2="hardAlpha" operator="out"></feComposite><feColorMatrix type="matrix" values="0 0 0 0 0.0666667 0 0 0 0 0.0666667 0 0 0 0 0.0705882 0 0 0 0.08 0"></feColorMatrix><feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_5537_1683"></feBlend><feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"></feColorMatrix><feOffset></feOffset><feGaussianBlur stdDeviation="1.2"></feGaussianBlur><feComposite in2="hardAlpha" operator="out"></feComposite><feColorMatrix type="matrix" values="0 0 0 0 0.0666667 0 0 0 0 0.0666667 0 0 0 0 0.0705882 0 0 0 0.02 0"></feColorMatrix><feBlend mode="normal" in2="effect1_dropShadow_5537_1683" result="effect2_dropShadow_5537_1683"></feBlend><feBlend mode="normal" in="SourceGraphic" in2="effect2_dropShadow_5537_1683" result="shape"></feBlend></filter></defs></svg></div><div class="MuiBox-root css-1xdhyk6"><section aria-labelledby="products"><style data-emotion="css dbkrto">.css-dbkrto{font-size:1.6rem;font-weight:700;color:#D8FEF3;}</style><h2 class="MuiBox-root css-dbkrto" id="products">Products</h2><style data-emotion="css o2u51e">.css-o2u51e{margin:0rem;}</style><ul class="MuiBox-root css-o2u51e"><style data-emotion="css d2ts7y">.css-d2ts7y{padding:0rem;list-style:none;}.css-d2ts7y a{color:#fff;}.css-d2ts7y a:hover{color:#63daff;}</style><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/products/auth/">Auth</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/products/identity/">Identity</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/products/balance/">Balance</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/products/signal/">Signal</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/products/transfer/">Transfer</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/products/identity-verification/">Identity Verification</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/products/monitor/">Monitor</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/products/transactions/">Transactions</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/products/investments/">Investments</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/products/liabilities/">Liabilities</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/products/enrich/">Enrich</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/products/assets/">Assets</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/check/income/">Income</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/check/underwriting/">Underwriting</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/plaid-link/">Plaid Link</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/layer/">Layer</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/products/investments-move/">Investments Move</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/products/protect/">Protect</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/products/cash-advance-index/">Cash Advance Index</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/check/lendscore/">LendScore</a></li></ul></section></div><div class="MuiBox-root css-1xdhyk6"><section aria-labelledby="about-us"><h2 class="MuiBox-root css-dbkrto" id="about-us">About us</h2><ul class="MuiBox-root css-o2u51e"><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/company/">Company</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/careers/">Careers</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/contact/">Contact</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/partners/">Partners</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/press/">Press</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/safety/">Safety</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/legal/#privacy-statement">Legal</a></li></ul></section></div><div class="MuiBox-root css-1xdhyk6"><section aria-labelledby="use-cases"><h2 class="MuiBox-root css-dbkrto" id="use-cases">Use cases</h2><ul class="MuiBox-root css-o2u51e"><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/use-cases/kyc-aml-compliance/">AML &amp; KYC</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/industries/auto/">Auto</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/industries/banks-credit-unions/">Banks &amp; credit unions</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/industries/billing-recurring-payments/">Billing &amp; recurring payments</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/use-cases/fraud-and-risk-prevention/">Fraud &amp; risk prevention</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/industries/gaming/">Gaming</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/industries/government-public-sector/">Government &amp; public sector</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/industries/healthcare/">Healthcare</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/use-cases/inbound-bank-payments/">Inbound bank payments</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/industries/mortgage/">Mortgage</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/use-cases/open-finance/">Open finance</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/use-cases/outbound-bank-payments/">Outbound bank payments</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/industries/property-management/">Property management</a></li></ul></section></div><div class="MuiBox-root css-1xdhyk6"><section aria-labelledby="for-consumers"><h2 class="MuiBox-root css-dbkrto" id="for-consumers">For consumers</h2><ul class="MuiBox-root css-o2u51e"><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/trouble-connecting/">Troubleshoot account connection</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/trust-safety/">Trust and safety</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/how-it-works-for-consumers/">How it works</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="//my.plaid.com">Plaid Portal</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="//my.plaid.com/data-subject-request-form">Delete my data</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/legal/#end-user-privacy-policy">End User Privacy Policy</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/legal/#biometric-policy-and-release">Biometric Policy</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="//my.plaid.com/help">FAQs</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/check/consumer-service-center/">Plaid Check Consumer Help Center</a></li></ul></section></div><div class="MuiBox-root css-1xdhyk6"><section aria-labelledby="resources"><h2 class="MuiBox-root css-dbkrto" id="resources">Resources</h2><ul class="MuiBox-root css-o2u51e"><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/pricing/">Pricing</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/global/">Global coverage</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/blog/">Plaid Blog</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/resources/">Industry resources</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/events/effects/">Annual conference</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/customer-stories/">Customer stories</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/intelligent-finance/">Intelligent finance</a></li></ul></section></div><div class="MuiBox-root css-1xdhyk6"><section aria-labelledby="developers"><h2 class="MuiBox-root css-dbkrto" id="developers">Developers</h2><ul class="MuiBox-root css-o2u51e"><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/docs/quickstart/">Quickstart</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/docs/">API documentation</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/docs/api/libraries/">Libraries</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="https://github.com/plaid">GitHub</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/demo/">Product demos</a></li></ul></section></div><div class="MuiBox-root css-1xdhyk6"><section aria-labelledby="for-financial-institutions"><h2 class="MuiBox-root css-dbkrto" id="for-financial-institutions">For financial institutions</h2><ul class="MuiBox-root css-o2u51e"><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/use-cases/open-finance/">Open Finance Solution</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/products/core-exchange/">Core Exchange</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/products/permissions-manager/">Permissions Manager</a></li><li class="MuiBox-root css-d2ts7y"><a class="Link_default__j2D2I css-0" href="/products/app-directory/">App Directory</a></li></ul></section></div></div><style data-emotion="css 18f9tvk">.css-18f9tvk{background-color:transparent;}@media (min-width:0px){.css-18f9tvk{height:37px;}}@media (min-width:640px){.css-18f9tvk{height:48px;}}@media (min-width:1024px){.css-18f9tvk{height:96px;}}</style><div class="spacer css-18f9tvk" data-testid="spacerContainer"></div><style data-emotion="css gsz9kq">.css-gsz9kq{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;gap:2.4rem;}</style><div class="MuiStack-root css-gsz9kq"><style data-emotion="css 6sl0ye">.css-6sl0ye{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;gap:1.6rem;}.css-6sl0ye a{width:32px;}.css-6sl0ye svg{max-width:100%;height:auto;}</style><div class="MuiStack-root hide-for-aeo css-6sl0ye"><a class="Link_default__j2D2I css-0" aria-label="Go to https://www.linkedin.com/company/plaid-/" href="https://www.linkedin.com/company/plaid-/"><div class="lazyload-wrapper "><div style="height:100%" class="lazyload-placeholder"></div></div></a><a class="Link_default__j2D2I css-0" aria-label="Go to https://twitter.com/plaid" href="https://twitter.com/plaid"><div class="lazyload-wrapper "><div style="height:100%" class="lazyload-placeholder"></div></div></a><a class="Link_default__j2D2I css-0" aria-label="Go to https://www.instagram.com/plaid/" href="https://www.instagram.com/plaid/"><div class="lazyload-wrapper "><div style="height:100%" class="lazyload-placeholder"></div></div></a></div><style data-emotion="css 1mb3836">.css-1mb3836{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;gap:2.4rem;}@media (min-width:0px){.css-1mb3836{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}}@media (min-width:640px){.css-1mb3836{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;}}@media (min-width:0px){.css-1mb3836{-webkit-align-items:start;-webkit-box-align:start;-ms-flex-align:start;align-items:start;}}@media (min-width:640px){.css-1mb3836{-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}}</style><div class="MuiStack-root css-1mb3836"><div class="MuiBox-root css-1xdhyk6">© <!-- -->2026<!-- --> <!-- -->Plaid Inc.</div><style data-emotion="css z8ihgw">.css-z8ihgw button{color:inherit;-webkit-transition:color 0.1s ease-in-out;transition:color 0.1s ease-in-out;}.css-z8ihgw button:hover{color:#63daff;}</style><style data-emotion="css 1g3ekc7">.css-1g3ekc7 button{color:inherit;-webkit-transition:color 0.1s ease-in-out;transition:color 0.1s ease-in-out;}.css-1g3ekc7 button:hover{color:#63daff;}</style><style data-emotion="css e2c4iw">.css-e2c4iw button{color:inherit;-webkit-transition:color 0.1s ease-in-out;transition:color 0.1s ease-in-out;}.css-e2c4iw button:hover{color:#63daff;}</style><div class="MuiBox-root css-e2c4iw"><div class="LocaleSwitch_wrapper__9Dvg7 hide-for-aeo" data-testid="locale-switch"><i class="Icons-module_icon__9LCqQ"><svg width="24" height="24" fill="none" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="presentation"><circle cx="12" cy="10" r="2" stroke="currentColor" stroke-width="1.5"></circle><path d="M18 10c0 3.314-6 10-6 10s-6-6.686-6-10a6 6 0 1112 0z" stroke="currentColor" stroke-width="1.5"></path></svg></i><div class="Dropdown-module_dropdownWrapper__0WlN9 LocaleSwitch_localeSwitch__Nsx4C"><button class="Touchable-module_resetButtonOrLink__noLuP Touchable-module_size16__ejsJb PrimaryLink-module_baseLink__vzdHZ PrimaryLink-module_primaryLink__cF3MP" type="button" aria-controls=":R2landam:" aria-expanded="false" aria-haspopup="true" aria-label="Select locale, undefined">Choose...<i class="Icons-module_icon__9LCqQ DropdownLink-module_chevron__72L7-"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true" role="presentation"><g fill="none" fill-rule="evenodd"><path d="M0 0h24v24H0z"></path><path fill="currentColor" d="M12 16.06l-5.53-5.53 1.06-1.06L12 13.94l4.47-4.47 1.06 1.06z"></path></g></svg></i></button><div role="menu" id=":R2landam:" class="Dropdown-module_dropdown__QOREt"><ul class="Dropdown-module_list__zR37N"><li class="Dropdown-module_item__kLzhO"><button class="Touchable-module_resetButtonOrLink__noLuP Dropdown-module_touchable__d4L71" type="button" label="United States" value="en-us" icon="[object Object]"><span class="Dropdown-module_touchableContent__B6qnD"><i class="Flags-module_icon__LzeWs Dropdown-module_icon__6dnUu"><svg width="25" height="25" fill="none" xmlns="http://www.w3.org/2000/svg"><g><path d="M24.5 4H.5v15.998h24V4z" fill="#fff"></path><path d="M24.5 6.002H.5v2.001h24V6.002zM24.5 10H.5v2.002h24V10zM24.5 14.003H.5v2.002h24v-2.002zM24.5 18.002H.5v2.001h24v-2.002z" fill="#D80027"></path><path d="M12.5 4H.5v8.002h12V4z" fill="#2E52B2"></path><path d="M5.178 7.53l-.192.595h-.624l.507.366-.197.595.506-.366.506.366-.192-.595.506-.366H5.37l-.192-.595zM5.37 10.272l-.192-.595-.192.595h-.624l.507.365-.197.596.506-.366.506.366-.192-.596.506-.365H5.37zM2.731 10.272l-.192-.595-.197.595H1.72l.506.365-.192.596.506-.366.502.366-.193-.596.507-.365H2.73zM2.54 7.53l-.198.595H1.72l.506.366-.192.595.506-.366.502.366-.193-.595.507-.366H2.73L2.54 7.53zM5.178 5.383l-.192.595h-.624l.507.37-.197.596.506-.37.506.37-.192-.596.506-.37H5.37l-.192-.595zM2.54 5.383l-.198.595H1.72l.506.37-.192.596.506-.37.502.37-.193-.596.507-.37H2.73l-.192-.595zM7.822 7.53l-.192.595h-.628l.506.366-.192.595.506-.366.506.366-.197-.595.507-.366h-.624l-.192-.595zM8.014 10.272l-.192-.595-.192.595h-.628l.506.365-.192.596.506-.366.506.366-.197-.596.507-.365h-.624zM10.658 10.272l-.197-.595-.192.595h-.624l.507.365-.193.596.502-.366.506.366-.192-.596.506-.365h-.623zM10.461 7.53l-.192.595h-.624l.507.366-.193.595.502-.366.506.366-.192-.595.506-.366h-.623l-.197-.595zM7.822 5.383l-.192.595h-.628l.506.37-.192.596.506-.37.506.37-.197-.596.507-.37h-.624l-.192-.595zM10.461 5.383l-.192.595h-.624l.507.37-.193.596.502-.37.506.37-.192-.596.506-.37h-.623l-.197-.595z" fill="#fff"></path></g><path d="M.5 4h24v16.003H.5z" stroke="#111"></path></svg></i><span class="Text-module_fontSize16__8vtkW Text-module_textContrastHigh__lTndd">United States</span></span></button></li><li class="Dropdown-module_item__kLzhO"><button class="Touchable-module_resetButtonOrLink__noLuP Dropdown-module_touchable__d4L71" type="button" label="United Kingdom" value="en-gb" icon="[object Object]"><span class="Dropdown-module_touchableContent__B6qnD"><i class="Flags-module_icon__LzeWs Dropdown-module_icon__6dnUu"><svg width="25" height="24" fill="none" xmlns="http://www.w3.org/2000/svg"><g><path d="M24.5 4H.5v15.998h24V4z" fill="#fff"></path><path d="M14 4h-3v6.502H.5v3H11v6.496h3v-6.496h10.5v-3H14V4z" fill="#D80027"></path><path d="m18.96 14.781l5.54 3.08v-3.08h-5.54zm-3.849 0l9.39 5.217v-1.471l-6.737-3.746h-2.653zm6.886 5.217l-6.886-3.825v3.825h6.886z" fill="#0052B4"></path><path d="m15.111 14.781l9.39 5.217v-1.471l-6.737-3.746h-2.653z" fill="#fff"></path><path d="m15.111 14.781l9.39 5.217v-1.471l-6.737-3.746h-2.653z" fill="#D80027"></path><path d="M4.733 14.781L.5 17.134v-2.353h4.233zM9.89 15.447v4.551H1.694l8.194-4.551z" fill="#0052B4"></path><path d="M7.236 14.781L.5 18.527v1.471l9.39-5.217H7.235z" fill="#D80027"></path><path d="M6.04 9.217L.5 6.137v3.08h5.54zM9.89 9.217L.5 4v1.477l6.736 3.74h2.653zM3.003 4L9.89 7.83V4H3.003z" fill="#0052B4"></path><path d="M9.89 9.217L.5 4v1.477l6.736 3.74h2.653z" fill="#fff"></path><path d="M9.89 9.217L.5 4v1.477l6.736 3.74h2.653z" fill="#D80027"></path><path d="M20.267 9.217L24.5 6.864v2.353h-4.233zM15.111 8.556V4h8.194L15.11 8.556z" fill="#0052B4"></path><path d="M17.764 9.217l6.736-3.74V4l-9.389 5.217h2.653z" fill="#D80027"></path></g><path d="M.5 4h24v15.998H.5z" stroke="#111"></path></svg></i><span class="Text-module_fontSize16__8vtkW Text-module_textContrastHigh__lTndd">United Kingdom</span></span></button></li><li class="Dropdown-module_item__kLzhO"><button class="Touchable-module_resetButtonOrLink__noLuP Dropdown-module_touchable__d4L71" type="button" label="European Union" value="en-eu" icon="[object Object]"><span class="Dropdown-module_touchableContent__B6qnD"><i class="Flags-module_icon__LzeWs Dropdown-module_icon__6dnUu"><svg width="25" height="24" fill="none" xmlns="http://www.w3.org/2000/svg"><g><path d="M24.5 4H.5v16h24V4z" fill="#0052B4"></path><path d="M12.5 7.5l.24.74h.77l-.62.45.24.74-.63-.46-.63.46.24-.74-.62-.45h.77l.24-.74zM9.32 8.82l.69.35.55-.55-.12.77.69.35-.77.12-.12.77-.35-.7-.77.13.55-.55-.35-.69zM8 12l.74-.24v-.77l.45.62.74-.24-.46.63.46.63-.74-.24-.45.62v-.77L8 12zM9.32 15.18l.35-.69-.55-.55.77.12.35-.68.12.76.77.12-.69.35.12.77-.55-.55-.69.35zM12.5 16.5l-.24-.74h-.77l.62-.45-.24-.74.63.46.63-.46-.24.74.62.45h-.77l-.24.74zM15.68 15.18l-.69-.35-.55.55.12-.77-.68-.35.76-.12.12-.76.35.68.77-.12-.55.55.35.69zM17 12l-.74.24v.77l-.45-.62-.74.24.46-.63-.46-.63.74.24.45-.62v.77L17 12zM15.68 8.82l-.35.69.55.55-.77-.13-.35.7-.12-.77-.76-.12.68-.35-.12-.77.55.55.69-.35z" fill="#FFDA44"></path></g><path d="M.5 4h24v15.998H.5z" stroke="#111"></path></svg></i><span class="Text-module_fontSize16__8vtkW Text-module_textContrastHigh__lTndd">European Union</span></span></button></li></ul></div></div></div></div><div class="MuiBox-root css-e2c4iw"></div></div></div></div></nav></div></footer></div></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{"formOutageNotice":null,"metadata":{"tags":[],"concepts":[]},"sys":{"space":{"sys":{"type":"Link","linkType":"Space","id":"zucqsg1ttqqy"}},"id":"18YigtmhzIq5UY1t5BIipE","type":"Entry","createdAt":"2020-12-11T20:38:32.257Z","updatedAt":"2020-12-11T20:38:32.257Z","environment":{"sys":{"id":"master","type":"Link","linkType":"Environment"}},"publishedVersion":1,"revision":1,"contentType":{"sys":{"type":"Link","linkType":"ContentType","id":"blogPostTemplate"}},"locale":"en-US"},"fields":{"metaTitle":"Scaling a monitoring platform to over 9,600 bank integrations","pageSlug":"scaling-a-monitoring-platform","metaDescription":"At Plaid, one of the things we do is we maintain integrations with more than\n9,600 banks. Our core promise to customers is providing reliable and homogenous\n...","excerpt":"At Plaid, one of the things we do is we maintain integrations with more than 9,600 banks. Our core promise to customers is providing reliable and homogenous data from all of these financial institutions. From an operational perspective, that requires us to monitor 9,600 external dependencies on top of...","components":[{"metadata":{"tags":[],"concepts":[]},"sys":{"space":{"sys":{"type":"Link","linkType":"Space","id":"zucqsg1ttqqy"}},"id":"7eb94L6M6N0r3EL1NuzDfm","type":"Entry","createdAt":"2020-12-11T20:38:31.333Z","updatedAt":"2020-12-11T20:38:31.333Z","environment":{"sys":{"id":"master","type":"Link","linkType":"Environment"}},"publishedVersion":1,"revision":1,"contentType":{"sys":{"type":"Link","linkType":"ContentType","id":"richTextComponent"}},"locale":"en-US"},"fields":{"internalTitle":"Scaling a monitoring platform to over 9,600 bank integrations","body":{"nodeType":"document","data":{},"content":[{"content":[{"data":{},"marks":[],"nodeType":"text","value":"At Plaid, one of the things we do is we maintain integrations with more than 9,600 banks. Our core promise to customers is providing reliable and homogenous data from all of these financial institutions. From an operational perspective, that requires us to monitor 9,600 external dependencies on top of our own infrastructure. This is an inside look at monitoring at Plaid."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"As the number of integrations grew from a handful to nearly ten thousand over the last few years, we increasingly found that we had outgrown our legacy, logs-based monitoring system. But given the diversity of institutions, we struggled to determine what the right replacement would be and how to get it built. This post dives into how we answered these questions and what we had learned once we were done."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"Determining Requirements"}],"data":{},"nodeType":"heading-3"},{"content":[{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"Step 1: Understanding the Problem"}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"Our primary monitoring challenge lies in the combination of integration count with the heterogeneity of the integrations monitored. The financial institutions with which we integrate range from the largest banks in the United States to small, regional credit unions. In practice, this means that similar metrics have different meanings across integrations. While any monitoring system should be able to handle differential configuration, doing so across a large number of metrics becomes more complicated."}],"data":{},"nodeType":"paragraph"},{"content":[],"nodeType":"embedded-entry-block","data":{"target":{"metadata":{"tags":[],"concepts":[]},"sys":{"space":{"sys":{"type":"Link","linkType":"Space","id":"zucqsg1ttqqy"}},"id":"7EHTtDaNTDP4aC8acVSQzn","type":"Entry","createdAt":"2020-12-11T20:38:27.766Z","updatedAt":"2020-12-11T20:38:27.766Z","environment":{"sys":{"id":"master","type":"Link","linkType":"Environment"}},"publishedVersion":1,"revision":1,"contentType":{"sys":{"type":"Link","linkType":"ContentType","id":"image"}},"locale":"en-US"},"fields":{"title":"Table--1--1.png","image":{"metadata":{"tags":[],"concepts":[]},"sys":{"space":{"sys":{"type":"Link","linkType":"Space","id":"zucqsg1ttqqy"}},"id":"1yPMn2LWYXL7ztsRVOOz6h","type":"Asset","createdAt":"2020-12-11T20:38:27.199Z","updatedAt":"2020-12-11T20:38:27.199Z","environment":{"sys":{"id":"master","type":"Link","linkType":"Environment"}},"publishedVersion":2,"revision":1,"locale":"en-US"},"fields":{"title":"Table--1--1.png","description":"Table--1--1","file":{"url":"https://images.ctfassets.net/zucqsg1ttqqy/1yPMn2LWYXL7ztsRVOOz6h/68313519a849d8430824ce2811d0e8a4/Table--1--1.png","details":{"size":48304,"image":{"width":1280,"height":310}},"fileName":"Table--1--1.png","contentType":"image/png"}}},"caption":"","url":"","fullWidth":false}}}},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"In Hour 1, both integrations look fine; there are some failed linkages, which is expected since users often misremember their password on the first try. In Hour 2, however, we see that all the linkages for Tattersall Federal Credit Union have failed, but the low count makes it hard to tell whether this is a problem with the integration or just a string of incorrect passwords. More generally, due to varying traffic levels, it makes more sense to monitor success/failure counts for some integrations and percentages for others. We also look beyond success/failure metrics for failure modes such as latency spikes and data quality degradation."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"Our ultimate monitoring solution needed to be able to support cases like this across all 9,600 of Plaid’s supported institutions."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"Step 2: Do We Need a Rewrite?"}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"The first step in building out a new monitoring pipeline was convincing ourselves that we needed a new system—that our legacy system could not scale for the next year of growth."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"This legacy monitoring system, which we’d implemented more than two years ago when we had only a handful of in-house integrations, consisted of Nagios sending queries to our ElasticSearch log cluster and forwarding alerts to PagerDuty."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"But this system lacked the customizability to extend cleanly as our system grew, and we found ourselves extending it with duct tape in the form of an ever-growing configuration file. Here are some of the problems we faced:"}],"data":{},"nodeType":"paragraph"},{"content":[{"content":[{"content":[{"data":{},"marks":[],"nodeType":"text","value":"As our traffic grew, we were forced to accept dwindling log retention periods in the ElasticSearch cluster"}],"data":{},"nodeType":"paragraph"}],"data":{},"nodeType":"list-item"},{"content":[{"content":[{"data":{},"marks":[],"nodeType":"text","value":"Log queries could measure the success rate during this time interval, but there was nowhere to track metrics over time past the retention period in order to alert against gradual changes"}],"data":{},"nodeType":"paragraph"}],"data":{},"nodeType":"list-item"},{"content":[{"content":[{"data":{},"marks":[],"nodeType":"text","value":"The configuration of alerting thresholds was manual on a per-institution basis"}],"data":{},"nodeType":"paragraph"}],"data":{},"nodeType":"list-item"},{"content":[{"content":[{"data":{},"marks":[],"nodeType":"text","value":"Otherwise innocuous logging changes risked breaking monitoring queries"}],"data":{},"nodeType":"paragraph"}],"data":{},"nodeType":"list-item"},{"content":[{"content":[{"data":{},"marks":[],"nodeType":"text","value":"The same logs were used for business analytics and quality of service, despite very different latency and granularity requirements between the two"}],"data":{},"nodeType":"paragraph"}],"data":{},"nodeType":"list-item"}],"data":{},"nodeType":"unordered-list"},{"content":[{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"Step 3: Determining Metrics"}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"Having convinced ourselves that our existing system would not allow us to adequately monitor all of our bank integrations, we moved to the second stage of the process: "},{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"identifying a full list of areas we would ideally want to monitor."},{"data":{},"marks":[],"nodeType":"text","value":" As discussed above, an especially relevant challenge was varying degrees of traffic per bank—thousands of requests per second for some but only a couple of dozen per day for others. Monitoring a low-throughput system is a very different problem: The orders-of-magnitude difference between institutions challenges traditional assumptions about success and failure rates."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"Creating our metrics wishlist made the complexity of our domain evident. Working over different metric types (such as absolute vs. percentage failures), error types, and services where errors could be thrown, we ended with over 20 categories of metrics. We bucketed these metrics into high/medium/low priority based on customer impact and cost of instrumentation, and focused our implementation on only the high-priority areas."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"Step 4: Technical Requirements"}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"Finally, given the product metrics to monitor, we determined the system’s technical requirements:"}],"data":{},"nodeType":"paragraph"},{"content":[{"content":[{"content":[{"data":{},"marks":[],"nodeType":"text","value":"Scalability: We needed to handle a large metric count due to the multiplicative factor of [9.6k banks * N metrics each], so we wanted a system that could handle a high cardinality of metrics"}],"data":{},"nodeType":"paragraph"}],"data":{},"nodeType":"list-item"},{"content":[{"content":[{"data":{},"marks":[],"nodeType":"text","value":"Latency: We set ourselves goals of at most 30s lag from event to metric creation, and 1s query time"}],"data":{},"nodeType":"paragraph"}],"data":{},"nodeType":"list-item"},{"content":[{"content":[{"data":{},"marks":[],"nodeType":"text","value":"Usability: Engineers should be able to easily update or create metrics and alerts with a minimum of monitoring-specific domain knowledge"}],"data":{},"nodeType":"paragraph"}],"data":{},"nodeType":"list-item"}],"data":{},"nodeType":"unordered-list"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"Then we researched options for each stage of the system:"}],"data":{},"nodeType":"paragraph"},{"content":[{"content":[{"content":[{"data":{},"marks":[],"nodeType":"text","value":"Event Transport: We chose "},{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"Kinesis"},{"data":{},"marks":[],"nodeType":"text","value":" (over Logstash and SQS) due to its combination of buffering in case of consumer downtime, allowance for multiple readers for event-stream reuse, and existing client libraries"}],"data":{},"nodeType":"paragraph"}],"data":{},"nodeType":"list-item"},{"content":[{"content":[{"data":{},"marks":[],"nodeType":"text","value":"Time Series Database: We chose "},{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"Prometheus"},{"data":{},"marks":[],"nodeType":"text","value":" because it met our scaling needs without requiring an external dependency like HBase or an enterprise edition; other options included Graphite, OpenTSDB, and InfluxDB"}],"data":{},"nodeType":"paragraph"}],"data":{},"nodeType":"list-item"},{"content":[{"content":[{"data":{},"marks":[],"nodeType":"text","value":"Alerting: We chose "},{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"Alertmanager"},{"data":{},"marks":[],"nodeType":"text","value":" over Nagios and Grafana due to the amount of flexibility it allowed for notification and alerting rules—for example, grouping and suppressing alerts based on tags—even though it required configuration via config files instead of a UI"}],"data":{},"nodeType":"paragraph"}],"data":{},"nodeType":"list-item"},{"content":[{"content":[{"data":{},"marks":[],"nodeType":"text","value":"Visualization: We chose "},{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"Grafana"},{"data":{},"marks":[],"nodeType":"text","value":" because it could integrate not only with Prometheus, but also with other sources of data at Plaid (namely, CloudWatch metrics and ElasticSearch logs)"}],"data":{},"nodeType":"paragraph"}],"data":{},"nodeType":"list-item"}],"data":{},"nodeType":"unordered-list"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"Implementation"}],"data":{},"nodeType":"heading-3"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"Now we could wire up all of those stages into a full pipeline. Working through system requirements taught us that we needed custom components for the sake of metrics generation, but not for scalability."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"In particular, Prometheus operates on a pull-based model, where it queries individual servers for metrics on a regular basis; this allows for redundancy by running multiple independent Prometheus servers. For example, individual API servers might export an api_call_count metric. Then, the Prometheus query sum(rate(api_call_count[5m])) adds up the rate of API calls over all servers."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"The pull-based model works well for metrics which can be easily aggregated across multiple servers. But it doesn’t always work well for low throughput events where each server sees only partial data. For example, each task runner may only see a handful of requests for Tartan Federal Credit Union over the course of a day, making it impossible for that task runner to individually generate an accurate latency histogram."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"As a result, we added custom components to enable metrics generation from a full event stream. For improved usability, we built a monitoring pipeline which could be used either with or without those custom components."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"Standard Pipeline"}],"data":{},"nodeType":"heading-3"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"On the one hand, services that can export straightforward metrics by themselves make use of a "},{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"standard metrics pipeline"},{"data":{},"marks":[],"nodeType":"text","value":":"}],"data":{},"nodeType":"paragraph"},{"content":[],"nodeType":"embedded-entry-block","data":{"target":{"metadata":{"tags":[],"concepts":[]},"sys":{"space":{"sys":{"type":"Link","linkType":"Space","id":"zucqsg1ttqqy"}},"id":"34nx88p8TzjSUrjcyicfIG","type":"Entry","createdAt":"2020-12-11T20:38:28.127Z","updatedAt":"2020-12-11T20:38:28.127Z","environment":{"sys":{"id":"master","type":"Link","linkType":"Environment"}},"publishedVersion":1,"revision":1,"contentType":{"sys":{"type":"Link","linkType":"ContentType","id":"image"}},"locale":"en-US"},"fields":{"title":"Diagram-1.png","image":{"metadata":{"tags":[],"concepts":[]},"sys":{"space":{"sys":{"type":"Link","linkType":"Space","id":"zucqsg1ttqqy"}},"id":"4Xc7OUYspsL9KJM4IlP5BS","type":"Asset","createdAt":"2020-12-11T20:38:27.378Z","updatedAt":"2020-12-11T20:38:27.378Z","environment":{"sys":{"id":"master","type":"Link","linkType":"Environment"}},"publishedVersion":2,"revision":1,"locale":"en-US"},"fields":{"title":"Diagram-1.png","description":"Diagram-1.png","file":{"url":"https://images.ctfassets.net/zucqsg1ttqqy/4Xc7OUYspsL9KJM4IlP5BS/be1cf0b6162063dca9f1520e773024b8/Diagram-1.png","details":{"size":87005,"image":{"width":1618,"height":412}},"fileName":"Diagram-1.png","contentType":"image/png"}}},"caption":"The monitoring pipeline for services not requiring custom metric generation","url":"","fullWidth":false}}}},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"This pipeline leverages Prometheus to poll services for metrics and forward alerts to AlertManager, which sends notifications to PagerDuty and Slack. Engineers using the standard pipeline do not need to interact with or understand custom components, and often do not need to even add instrumentation. Instead, we automatically export metrics from many of our shared libraries, such as server middleware or database transaction wrappers."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"This pipeline could handle all of our initial scaling requirements—such as hundreds of thousands of metrics—out of the box while being compatible with custom metric generation."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"Custom Pipeline"}],"data":{},"nodeType":"heading-3"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"Meanwhile, other services use the "},{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"custom metrics pipeline"},{"data":{},"marks":[],"nodeType":"text","value":", which has the following additions:"}],"data":{},"nodeType":"paragraph"},{"content":[{"content":[{"content":[{"data":{},"marks":[],"nodeType":"text","value":"Services send events to an Amazon Kinesis stream instead of generating their own metrics. The event types are specified by protobufs, which has the extra benefit of providing a well-defined event stream which other services can read"}],"data":{},"nodeType":"paragraph"}],"data":{},"nodeType":"list-item"},{"content":[{"content":[{"data":{},"marks":[],"nodeType":"text","value":"An event consumer with its own database reads the Kinesis stream, generates metrics, and exposes those metrics to Prometheus. This lets us add custom metric transformations as well. This ability to easily add or plug in custom, advanced metrics is critical to the system’s adaptability to domain-specific situations"}],"data":{},"nodeType":"paragraph"}],"data":{},"nodeType":"list-item"}],"data":{},"nodeType":"unordered-list"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"After this point, Prometheus pulls the metrics and the rest of the pipeline is unchanged."}],"data":{},"nodeType":"paragraph"},{"content":[],"nodeType":"embedded-entry-block","data":{"target":{"metadata":{"tags":[],"concepts":[]},"sys":{"space":{"sys":{"type":"Link","linkType":"Space","id":"zucqsg1ttqqy"}},"id":"TjGnRzmFzu02U1bmFUeYu","type":"Entry","createdAt":"2020-12-11T20:38:27.830Z","updatedAt":"2020-12-11T20:38:27.830Z","environment":{"sys":{"id":"master","type":"Link","linkType":"Environment"}},"publishedVersion":1,"revision":1,"contentType":{"sys":{"type":"Link","linkType":"ContentType","id":"image"}},"locale":"en-US"},"fields":{"title":"Diagram-2.png","image":{"metadata":{"tags":[],"concepts":[]},"sys":{"space":{"sys":{"type":"Link","linkType":"Space","id":"zucqsg1ttqqy"}},"id":"3iv2EiAfQzQUCCQiICnPBC","type":"Asset","createdAt":"2020-12-11T20:38:27.124Z","updatedAt":"2020-12-11T20:38:27.124Z","environment":{"sys":{"id":"master","type":"Link","linkType":"Environment"}},"publishedVersion":2,"revision":1,"locale":"en-US"},"fields":{"title":"Diagram-2.png","description":"Diagram-2.png","file":{"url":"https://images.ctfassets.net/zucqsg1ttqqy/3iv2EiAfQzQUCCQiICnPBC/d3077a90b71de4f4314b5eeb1f4eb361/Diagram-2.png","details":{"size":120960,"image":{"width":1618,"height":542}},"fileName":"Diagram-2.png","contentType":"image/png"}}},"caption":"The monitoring pipeline for services requiring custom metrics generation","url":"","fullWidth":false}}}},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"Outcomes and Ongoing Work"}],"data":{},"nodeType":"heading-3"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"Nine months later, the monitoring system has reached:"}],"data":{},"nodeType":"paragraph"},{"content":[{"content":[{"content":[{"data":{},"marks":[],"nodeType":"text","value":"More than 700 events per second processed"}],"data":{},"nodeType":"paragraph"}],"data":{},"nodeType":"list-item"},{"content":[{"content":[{"data":{},"marks":[],"nodeType":"text","value":"190k+ metrics exported"}],"data":{},"nodeType":"paragraph"}],"data":{},"nodeType":"list-item"},{"content":[{"content":[{"data":{},"marks":[],"nodeType":"text","value":"17 services monitored"}],"data":{},"nodeType":"paragraph"}],"data":{},"nodeType":"list-item"},{"content":[{"content":[{"data":{},"marks":[],"nodeType":"text","value":"31 engineers who have contributed monitoring configuration changes (on a team of 45)"}],"data":{},"nodeType":"paragraph"}],"data":{},"nodeType":"list-item"},{"content":[{"content":[{"data":{},"marks":[],"nodeType":"text","value":"\u003c 5 second average delay from events to metric generation"}],"data":{},"nodeType":"paragraph"}],"data":{},"nodeType":"list-item"}],"data":{},"nodeType":"unordered-list"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"Continuing work on the monitoring system has happened in multiple areas:"}],"data":{},"nodeType":"paragraph"},{"content":[{"content":[{"content":[{"data":{},"marks":[{"type":"italic"}],"nodeType":"text","value":"Scaling"},{"data":{},"marks":[],"nodeType":"text","value":": as the number of metrics grew, we added federation and pre-aggregation of metrics to Prometheus"}],"data":{},"nodeType":"paragraph"}],"data":{},"nodeType":"list-item"},{"content":[{"content":[{"data":{},"marks":[{"type":"italic"}],"nodeType":"text","value":"Tooling:"},{"data":{},"marks":[],"nodeType":"text","value":" while Prometheus makes it easy to set alerts across entire categories of metrics, a follow-up project built more tooling to templatize tuning alerts on a per-integration basis without having to copy-paste alert configuration"}],"data":{},"nodeType":"paragraph"}],"data":{},"nodeType":"list-item"},{"content":[{"content":[{"data":{},"marks":[{"type":"italic"}],"nodeType":"text","value":"Developer education"},{"data":{},"marks":[],"nodeType":"text","value":": we underinvested initially given the number of monitoring components, making it hard for other developers to understand how they should interact with the monitoring system. Improved education has taken the form of internal tech talks and documentation on how to use the system"}],"data":{},"nodeType":"paragraph"}],"data":{},"nodeType":"list-item"}],"data":{},"nodeType":"unordered-list"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"Over time, the monitoring pipeline has been used by an increasing number of services and teams; this means we can instrument services more thoroughly than before and catch regressions faster. Though a few services take advantage of the custom metrics pipeline, most instead export server metrics for the standard pipeline. We are also integrating the monitoring pipeline more directly into other parts of our workflow; for example, filing and autotriaging JIRA issues for regression and automatically gating deployments on monitoring."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"What We Learned"}],"data":{},"nodeType":"heading-3"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"We ended up with these key takeaways from building the system and watching its initial usage:"}],"data":{},"nodeType":"paragraph"},{"content":[{"content":[{"content":[{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"Build the end-to-end pipeline first to start learning from real usage and avoid building unnecessary complexity."},{"data":{},"marks":[],"nodeType":"text","value":" When narrowing down the metrics during the speccing phase, we prioritized some metrics that required a stateful system view, and consequently added an extra feature of backing SQL databases to track state to our metrics generator. But it turned out that in many cases we were able to either deprioritize these metrics or fetch them with higher latency from a separate analytics system instead. If we had built the end-to-end pipeline before tackling the stateful metrics above, we likely would have realized that there were alternative ways to get these metrics without writing complex custom database logic."}],"data":{},"nodeType":"paragraph"}],"data":{},"nodeType":"list-item"},{"content":[{"content":[{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"Make monitoring components independently usable."},{"data":{},"marks":[],"nodeType":"text","value":" Some services obtain significant value from pieces of the monitoring pipeline rather than the full solution, a testament to our success in building the system to be modular."}],"data":{},"nodeType":"paragraph"},{"content":[{"content":[{"content":[{"data":{},"marks":[],"nodeType":"text","value":"Our fraud detection service also reads from the Kinesis event stream to obtain a full view of all API calls but skips Prometheus by generating its own metrics and sending notifications straight to AlertManager."}],"data":{},"nodeType":"paragraph"}],"data":{},"nodeType":"list-item"},{"content":[{"content":[{"data":{},"marks":[],"nodeType":"text","value":"A dynamic load-balancing service queries Prometheus for system health metrics and routes tasks away from failing servers in response."}],"data":{},"nodeType":"paragraph"}],"data":{},"nodeType":"list-item"},{"content":[{"content":[{"data":{},"marks":[],"nodeType":"text","value":"We didn’t anticipate this level of reuse, but we’ve taken this as a learning for future designs."}],"data":{},"nodeType":"paragraph"}],"data":{},"nodeType":"list-item"}],"data":{},"nodeType":"unordered-list"}],"data":{},"nodeType":"list-item"},{"content":[{"content":[{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"Tailor custom aggregation to the narrowest areas which require it."},{"data":{},"marks":[],"nodeType":"text","value":" Our event consumer performs roll-ups that would be hard to do at a per-server level, but does not otherwise prevent servers that can perform their own calculations from exporting metrics directly."}],"data":{},"nodeType":"paragraph"}],"data":{},"nodeType":"list-item"},{"content":[{"content":[{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"Use standard components where possible."},{"data":{},"marks":[],"nodeType":"text","value":" Custom components have a higher implementation cost and create increased need for developer education to teach other teams after the system. After we shipped v1 of the new monitoring system, we realized that our teammates had a much harder time working with the custom pipeline than the standard pipeline. Keeping the two separate allowed us to make the most common tasks as simple as possible without sacrificing flexibility where needed."}],"data":{},"nodeType":"paragraph"}],"data":{},"nodeType":"list-item"},{"content":[{"content":[{"data":{},"marks":[{"type":"bold"}],"nodeType":"text","value":"Developer education is just as important as implementation."},{"data":{},"marks":[],"nodeType":"text","value":" We significantly under-invested in documentation about how to interact with the monitoring system, such as wiring it to new services or adding alerts. This became one of the biggest barriers to adoption."}],"data":{},"nodeType":"paragraph"}],"data":{},"nodeType":"list-item"}],"data":{},"nodeType":"unordered-list"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"In conclusion, we successfully built a monitoring pipeline for a thousands of heterogeneous dependencies using mostly open-source components. While system requirements necessitated a modicum of customization, they suggested that most technical requirements could be met using open-source Prometheus and AlertManager. By minimizing the number of custom services in the pipeline, we increased usability and decreased development cost."}],"data":{},"nodeType":"paragraph"},{"content":[{"data":{},"marks":[],"nodeType":"text","value":"Monitoring is just one of the many challenges we face when integrating with nearly 10,000 financial institutions. If you think you’d enjoy tackling these challenges, take a look at the roles we're hiring for!"}],"data":{},"nodeType":"paragraph"},{"content":[],"nodeType":"embedded-entry-block","data":{"target":{"metadata":{"tags":[],"concepts":[]},"sys":{"space":{"sys":{"type":"Link","linkType":"Space","id":"zucqsg1ttqqy"}},"id":"2vnfK6fp6VU1bBjE2jS4W1","type":"Entry","createdAt":"2020-12-11T20:38:29.404Z","updatedAt":"2020-12-11T20:38:29.404Z","environment":{"sys":{"id":"master","type":"Link","linkType":"Environment"}},"publishedVersion":1,"revision":1,"contentType":{"sys":{"type":"Link","linkType":"ContentType","id":"button"}},"locale":"en-US"},"fields":{"text":"Join us!","type":"Secondary","url":"https://plaid.com/careers"}}}}]}}}],"tags":[{"metadata":{"tags":[],"concepts":[]},"sys":{"space":{"sys":{"type":"Link","linkType":"Space","id":"zucqsg1ttqqy"}},"id":"e4YIRiQBlEphqnpFSzEyE","type":"Entry","createdAt":"2020-12-11T20:30:12.859Z","updatedAt":"2023-06-06T22:09:09.270Z","environment":{"sys":{"id":"master","type":"Link","linkType":"Environment"}},"publishedVersion":4,"revision":4,"contentType":{"sys":{"type":"Link","linkType":"ContentType","id":"tag"}},"locale":"en-US"},"fields":{"tag":"engineering"}}],"authors":[{"metadata":{"tags":[],"concepts":[]},"sys":{"space":{"sys":{"type":"Link","linkType":"Space","id":"zucqsg1ttqqy"}},"id":"3fk66HmxAXssbiVzzGAWoE","type":"Entry","createdAt":"2020-12-11T20:29:23.724Z","updatedAt":"2020-12-11T20:29:23.724Z","environment":{"sys":{"id":"master","type":"Link","linkType":"Environment"}},"publishedVersion":1,"revision":1,"contentType":{"sys":{"type":"Link","linkType":"ContentType","id":"author"}},"locale":"en-US"},"fields":{"name":"Joy Zheng \u0026 Jeeyoung Kim "}}],"published":"2018-06-28T13:45:00.000Z","updated":"2018-10-12T00:05:43.000Z"},"preview":false},"__N_SSG":true},"page":"/blog/[post]","query":{"post":"scaling-a-monitoring-platform"},"buildId":"baae19cfe58fa5432fae44d68730edad047c6a52","isFallback":false,"gsp":true,"appGip":true,"scriptLoader":[]}</script></body></html>