CINXE.COM
Versapay Product Updates Portal
<!-- Built with LaunchNotes --> <!DOCTYPE html> <html> <head> <script type="text/javascript">window.NREUM||(NREUM={});NREUM.info={"beacon":"bam.nr-data.net","errorBeacon":"bam.nr-data.net","licenseKey":"NRJS-d75019f52426a98609c","applicationID":"988270772","transactionName":"IF1ZRhNfCVkESxpHFgFeXlFOUQtbDkxbVAYOV1lGEh8MWwVcTQ==","queueTime":0,"applicationTime":247,"agent":""}</script> <script type="text/javascript">(window.NREUM||(NREUM={})).init={privacy:{cookies_enabled:true},ajax:{deny_list:["api-iam.intercom.io","bam.nr-data.net"]},distributed_tracing:{enabled:true,allowed_origins:["https://app.launchnotes.com"],cors_use_newrelic_header:false,cors_use_tracecontext_headers:false}};(window.NREUM||(NREUM={})).loader_config={agentID:"1120002361",accountID:"2696381",trustKey:"2696381",xpid:"VgAOV1VbCRAJXFlQAAEAUVY=",licenseKey:"NRJS-d75019f52426a98609c",applicationID:"988270772"};;/*! For license information please see nr-loader-spa-1.274.0.min.js.LICENSE.txt */ (()=>{var e,t,r={8122:(e,t,r)=>{"use strict";r.d(t,{a:()=>i});var n=r(944);function i(e,t){try{if(!e||"object"!=typeof e)return(0,n.R)(3);if(!t||"object"!=typeof t)return(0,n.R)(4);const r=Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t)),o=0===Object.keys(r).length?e:r;for(let a in o)if(void 0!==e[a])try{if(null===e[a]){r[a]=null;continue}Array.isArray(e[a])&&Array.isArray(t[a])?r[a]=Array.from(new Set([...e[a],...t[a]])):"object"==typeof e[a]&&"object"==typeof t[a]?r[a]=i(e[a],t[a]):r[a]=e[a]}catch(e){(0,n.R)(1,e)}return r}catch(e){(0,n.R)(2,e)}}},2555:(e,t,r)=>{"use strict";r.d(t,{Vp:()=>c,fn:()=>s,x1:()=>u});var n=r(384),i=r(8122);const o={beacon:n.NT.beacon,errorBeacon:n.NT.errorBeacon,licenseKey:void 0,applicationID:void 0,sa:void 0,queueTime:void 0,applicationTime:void 0,ttGuid:void 0,user:void 0,account:void 0,product:void 0,extra:void 0,jsAttributes:{},userAttributes:void 0,atts:void 0,transactionName:void 0,tNamePlain:void 0},a={};function s(e){try{const t=c(e);return!!t.licenseKey&&!!t.errorBeacon&&!!t.applicationID}catch(e){return!1}}function c(e){if(!e)throw new Error("All info objects require an agent identifier!");if(!a[e])throw new Error("Info for ".concat(e," was never set"));return a[e]}function u(e,t){if(!e)throw new Error("All info objects require an agent identifier!");a[e]=(0,i.a)(t,o);const r=(0,n.nY)(e);r&&(r.info=a[e])}},9417:(e,t,r)=>{"use strict";r.d(t,{D0:()=>h,gD:()=>g,xN:()=>p});var n=r(993);const i=e=>{if(!e||"string"!=typeof e)return!1;try{document.createDocumentFragment().querySelector(e)}catch{return!1}return!0};var o=r(2614),a=r(944),s=r(384),c=r(8122);const u="[data-nr-mask]",d=()=>{const e={mask_selector:"*",block_selector:"[data-nr-block]",mask_input_options:{color:!1,date:!1,"datetime-local":!1,email:!1,month:!1,number:!1,range:!1,search:!1,tel:!1,text:!1,time:!1,url:!1,week:!1,textarea:!1,select:!1,password:!0}};return{ajax:{deny_list:void 0,block_internal:!0,enabled:!0,harvestTimeSeconds:10,autoStart:!0},distributed_tracing:{enabled:void 0,exclude_newrelic_header:void 0,cors_use_newrelic_header:void 0,cors_use_tracecontext_headers:void 0,allowed_origins:void 0},feature_flags:[],generic_events:{enabled:!0,harvestTimeSeconds:30,autoStart:!0},harvest:{tooManyRequestsDelay:60},jserrors:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},logging:{enabled:!0,harvestTimeSeconds:10,autoStart:!0,level:n.p_.INFO},metrics:{enabled:!0,autoStart:!0},obfuscate:void 0,page_action:{enabled:!0},page_view_event:{enabled:!0,autoStart:!0},page_view_timing:{enabled:!0,harvestTimeSeconds:30,autoStart:!0},performance:{capture_marks:!1,capture_measures:!1},privacy:{cookies_enabled:!0},proxy:{assets:void 0,beacon:void 0},session:{expiresMs:o.wk,inactiveMs:o.BB},session_replay:{autoStart:!0,enabled:!1,harvestTimeSeconds:60,preload:!1,sampling_rate:10,error_sampling_rate:100,collect_fonts:!1,inline_images:!1,fix_stylesheets:!0,mask_all_inputs:!0,get mask_text_selector(){return e.mask_selector},set mask_text_selector(t){i(t)?e.mask_selector="".concat(t,",").concat(u):""===t||null===t?e.mask_selector=u:(0,a.R)(5,t)},get block_class(){return"nr-block"},get ignore_class(){return"nr-ignore"},get mask_text_class(){return"nr-mask"},get block_selector(){return e.block_selector},set block_selector(t){i(t)?e.block_selector+=",".concat(t):""!==t&&(0,a.R)(6,t)},get mask_input_options(){return e.mask_input_options},set mask_input_options(t){t&&"object"==typeof t?e.mask_input_options={...t,password:!0}:(0,a.R)(7,t)}},session_trace:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},soft_navigations:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},spa:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},ssl:void 0,user_actions:{enabled:!0}}},l={},f="All configuration objects require an agent identifier!";function h(e){if(!e)throw new Error(f);if(!l[e])throw new Error("Configuration for ".concat(e," was never set"));return l[e]}function p(e,t){if(!e)throw new Error(f);l[e]=(0,c.a)(t,d());const r=(0,s.nY)(e);r&&(r.init=l[e])}function g(e,t){if(!e)throw new Error(f);var r=h(e);if(r){for(var n=t.split("."),i=0;i<n.length-1;i++)if("object"!=typeof(r=r[n[i]]))return;r=r[n[n.length-1]]}return r}},5603:(e,t,r)=>{"use strict";r.d(t,{a:()=>c,o:()=>s});var n=r(384),i=r(8122);const o={accountID:void 0,trustKey:void 0,agentID:void 0,licenseKey:void 0,applicationID:void 0,xpid:void 0},a={};function s(e){if(!e)throw new Error("All loader-config objects require an agent identifier!");if(!a[e])throw new Error("LoaderConfig for ".concat(e," was never set"));return a[e]}function c(e,t){if(!e)throw new Error("All loader-config objects require an agent identifier!");a[e]=(0,i.a)(t,o);const r=(0,n.nY)(e);r&&(r.loader_config=a[e])}},3371:(e,t,r)=>{"use strict";r.d(t,{V:()=>f,f:()=>l});var n=r(8122),i=r(384),o=r(6154),a=r(9324);let s=0;const c={buildEnv:a.F3,distMethod:a.Xs,version:a.xv,originTime:o.WN},u={customTransaction:void 0,disabled:!1,isolatedBacklog:!1,loaderType:void 0,maxBytes:3e4,onerror:void 0,ptid:void 0,releaseIds:{},appMetadata:{},session:void 0,denyList:void 0,timeKeeper:void 0,obfuscator:void 0},d={};function l(e){if(!e)throw new Error("All runtime objects require an agent identifier!");if(!d[e])throw new Error("Runtime for ".concat(e," was never set"));return d[e]}function f(e,t){if(!e)throw new Error("All runtime objects require an agent identifier!");d[e]={...(0,n.a)(t,u),...c},Object.hasOwnProperty.call(d[e],"harvestCount")||Object.defineProperty(d[e],"harvestCount",{get:()=>++s});const r=(0,i.nY)(e);r&&(r.runtime=d[e])}},9324:(e,t,r)=>{"use strict";r.d(t,{F3:()=>i,Xs:()=>o,Yq:()=>a,xv:()=>n});const n="1.274.0",i="PROD",o="CDN",a="^2.0.0-alpha.17"},6154:(e,t,r)=>{"use strict";r.d(t,{A4:()=>s,OF:()=>d,RI:()=>i,WN:()=>h,bv:()=>o,gm:()=>a,lR:()=>f,m:()=>u,mw:()=>c,sb:()=>l});var n=r(1863);const i="undefined"!=typeof window&&!!window.document,o="undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self.navigator instanceof WorkerNavigator||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis.navigator instanceof WorkerNavigator),a=i?window:"undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis),s="complete"===a?.document?.readyState,c=Boolean("hidden"===a?.document?.visibilityState),u=""+a?.location,d=/iPad|iPhone|iPod/.test(a.navigator?.userAgent),l=d&&"undefined"==typeof SharedWorker,f=(()=>{const e=a.navigator?.userAgent?.match(/Firefox[/\s](\d+\.\d+)/);return Array.isArray(e)&&e.length>=2?+e[1]:0})(),h=Date.now()-(0,n.t)()},7295:(e,t,r)=>{"use strict";r.d(t,{Xv:()=>a,gX:()=>i,iW:()=>o});var n=[];function i(e){if(!e||o(e))return!1;if(0===n.length)return!0;for(var t=0;t<n.length;t++){var r=n[t];if("*"===r.hostname)return!1;if(s(r.hostname,e.hostname)&&c(r.pathname,e.pathname))return!1}return!0}function o(e){return void 0===e.hostname}function a(e){if(n=[],e&&e.length)for(var t=0;t<e.length;t++){let r=e[t];if(!r)continue;0===r.indexOf("http://")?r=r.substring(7):0===r.indexOf("https://")&&(r=r.substring(8));const i=r.indexOf("/");let o,a;i>0?(o=r.substring(0,i),a=r.substring(i)):(o=r,a="");let[s]=o.split(":");n.push({hostname:s,pathname:a})}}function s(e,t){return!(e.length>t.length)&&t.indexOf(e)===t.length-e.length}function c(e,t){return 0===e.indexOf("/")&&(e=e.substring(1)),0===t.indexOf("/")&&(t=t.substring(1)),""===e||e===t}},1687:(e,t,r)=>{"use strict";r.d(t,{Ak:()=>c,Ze:()=>l,x3:()=>u});var n=r(7836),i=r(3606),o=r(860),a=r(2646);const s={};function c(e,t){const r={staged:!1,priority:o.P3[t]||0};d(e),s[e].get(t)||s[e].set(t,r)}function u(e,t){e&&s[e]&&(s[e].get(t)&&s[e].delete(t),h(e,t,!1),s[e].size&&f(e))}function d(e){if(!e)throw new Error("agentIdentifier required");s[e]||(s[e]=new Map)}function l(e="",t="feature",r=!1){if(d(e),!e||!s[e].get(t)||r)return h(e,t);s[e].get(t).staged=!0,f(e)}function f(e){const t=Array.from(s[e]);t.every((([e,t])=>t.staged))&&(t.sort(((e,t)=>e[1].priority-t[1].priority)),t.forEach((([t])=>{s[e].delete(t),h(e,t)})))}function h(e,t,r=!0){const o=e?n.ee.get(e):n.ee,s=i.i.handlers;if(!o.aborted&&o.backlog&&s){if(r){const e=o.backlog[t],r=s[t];if(r){for(let t=0;e&&t<e.length;++t)p(e[t],r);Object.entries(r).forEach((([e,t])=>{Object.values(t||{}).forEach((t=>{t[0]?.on&&t[0]?.context()instanceof a.y&&t[0].on(e,t[1])}))}))}}o.isolatedBacklog||delete s[t],o.backlog[t]=null,o.emit("drain-"+t,[])}}function p(e,t){var r=e[1];Object.values(t[r]||{}).forEach((t=>{var r=e[0];if(t[0]===r){var n=t[1],i=e[3],o=e[2];n.apply(i,o)}}))}},7836:(e,t,r)=>{"use strict";r.d(t,{P:()=>c,ee:()=>u});var n=r(384),i=r(8990),o=r(3371),a=r(2646),s=r(5607);const c="nr@context:".concat(s.W),u=function e(t,r){var n={},s={},d={},l=!1;try{l=16===r.length&&(0,o.f)(r).isolatedBacklog}catch(e){}var f={on:p,addEventListener:p,removeEventListener:function(e,t){var r=n[e];if(!r)return;for(var i=0;i<r.length;i++)r[i]===t&&r.splice(i,1)},emit:function(e,r,n,i,o){!1!==o&&(o=!0);if(u.aborted&&!i)return;t&&o&&t.emit(e,r,n);for(var a=h(n),c=g(e),d=c.length,l=0;l<d;l++)c[l].apply(a,r);var p=v()[s[e]];p&&p.push([f,e,r,a]);return a},get:m,listeners:g,context:h,buffer:function(e,t){const r=v();if(t=t||"feature",f.aborted)return;Object.entries(e||{}).forEach((([e,n])=>{s[n]=t,t in r||(r[t]=[])}))},abort:function(){f._aborted=!0,Object.keys(f.backlog).forEach((e=>{delete f.backlog[e]}))},isBuffering:function(e){return!!v()[s[e]]},debugId:r,backlog:l?{}:t&&"object"==typeof t.backlog?t.backlog:{},isolatedBacklog:l};return Object.defineProperty(f,"aborted",{get:()=>{let e=f._aborted||!1;return e||(t&&(e=t.aborted),e)}}),f;function h(e){return e&&e instanceof a.y?e:e?(0,i.I)(e,c,(()=>new a.y(c))):new a.y(c)}function p(e,t){n[e]=g(e).concat(t)}function g(e){return n[e]||[]}function m(t){return d[t]=d[t]||e(f,t)}function v(){return f.backlog}}(void 0,"globalEE"),d=(0,n.Zm)();d.ee||(d.ee=u)},2646:(e,t,r)=>{"use strict";r.d(t,{y:()=>n});class n{constructor(e){this.contextId=e}}},9908:(e,t,r)=>{"use strict";r.d(t,{d:()=>n,p:()=>i});var n=r(7836).ee.get("handle");function i(e,t,r,i,o){o?(o.buffer([e],i),o.emit(e,t,r)):(n.buffer([e],i),n.emit(e,t,r))}},3606:(e,t,r)=>{"use strict";r.d(t,{i:()=>o});var n=r(9908);o.on=a;var i=o.handlers={};function o(e,t,r,o){a(o||n.d,i,e,t,r)}function a(e,t,r,i,o){o||(o="feature"),e||(e=n.d);var a=t[o]=t[o]||{};(a[r]=a[r]||[]).push([e,i])}},3878:(e,t,r)=>{"use strict";function n(e,t){return{capture:e,passive:!1,signal:t}}function i(e,t,r=!1,i){window.addEventListener(e,t,n(r,i))}function o(e,t,r=!1,i){document.addEventListener(e,t,n(r,i))}r.d(t,{DD:()=>o,jT:()=>n,sp:()=>i})},5607:(e,t,r)=>{"use strict";r.d(t,{W:()=>n});const n=(0,r(9566).bz)()},9566:(e,t,r)=>{"use strict";r.d(t,{LA:()=>s,ZF:()=>c,bz:()=>a,el:()=>u});var n=r(6154);const i="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx";function o(e,t){return e?15&e[t]:16*Math.random()|0}function a(){const e=n.gm?.crypto||n.gm?.msCrypto;let t,r=0;return e&&e.getRandomValues&&(t=e.getRandomValues(new Uint8Array(30))),i.split("").map((e=>"x"===e?o(t,r++).toString(16):"y"===e?(3&o()|8).toString(16):e)).join("")}function s(e){const t=n.gm?.crypto||n.gm?.msCrypto;let r,i=0;t&&t.getRandomValues&&(r=t.getRandomValues(new Uint8Array(e)));const a=[];for(var s=0;s<e;s++)a.push(o(r,i++).toString(16));return a.join("")}function c(){return s(16)}function u(){return s(32)}},2614:(e,t,r)=>{"use strict";r.d(t,{BB:()=>a,H3:()=>n,g:()=>u,iL:()=>c,tS:()=>s,uh:()=>i,wk:()=>o});const n="NRBA",i="SESSION",o=144e5,a=18e5,s={STARTED:"session-started",PAUSE:"session-pause",RESET:"session-reset",RESUME:"session-resume",UPDATE:"session-update"},c={SAME_TAB:"same-tab",CROSS_TAB:"cross-tab"},u={OFF:0,FULL:1,ERROR:2}},1863:(e,t,r)=>{"use strict";function n(){return Math.floor(performance.now())}r.d(t,{t:()=>n})},7485:(e,t,r)=>{"use strict";r.d(t,{D:()=>i});var n=r(6154);function i(e){if(0===(e||"").indexOf("data:"))return{protocol:"data"};try{const t=new URL(e,location.href),r={port:t.port,hostname:t.hostname,pathname:t.pathname,search:t.search,protocol:t.protocol.slice(0,t.protocol.indexOf(":")),sameOrigin:t.protocol===n.gm?.location?.protocol&&t.host===n.gm?.location?.host};return r.port&&""!==r.port||("http:"===t.protocol&&(r.port="80"),"https:"===t.protocol&&(r.port="443")),r.pathname&&""!==r.pathname?r.pathname.startsWith("/")||(r.pathname="/".concat(r.pathname)):r.pathname="/",r}catch(e){return{}}}},944:(e,t,r)=>{"use strict";function n(e,t){"function"==typeof console.debug&&console.debug("New Relic Warning: https://github.com/newrelic/newrelic-browser-agent/blob/main/docs/warning-codes.md#".concat(e),t)}r.d(t,{R:()=>n})},5284:(e,t,r)=>{"use strict";r.d(t,{t:()=>c,B:()=>s});var n=r(7836),i=r(6154);const o="newrelic";const a=new Set,s={};function c(e,t){const r=n.ee.get(t);s[t]??={},e&&"object"==typeof e&&(a.has(t)||(r.emit("rumresp",[e]),s[t]=e,a.add(t),function(e={}){try{i.gm.dispatchEvent(new CustomEvent(o,{detail:e}))}catch(e){}}({loaded:!0})))}},8990:(e,t,r)=>{"use strict";r.d(t,{I:()=>i});var n=Object.prototype.hasOwnProperty;function i(e,t,r){if(n.call(e,t))return e[t];var i=r();if(Object.defineProperty&&Object.keys)try{return Object.defineProperty(e,t,{value:i,writable:!0,enumerable:!1}),i}catch(e){}return e[t]=i,i}},6389:(e,t,r)=>{"use strict";function n(e,t=500,r={}){const n=r?.leading||!1;let i;return(...r)=>{n&&void 0===i&&(e.apply(this,r),i=setTimeout((()=>{i=clearTimeout(i)}),t)),n||(clearTimeout(i),i=setTimeout((()=>{e.apply(this,r)}),t))}}function i(e){let t=!1;return(...r)=>{t||(t=!0,e.apply(this,r))}}r.d(t,{J:()=>i,s:()=>n})},3304:(e,t,r)=>{"use strict";r.d(t,{A:()=>o});var n=r(7836);const i=()=>{const e=new WeakSet;return(t,r)=>{if("object"==typeof r&&null!==r){if(e.has(r))return;e.add(r)}return r}};function o(e){try{return JSON.stringify(e,i())??""}catch(e){try{n.ee.emit("internal-error",[e])}catch(e){}return""}}},5289:(e,t,r)=>{"use strict";r.d(t,{GG:()=>o,sB:()=>a});var n=r(3878);function i(){return"undefined"==typeof document||"complete"===document.readyState}function o(e,t){if(i())return e();(0,n.sp)("load",e,t)}function a(e){if(i())return e();(0,n.DD)("DOMContentLoaded",e)}},384:(e,t,r)=>{"use strict";r.d(t,{NT:()=>o,US:()=>d,Zm:()=>a,bQ:()=>c,dV:()=>s,nY:()=>u,pV:()=>l});var n=r(6154),i=r(1863);const o={beacon:"bam.nr-data.net",errorBeacon:"bam.nr-data.net"};function a(){return n.gm.NREUM||(n.gm.NREUM={}),void 0===n.gm.newrelic&&(n.gm.newrelic=n.gm.NREUM),n.gm.NREUM}function s(){let e=a();return e.o||(e.o={ST:n.gm.setTimeout,SI:n.gm.setImmediate,CT:n.gm.clearTimeout,XHR:n.gm.XMLHttpRequest,REQ:n.gm.Request,EV:n.gm.Event,PR:n.gm.Promise,MO:n.gm.MutationObserver,FETCH:n.gm.fetch,WS:n.gm.WebSocket}),e}function c(e,t){let r=a();r.initializedAgents??={},t.initializedAt={ms:(0,i.t)(),date:new Date},r.initializedAgents[e]=t}function u(e){let t=a();return t.initializedAgents?.[e]}function d(e,t){a()[e]=t}function l(){return function(){let e=a();const t=e.info||{};e.info={beacon:o.beacon,errorBeacon:o.errorBeacon,...t}}(),function(){let e=a();const t=e.init||{};e.init={...t}}(),s(),function(){let e=a();const t=e.loader_config||{};e.loader_config={...t}}(),a()}},2843:(e,t,r)=>{"use strict";r.d(t,{u:()=>i});var n=r(3878);function i(e,t=!1,r,i){(0,n.DD)("visibilitychange",(function(){if(t)return void("hidden"===document.visibilityState&&e());e(document.visibilityState)}),r,i)}},8139:(e,t,r)=>{"use strict";r.d(t,{u:()=>f});var n=r(7836),i=r(3434),o=r(8990),a=r(6154);const s={},c=a.gm.XMLHttpRequest,u="addEventListener",d="removeEventListener",l="nr@wrapped:".concat(n.P);function f(e){var t=function(e){return(e||n.ee).get("events")}(e);if(s[t.debugId]++)return t;s[t.debugId]=1;var r=(0,i.YM)(t,!0);function f(e){r.inPlace(e,[u,d],"-",p)}function p(e,t){return e[1]}return"getPrototypeOf"in Object&&(a.RI&&h(document,f),h(a.gm,f),h(c.prototype,f)),t.on(u+"-start",(function(e,t){var n=e[1];if(null!==n&&("function"==typeof n||"object"==typeof n)){var i=(0,o.I)(n,l,(function(){var e={object:function(){if("function"!=typeof n.handleEvent)return;return n.handleEvent.apply(n,arguments)},function:n}[typeof n];return e?r(e,"fn-",null,e.name||"anonymous"):n}));this.wrapped=e[1]=i}})),t.on(d+"-start",(function(e){e[1]=this.wrapped||e[1]})),t}function h(e,t,...r){let n=e;for(;"object"==typeof n&&!Object.prototype.hasOwnProperty.call(n,u);)n=Object.getPrototypeOf(n);n&&t(n,...r)}},3434:(e,t,r)=>{"use strict";r.d(t,{Jt:()=>o,YM:()=>c});var n=r(7836),i=r(5607);const o="nr@original:".concat(i.W);var a=Object.prototype.hasOwnProperty,s=!1;function c(e,t){return e||(e=n.ee),r.inPlace=function(e,t,n,i,o){n||(n="");const a="-"===n.charAt(0);for(let s=0;s<t.length;s++){const c=t[s],u=e[c];d(u)||(e[c]=r(u,a?c+n:n,i,c,o))}},r.flag=o,r;function r(t,r,n,s,c){return d(t)?t:(r||(r=""),nrWrapper[o]=t,function(e,t,r){if(Object.defineProperty&&Object.keys)try{return Object.keys(e).forEach((function(r){Object.defineProperty(t,r,{get:function(){return e[r]},set:function(t){return e[r]=t,t}})})),t}catch(e){u([e],r)}for(var n in e)a.call(e,n)&&(t[n]=e[n])}(t,nrWrapper,e),nrWrapper);function nrWrapper(){var o,a,d,l;try{a=this,o=[...arguments],d="function"==typeof n?n(o,a):n||{}}catch(t){u([t,"",[o,a,s],d],e)}i(r+"start",[o,a,s],d,c);try{return l=t.apply(a,o)}catch(e){throw i(r+"err",[o,a,e],d,c),e}finally{i(r+"end",[o,a,l],d,c)}}}function i(r,n,i,o){if(!s||t){var a=s;s=!0;try{e.emit(r,n,i,t,o)}catch(t){u([t,r,n,i],e)}s=a}}}function u(e,t){t||(t=n.ee);try{t.emit("internal-error",e)}catch(e){}}function d(e){return!(e&&"function"==typeof e&&e.apply&&!e[o])}},9300:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.ajax},3333:(e,t,r)=>{"use strict";r.d(t,{TZ:()=>n,Zp:()=>i,mq:()=>s,nf:()=>a,qN:()=>o});const n=r(860).K7.genericEvents,i=["auxclick","click","copy","keydown","paste","scrollend"],o=["focus","blur"],a=4,s=1e3},6774:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.jserrors},993:(e,t,r)=>{"use strict";r.d(t,{ET:()=>o,TZ:()=>a,p_:()=>i});var n=r(860);const i={ERROR:"ERROR",WARN:"WARN",INFO:"INFO",DEBUG:"DEBUG",TRACE:"TRACE"},o="log",a=n.K7.logging},3785:(e,t,r)=>{"use strict";r.d(t,{R:()=>c,b:()=>u});var n=r(9908),i=r(1863),o=r(860),a=r(3969),s=r(993);function c(e,t,r={},c=s.p_.INFO){(0,n.p)(a.xV,["API/logging/".concat(c.toLowerCase(),"/called")],void 0,o.K7.metrics,e),(0,n.p)(s.ET,[(0,i.t)(),t,r,c],void 0,o.K7.logging,e)}function u(e){return"string"==typeof e&&Object.values(s.p_).some((t=>t===e.toUpperCase().trim()))}},3969:(e,t,r)=>{"use strict";r.d(t,{TZ:()=>n,XG:()=>s,rs:()=>i,xV:()=>a,z_:()=>o});const n=r(860).K7.metrics,i="sm",o="cm",a="storeSupportabilityMetrics",s="storeEventMetrics"},6630:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.pageViewEvent},782:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.pageViewTiming},6344:(e,t,r)=>{"use strict";r.d(t,{BB:()=>d,G4:()=>o,Qb:()=>l,TZ:()=>i,Ug:()=>a,_s:()=>s,bc:()=>u,yP:()=>c});var n=r(2614);const i=r(860).K7.sessionReplay,o={RECORD:"recordReplay",PAUSE:"pauseReplay",REPLAY_RUNNING:"replayRunning",ERROR_DURING_REPLAY:"errorDuringReplay"},a=.12,s={DomContentLoaded:0,Load:1,FullSnapshot:2,IncrementalSnapshot:3,Meta:4,Custom:5},c={[n.g.ERROR]:15e3,[n.g.FULL]:3e5,[n.g.OFF]:0},u={RESET:{message:"Session was reset",sm:"Reset"},IMPORT:{message:"Recorder failed to import",sm:"Import"},TOO_MANY:{message:"429: Too Many Requests",sm:"Too-Many"},TOO_BIG:{message:"Payload was too large",sm:"Too-Big"},CROSS_TAB:{message:"Session Entity was set to OFF on another tab",sm:"Cross-Tab"},ENTITLEMENTS:{message:"Session Replay is not allowed and will not be started",sm:"Entitlement"}},d=5e3,l={API:"api"}},5270:(e,t,r)=>{"use strict";r.d(t,{Aw:()=>c,CT:()=>u,SR:()=>s});var n=r(384),i=r(9417),o=r(7767),a=r(6154);function s(e){return!!(0,n.dV)().o.MO&&(0,o.V)(e)&&!0===(0,i.gD)(e,"session_trace.enabled")}function c(e){return!0===(0,i.gD)(e,"session_replay.preload")&&s(e)}function u(e,t){const r=t.correctAbsoluteTimestamp(e);return{originalTimestamp:e,correctedTimestamp:r,timestampDiff:e-r,originTime:a.WN,correctedOriginTime:t.correctedOriginTime,originTimeDiff:Math.floor(a.WN-t.correctedOriginTime)}}},3738:(e,t,r)=>{"use strict";r.d(t,{He:()=>i,Kp:()=>s,Lc:()=>u,Rz:()=>d,TZ:()=>n,bD:()=>o,d3:()=>a,jx:()=>l,uP:()=>c});const n=r(860).K7.sessionTrace,i="bstResource",o="resource",a="-start",s="-end",c="fn"+a,u="fn"+s,d="pushState",l=1e3},3962:(e,t,r)=>{"use strict";r.d(t,{AM:()=>o,O2:()=>s,Qu:()=>c,TZ:()=>a,ih:()=>u,tC:()=>i});var n=r(860);const i=["click","keydown","submit"],o="api",a=n.K7.softNav,s={INITIAL_PAGE_LOAD:"",ROUTE_CHANGE:1,UNSPECIFIED:2},c={INTERACTION:1,AJAX:2,CUSTOM_END:3,CUSTOM_TRACER:4},u={IP:"in progress",FIN:"finished",CAN:"cancelled"}},7378:(e,t,r)=>{"use strict";r.d(t,{$p:()=>x,BR:()=>b,Kp:()=>R,L3:()=>y,Lc:()=>c,NC:()=>o,SG:()=>d,TZ:()=>i,U6:()=>p,UT:()=>m,d3:()=>w,dT:()=>f,e5:()=>A,gx:()=>v,l9:()=>l,oW:()=>h,op:()=>g,rw:()=>u,tH:()=>E,uP:()=>s,wW:()=>T,xq:()=>a});var n=r(384);const i=r(860).K7.spa,o=["click","submit","keypress","keydown","keyup","change"],a=999,s="fn-start",c="fn-end",u="cb-start",d="api-ixn-",l="remaining",f="interaction",h="spaNode",p="jsonpNode",g="fetch-start",m="fetch-done",v="fetch-body-",b="jsonp-end",y=(0,n.dV)().o.ST,w="-start",R="-end",x="-body",T="cb"+R,A="jsTime",E="fetch"},4234:(e,t,r)=>{"use strict";r.d(t,{W:()=>o});var n=r(7836),i=r(1687);class o{constructor(e,t){this.agentIdentifier=e,this.ee=n.ee.get(e),this.featureName=t,this.blocked=!1}deregisterDrain(){(0,i.x3)(this.agentIdentifier,this.featureName)}}},7767:(e,t,r)=>{"use strict";r.d(t,{V:()=>o});var n=r(9417),i=r(6154);const o=e=>i.RI&&!0===(0,n.gD)(e,"privacy.cookies_enabled")},425:(e,t,r)=>{"use strict";r.d(t,{j:()=>j});var n=r(860),i=r(2555),o=r(3371),a=r(9908),s=r(7836),c=r(1687),u=r(5289),d=r(6154),l=r(944),f=r(3969),h=r(384),p=r(6344);const g=["setErrorHandler","finished","addToTrace","addRelease","addPageAction","setCurrentRouteName","setPageViewName","setCustomAttribute","interaction","noticeError","setUserId","setApplicationVersion","start",p.G4.RECORD,p.G4.PAUSE,"log","wrapLogger"],m=["setErrorHandler","finished","addToTrace","addRelease"];var v=r(1863),b=r(2614),y=r(993),w=r(3785),R=r(2646),x=r(3434);function T(e,t,r,n){if("object"!=typeof t||!t||"string"!=typeof r||!r||"function"!=typeof t[r])return(0,l.R)(29);const i=function(e){return(e||s.ee).get("logger")}(e),o=(0,x.YM)(i),a=new R.y(s.P);return a.level=n.level,a.customAttributes=n.customAttributes,o.inPlace(t,[r],"wrap-logger-",a),i}function A(){const e=(0,h.pV)();g.forEach((t=>{e[t]=(...r)=>function(t,...r){let n=[];return Object.values(e.initializedAgents).forEach((e=>{e&&e.api?e.exposed&&e.api[t]&&n.push(e.api[t](...r)):(0,l.R)(38,t)})),n.length>1?n:n[0]}(t,...r)}))}const E={};var S=r(9417),N=r(5603),O=r(5284);const _=e=>{const t=e.startsWith("http");e+="/",r.p=t?e:"https://"+e};let I=!1;function j(e,t={},g,R){let{init:x,info:j,loader_config:P,runtime:C={},exposed:k=!0}=t;C.loaderType=g;const L=(0,h.pV)();j||(x=L.init,j=L.info,P=L.loader_config),(0,S.xN)(e.agentIdentifier,x||{}),(0,N.a)(e.agentIdentifier,P||{}),j.jsAttributes??={},d.bv&&(j.jsAttributes.isWorker=!0),(0,i.x1)(e.agentIdentifier,j);const H=(0,S.D0)(e.agentIdentifier),D=[j.beacon,j.errorBeacon];I||(H.proxy.assets&&(_(H.proxy.assets),D.push(H.proxy.assets)),H.proxy.beacon&&D.push(H.proxy.beacon),A(),(0,h.US)("activatedFeatures",O.B),e.runSoftNavOverSpa&&=!0===H.soft_navigations.enabled&&H.feature_flags.includes("soft_nav")),C.denyList=[...H.ajax.deny_list||[],...H.ajax.block_internal?D:[]],C.ptid=e.agentIdentifier,(0,o.V)(e.agentIdentifier,C),e.ee=s.ee.get(e.agentIdentifier),void 0===e.api&&(e.api=function(e,t,h=!1){t||(0,c.Ak)(e,"api");const g={};var R=s.ee.get(e),x=R.get("tracer");E[e]=b.g.OFF,R.on(p.G4.REPLAY_RUNNING,(t=>{E[e]=t}));var A="api-",S=A+"ixn-";function N(t,r,n,o){const a=(0,i.Vp)(e);return null===r?delete a.jsAttributes[t]:(0,i.x1)(e,{...a,jsAttributes:{...a.jsAttributes,[t]:r}}),I(A,n,!0,o||null===r?"session":void 0)(t,r)}function O(){}g.log=function(e,{customAttributes:t={},level:r=y.p_.INFO}={}){(0,a.p)(f.xV,["API/log/called"],void 0,n.K7.metrics,R),(0,w.R)(R,e,t,r)},g.wrapLogger=(e,t,{customAttributes:r={},level:i=y.p_.INFO}={})=>{(0,a.p)(f.xV,["API/wrapLogger/called"],void 0,n.K7.metrics,R),T(R,e,t,{customAttributes:r,level:i})},m.forEach((e=>{g[e]=I(A,e,!0,"api")})),g.addPageAction=I(A,"addPageAction",!0,n.K7.genericEvents),g.setPageViewName=function(t,r){if("string"==typeof t)return"/"!==t.charAt(0)&&(t="/"+t),(0,o.f)(e).customTransaction=(r||"http://custom.transaction")+t,I(A,"setPageViewName",!0)()},g.setCustomAttribute=function(e,t,r=!1){if("string"==typeof e){if(["string","number","boolean"].includes(typeof t)||null===t)return N(e,t,"setCustomAttribute",r);(0,l.R)(40,typeof t)}else(0,l.R)(39,typeof e)},g.setUserId=function(e){if("string"==typeof e||null===e)return N("enduser.id",e,"setUserId",!0);(0,l.R)(41,typeof e)},g.setApplicationVersion=function(e){if("string"==typeof e||null===e)return N("application.version",e,"setApplicationVersion",!1);(0,l.R)(42,typeof e)},g.start=()=>{try{(0,a.p)(f.xV,["API/start/called"],void 0,n.K7.metrics,R),R.emit("manual-start-all")}catch(e){(0,l.R)(23,e)}},g[p.G4.RECORD]=function(){(0,a.p)(f.xV,["API/recordReplay/called"],void 0,n.K7.metrics,R),(0,a.p)(p.G4.RECORD,[],void 0,n.K7.sessionReplay,R)},g[p.G4.PAUSE]=function(){(0,a.p)(f.xV,["API/pauseReplay/called"],void 0,n.K7.metrics,R),(0,a.p)(p.G4.PAUSE,[],void 0,n.K7.sessionReplay,R)},g.interaction=function(e){return(new O).get("object"==typeof e?e:{})};const _=O.prototype={createTracer:function(e,t){var r={},i=this,o="function"==typeof t;return(0,a.p)(f.xV,["API/createTracer/called"],void 0,n.K7.metrics,R),h||(0,a.p)(S+"tracer",[(0,v.t)(),e,r],i,n.K7.spa,R),function(){if(x.emit((o?"":"no-")+"fn-start",[(0,v.t)(),i,o],r),o)try{return t.apply(this,arguments)}catch(e){const t="string"==typeof e?new Error(e):e;throw x.emit("fn-err",[arguments,this,t],r),t}finally{x.emit("fn-end",[(0,v.t)()],r)}}}};function I(e,t,r,i){return function(){return(0,a.p)(f.xV,["API/"+t+"/called"],void 0,n.K7.metrics,R),i&&(0,a.p)(e+t,[(0,v.t)(),...arguments],r?null:this,i,R),r?void 0:this}}function j(){r.e(478).then(r.bind(r,8778)).then((({setAPI:t})=>{t(e),(0,c.Ze)(e,"api")})).catch((e=>{(0,l.R)(27,e),R.abort()}))}return["actionText","setName","setAttribute","save","ignore","onEnd","getContext","end","get"].forEach((e=>{_[e]=I(S,e,void 0,h?n.K7.softNav:n.K7.spa)})),g.setCurrentRouteName=h?I(S,"routeName",void 0,n.K7.softNav):I(A,"routeName",!0,n.K7.spa),g.noticeError=function(t,r){"string"==typeof t&&(t=new Error(t)),(0,a.p)(f.xV,["API/noticeError/called"],void 0,n.K7.metrics,R),(0,a.p)("err",[t,(0,v.t)(),!1,r,!!E[e]],void 0,n.K7.jserrors,R)},d.RI?(0,u.GG)((()=>j()),!0):j(),g}(e.agentIdentifier,R,e.runSoftNavOverSpa)),void 0===e.exposed&&(e.exposed=k),I=!0}},8374:(e,t,r)=>{r.nc=(()=>{try{return document?.currentScript?.nonce}catch(e){}return""})()},860:(e,t,r)=>{"use strict";r.d(t,{$J:()=>o,K7:()=>n,P3:()=>i});const n={ajax:"ajax",genericEvents:"generic_events",jserrors:"jserrors",logging:"logging",metrics:"metrics",pageAction:"page_action",pageViewEvent:"page_view_event",pageViewTiming:"page_view_timing",sessionReplay:"session_replay",sessionTrace:"session_trace",softNav:"soft_navigations",spa:"spa"},i={[n.pageViewEvent]:1,[n.pageViewTiming]:2,[n.metrics]:3,[n.jserrors]:4,[n.spa]:5,[n.ajax]:6,[n.sessionTrace]:7,[n.softNav]:8,[n.sessionReplay]:9,[n.logging]:10,[n.genericEvents]:11},o={[n.pageViewTiming]:"events",[n.ajax]:"events",[n.spa]:"events",[n.softNav]:"events",[n.metrics]:"jserrors",[n.jserrors]:"jserrors",[n.sessionTrace]:"browser/blobs",[n.sessionReplay]:"browser/blobs",[n.logging]:"browser/logs",[n.genericEvents]:"ins"}}},n={};function i(e){var t=n[e];if(void 0!==t)return t.exports;var o=n[e]={exports:{}};return r[e](o,o.exports,i),o.exports}i.m=r,i.d=(e,t)=>{for(var r in t)i.o(t,r)&&!i.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},i.f={},i.e=e=>Promise.all(Object.keys(i.f).reduce(((t,r)=>(i.f[r](e,t),t)),[])),i.u=e=>({212:"nr-spa-compressor",249:"nr-spa-recorder",478:"nr-spa"}[e]+"-1.274.0.min.js"),i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),e={},t="NRBA-1.274.0.PROD:",i.l=(r,n,o,a)=>{if(e[r])e[r].push(n);else{var s,c;if(void 0!==o)for(var u=document.getElementsByTagName("script"),d=0;d<u.length;d++){var l=u[d];if(l.getAttribute("src")==r||l.getAttribute("data-webpack")==t+o){s=l;break}}if(!s){c=!0;var f={478:"sha512-1vUqEfJPB8Pihje9mv5CfYgkitO1FWcS+UQb84DbXqP8oYctRv4/lzl/MzNLPlRhcY1WVDBGL20I8vm6s2VV7g==",249:"sha512-Y/BeZAh6VSTmUtUNmS5XdyKxL92s30Fyyj8xVW76HSPxcKItL4+x2+kGMZc8pMJnUpZDz1L4eftZQAJh3D8NnA==",212:"sha512-Gn2tQ3qog5Yhrx/gRutkSTYPp+7nkKFt4/mIXg99LxcNpMDAYJZDBYmAACdoHNM86+iq1F3cBcQotFNzjIX8bw=="};(s=document.createElement("script")).charset="utf-8",s.timeout=120,i.nc&&s.setAttribute("nonce",i.nc),s.setAttribute("data-webpack",t+o),s.src=r,0!==s.src.indexOf(window.location.origin+"/")&&(s.crossOrigin="anonymous"),f[a]&&(s.integrity=f[a])}e[r]=[n];var h=(t,n)=>{s.onerror=s.onload=null,clearTimeout(p);var i=e[r];if(delete e[r],s.parentNode&&s.parentNode.removeChild(s),i&&i.forEach((e=>e(n))),t)return t(n)},p=setTimeout(h.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=h.bind(null,s.onerror),s.onload=h.bind(null,s.onload),c&&document.head.appendChild(s)}},i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.p="https://js-agent.newrelic.com/",(()=>{var e={38:0,788:0};i.f.j=(t,r)=>{var n=i.o(e,t)?e[t]:void 0;if(0!==n)if(n)r.push(n[2]);else{var o=new Promise(((r,i)=>n=e[t]=[r,i]));r.push(n[2]=o);var a=i.p+i.u(t),s=new Error;i.l(a,(r=>{if(i.o(e,t)&&(0!==(n=e[t])&&(e[t]=void 0),n)){var o=r&&("load"===r.type?"missing":r.type),a=r&&r.target&&r.target.src;s.message="Loading chunk "+t+" failed.\n("+o+": "+a+")",s.name="ChunkLoadError",s.type=o,s.request=a,n[1](s)}}),"chunk-"+t,t)}};var t=(t,r)=>{var n,o,[a,s,c]=r,u=0;if(a.some((t=>0!==e[t]))){for(n in s)i.o(s,n)&&(i.m[n]=s[n]);if(c)c(i)}for(t&&t(r);u<a.length;u++)o=a[u],i.o(e,o)&&e[o]&&e[o][0](),e[o]=0},r=self["webpackChunk:NRBA-1.274.0.PROD"]=self["webpackChunk:NRBA-1.274.0.PROD"]||[];r.forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r))})(),(()=>{"use strict";i(8374);var e=i(944),t=i(6344),r=i(9566);class n{agentIdentifier;constructor(e=(0,r.LA)(16)){this.agentIdentifier=e}#e(t,...r){if("function"==typeof this.api?.[t])return this.api[t](...r);(0,e.R)(35,t)}addPageAction(e,t){return this.#e("addPageAction",e,t)}setPageViewName(e,t){return this.#e("setPageViewName",e,t)}setCustomAttribute(e,t,r){return this.#e("setCustomAttribute",e,t,r)}noticeError(e,t){return this.#e("noticeError",e,t)}setUserId(e){return this.#e("setUserId",e)}setApplicationVersion(e){return this.#e("setApplicationVersion",e)}setErrorHandler(e){return this.#e("setErrorHandler",e)}addRelease(e,t){return this.#e("addRelease",e,t)}log(e,t){return this.#e("log",e,t)}}class o extends n{#e(t,...r){if("function"==typeof this.api?.[t])return this.api[t](...r);(0,e.R)(35,t)}start(){return this.#e("start")}finished(e){return this.#e("finished",e)}recordReplay(){return this.#e(t.G4.RECORD)}pauseReplay(){return this.#e(t.G4.PAUSE)}addToTrace(e){return this.#e("addToTrace",e)}setCurrentRouteName(e){return this.#e("setCurrentRouteName",e)}interaction(){return this.#e("interaction")}wrapLogger(e,t,r){return this.#e("wrapLogger",e,t,r)}}var a=i(860),s=i(9417);const c=Object.values(a.K7);function u(e){const t={};return c.forEach((r=>{t[r]=function(e,t){return!0===(0,s.gD)(t,"".concat(e,".enabled"))}(r,e)})),t}var d=i(425);var l=i(1687),f=i(4234),h=i(5289),p=i(6154),g=i(5270),m=i(7767),v=i(6389);class b extends f.W{constructor(e,t,r=!0){super(e.agentIdentifier,t),this.auto=r,this.abortHandler=void 0,this.featAggregate=void 0,this.onAggregateImported=void 0,!1===e.init[this.featureName].autoStart&&(this.auto=!1),this.auto?(0,l.Ak)(e.agentIdentifier,t):this.ee.on("manual-start-all",(0,v.J)((()=>{(0,l.Ak)(e.agentIdentifier,this.featureName),this.auto=!0,this.importAggregator(e)})))}importAggregator(t,r={}){if(this.featAggregate||!this.auto)return;let n;this.onAggregateImported=new Promise((e=>{n=e}));const o=async()=>{let o;try{if((0,m.V)(this.agentIdentifier)){const{setupAgentSession:e}=await i.e(478).then(i.bind(i,6526));o=e(t)}}catch(t){(0,e.R)(20,t),this.ee.emit("internal-error",[t]),this.featureName===a.K7.sessionReplay&&this.abortHandler?.()}try{if(t.sharedAggregator)await t.sharedAggregator;else{t.sharedAggregator=i.e(478).then(i.bind(i,9337));const{EventAggregator:e}=await t.sharedAggregator;t.sharedAggregator=new e}if(!this.#t(this.featureName,o))return(0,l.Ze)(this.agentIdentifier,this.featureName),void n(!1);const{lazyFeatureLoader:e}=await i.e(478).then(i.bind(i,6103)),{Aggregate:a}=await e(this.featureName,"aggregate");this.featAggregate=new a(t,r),n(!0)}catch(t){(0,e.R)(34,t),this.abortHandler?.(),(0,l.Ze)(this.agentIdentifier,this.featureName,!0),n(!1),this.ee&&this.ee.abort()}};p.RI?(0,h.GG)((()=>o()),!0):o()}#t(e,t){switch(e){case a.K7.sessionReplay:return(0,g.SR)(this.agentIdentifier)&&!!t;case a.K7.sessionTrace:return!!t;default:return!0}}}var y=i(6630);class w extends b{static featureName=y.T;constructor(e,t=!0){super(e,y.T,t),this.importAggregator(e)}}var R=i(384);var x=i(9908),T=i(2843),A=i(3878),E=i(782),S=i(1863);class N extends b{static featureName=E.T;constructor(e,t=!0){super(e,E.T,t),p.RI&&((0,T.u)((()=>(0,x.p)("docHidden",[(0,S.t)()],void 0,E.T,this.ee)),!0),(0,A.sp)("pagehide",(()=>(0,x.p)("winPagehide",[(0,S.t)()],void 0,E.T,this.ee))),this.importAggregator(e))}}var O=i(3969);class _ extends b{static featureName=O.TZ;constructor(e,t=!0){super(e,O.TZ,t),this.importAggregator(e)}}var I=i(6774),j=i(3304);class P{constructor(e,t,r,n,i){this.name="UncaughtError",this.message="string"==typeof e?e:(0,j.A)(e),this.sourceURL=t,this.line=r,this.column=n,this.__newrelic=i}}function C(e){return H(e)?e:new P(void 0!==e?.message?e.message:e,e?.filename||e?.sourceURL,e?.lineno||e?.line,e?.colno||e?.col,e?.__newrelic)}function k(e){const t="Unhandled Promise Rejection";if(!e?.reason)return;if(H(e.reason))try{return e.reason.message=t+": "+e.reason.message,C(e.reason)}catch(t){return C(e.reason)}const r=C(e.reason);return r.message=t+": "+r?.message,r}function L(e){if(e.error instanceof SyntaxError&&!/:\d+$/.test(e.error.stack?.trim())){const t=new P(e.message,e.filename,e.lineno,e.colno,e.error.__newrelic);return t.name=SyntaxError.name,t}return H(e.error)?e.error:C(e)}function H(e){return e instanceof Error&&!!e.stack}class D extends b{static featureName=I.T;#r=!1;constructor(e,r=!0){super(e,I.T,r);try{this.removeOnAbort=new AbortController}catch(e){}this.ee.on("internal-error",(e=>{this.abortHandler&&(0,x.p)("ierr",[C(e),(0,S.t)(),!0,{},this.#r],void 0,this.featureName,this.ee)})),this.ee.on(t.G4.REPLAY_RUNNING,(e=>{this.#r=e})),p.gm.addEventListener("unhandledrejection",(e=>{this.abortHandler&&(0,x.p)("err",[k(e),(0,S.t)(),!1,{unhandledPromiseRejection:1},this.#r],void 0,this.featureName,this.ee)}),(0,A.jT)(!1,this.removeOnAbort?.signal)),p.gm.addEventListener("error",(e=>{this.abortHandler&&(0,x.p)("err",[L(e),(0,S.t)(),!1,{},this.#r],void 0,this.featureName,this.ee)}),(0,A.jT)(!1,this.removeOnAbort?.signal)),this.abortHandler=this.#n,this.importAggregator(e)}#n(){this.removeOnAbort?.abort(),this.abortHandler=void 0}}var M=i(8990);let K=1;const U="nr@id";function V(e){const t=typeof e;return!e||"object"!==t&&"function"!==t?-1:e===p.gm?0:(0,M.I)(e,U,(function(){return K++}))}function G(e){if("string"==typeof e&&e.length)return e.length;if("object"==typeof e){if("undefined"!=typeof ArrayBuffer&&e instanceof ArrayBuffer&&e.byteLength)return e.byteLength;if("undefined"!=typeof Blob&&e instanceof Blob&&e.size)return e.size;if(!("undefined"!=typeof FormData&&e instanceof FormData))try{return(0,j.A)(e).length}catch(e){return}}}var F=i(8139),B=i(7836),W=i(3434);const z={},q=["open","send"];function Z(t){var r=t||B.ee;const n=function(e){return(e||B.ee).get("xhr")}(r);if(z[n.debugId]++)return n;z[n.debugId]=1,(0,F.u)(r);var i=(0,W.YM)(n),o=p.gm.XMLHttpRequest,a=p.gm.MutationObserver,s=p.gm.Promise,c=p.gm.setInterval,u="readystatechange",d=["onload","onerror","onabort","onloadstart","onloadend","onprogress","ontimeout"],l=[],f=p.gm.XMLHttpRequest=function(t){const r=new o(t),a=n.context(r);try{n.emit("new-xhr",[r],a),r.addEventListener(u,(s=a,function(){var e=this;e.readyState>3&&!s.resolved&&(s.resolved=!0,n.emit("xhr-resolved",[],e)),i.inPlace(e,d,"fn-",y)}),(0,A.jT)(!1))}catch(t){(0,e.R)(15,t);try{n.emit("internal-error",[t])}catch(e){}}var s;return r};function h(e,t){i.inPlace(t,["onreadystatechange"],"fn-",y)}if(function(e,t){for(var r in e)t[r]=e[r]}(o,f),f.prototype=o.prototype,i.inPlace(f.prototype,q,"-xhr-",y),n.on("send-xhr-start",(function(e,t){h(e,t),function(e){l.push(e),a&&(g?g.then(b):c?c(b):(m=-m,v.data=m))}(t)})),n.on("open-xhr-start",h),a){var g=s&&s.resolve();if(!c&&!s){var m=1,v=document.createTextNode(m);new a(b).observe(v,{characterData:!0})}}else r.on("fn-end",(function(e){e[0]&&e[0].type===u||b()}));function b(){for(var e=0;e<l.length;e++)h(0,l[e]);l.length&&(l=[])}function y(e,t){return t}return n}var Y="fetch-",X=Y+"body-",J=["arrayBuffer","blob","json","text","formData"],Q=p.gm.Request,ee=p.gm.Response,te="prototype";const re={};function ne(e){const t=function(e){return(e||B.ee).get("fetch")}(e);if(!(Q&&ee&&p.gm.fetch))return t;if(re[t.debugId]++)return t;function r(e,r,n){var i=e[r];"function"==typeof i&&(e[r]=function(){var e,r=[...arguments],o={};t.emit(n+"before-start",[r],o),o[B.P]&&o[B.P].dt&&(e=o[B.P].dt);var a=i.apply(this,r);return t.emit(n+"start",[r,e],a),a.then((function(e){return t.emit(n+"end",[null,e],a),e}),(function(e){throw t.emit(n+"end",[e],a),e}))})}return re[t.debugId]=1,J.forEach((e=>{r(Q[te],e,X),r(ee[te],e,X)})),r(p.gm,"fetch",Y),t.on(Y+"end",(function(e,r){var n=this;if(r){var i=r.headers.get("content-length");null!==i&&(n.rxSize=i),t.emit(Y+"done",[null,r],n)}else t.emit(Y+"done",[e],n)})),t}var ie=i(7485),oe=i(5603);class ae{constructor(e){this.agentIdentifier=e}generateTracePayload(e){if(!this.shouldGenerateTrace(e))return null;var t=(0,oe.o)(this.agentIdentifier);if(!t)return null;var n=(t.accountID||"").toString()||null,i=(t.agentID||"").toString()||null,o=(t.trustKey||"").toString()||null;if(!n||!i)return null;var a=(0,r.ZF)(),s=(0,r.el)(),c=Date.now(),u={spanId:a,traceId:s,timestamp:c};return(e.sameOrigin||this.isAllowedOrigin(e)&&this.useTraceContextHeadersForCors())&&(u.traceContextParentHeader=this.generateTraceContextParentHeader(a,s),u.traceContextStateHeader=this.generateTraceContextStateHeader(a,c,n,i,o)),(e.sameOrigin&&!this.excludeNewrelicHeader()||!e.sameOrigin&&this.isAllowedOrigin(e)&&this.useNewrelicHeaderForCors())&&(u.newrelicHeader=this.generateTraceHeader(a,s,c,n,i,o)),u}generateTraceContextParentHeader(e,t){return"00-"+t+"-"+e+"-01"}generateTraceContextStateHeader(e,t,r,n,i){return i+"@nr=0-1-"+r+"-"+n+"-"+e+"----"+t}generateTraceHeader(e,t,r,n,i,o){if(!("function"==typeof p.gm?.btoa))return null;var a={v:[0,1],d:{ty:"Browser",ac:n,ap:i,id:e,tr:t,ti:r}};return o&&n!==o&&(a.d.tk=o),btoa((0,j.A)(a))}shouldGenerateTrace(e){return this.isDtEnabled()&&this.isAllowedOrigin(e)}isAllowedOrigin(e){var t=!1,r={};if((0,s.gD)(this.agentIdentifier,"distributed_tracing")&&(r=(0,s.D0)(this.agentIdentifier).distributed_tracing),e.sameOrigin)t=!0;else if(r.allowed_origins instanceof Array)for(var n=0;n<r.allowed_origins.length;n++){var i=(0,ie.D)(r.allowed_origins[n]);if(e.hostname===i.hostname&&e.protocol===i.protocol&&e.port===i.port){t=!0;break}}return t}isDtEnabled(){var e=(0,s.gD)(this.agentIdentifier,"distributed_tracing");return!!e&&!!e.enabled}excludeNewrelicHeader(){var e=(0,s.gD)(this.agentIdentifier,"distributed_tracing");return!!e&&!!e.exclude_newrelic_header}useNewrelicHeaderForCors(){var e=(0,s.gD)(this.agentIdentifier,"distributed_tracing");return!!e&&!1!==e.cors_use_newrelic_header}useTraceContextHeadersForCors(){var e=(0,s.gD)(this.agentIdentifier,"distributed_tracing");return!!e&&!!e.cors_use_tracecontext_headers}}var se=i(9300),ce=i(7295),ue=["load","error","abort","timeout"],de=ue.length,le=(0,R.dV)().o.REQ,fe=(0,R.dV)().o.XHR;class he extends b{static featureName=se.T;constructor(e,t=!0){super(e,se.T,t),this.dt=new ae(e.agentIdentifier),this.handler=(e,t,r,n)=>(0,x.p)(e,t,r,n,this.ee);try{const e={xmlhttprequest:"xhr",fetch:"fetch",beacon:"beacon"};p.gm?.performance?.getEntriesByType("resource").forEach((t=>{if(t.initiatorType in e&&0!==t.responseStatus){const r={status:t.responseStatus},n={rxSize:t.transferSize,duration:Math.floor(t.duration),cbTime:0};pe(r,t.name),this.handler("xhr",[r,n,t.startTime,t.responseEnd,e[t.initiatorType]],void 0,a.K7.ajax)}}))}catch(e){}ne(this.ee),Z(this.ee),function(e,t,r,n){function i(e){var t=this;t.totalCbs=0,t.called=0,t.cbTime=0,t.end=R,t.ended=!1,t.xhrGuids={},t.lastSize=null,t.loadCaptureCalled=!1,t.params=this.params||{},t.metrics=this.metrics||{},e.addEventListener("load",(function(r){T(t,e)}),(0,A.jT)(!1)),p.lR||e.addEventListener("progress",(function(e){t.lastSize=e.loaded}),(0,A.jT)(!1))}function o(e){this.params={method:e[0]},pe(this,e[1]),this.metrics={}}function s(t,r){e.loader_config.xpid&&this.sameOrigin&&r.setRequestHeader("X-NewRelic-ID",e.loader_config.xpid);var i=n.generateTracePayload(this.parsedOrigin);if(i){var o=!1;i.newrelicHeader&&(r.setRequestHeader("newrelic",i.newrelicHeader),o=!0),i.traceContextParentHeader&&(r.setRequestHeader("traceparent",i.traceContextParentHeader),i.traceContextStateHeader&&r.setRequestHeader("tracestate",i.traceContextStateHeader),o=!0),o&&(this.dt=i)}}function c(e,r){var n=this.metrics,i=e[0],o=this;if(n&&i){var a=G(i);a&&(n.txSize=a)}this.startTime=(0,S.t)(),this.body=i,this.listener=function(e){try{"abort"!==e.type||o.loadCaptureCalled||(o.params.aborted=!0),("load"!==e.type||o.called===o.totalCbs&&(o.onloadCalled||"function"!=typeof r.onload)&&"function"==typeof o.end)&&o.end(r)}catch(e){try{t.emit("internal-error",[e])}catch(e){}}};for(var s=0;s<de;s++)r.addEventListener(ue[s],this.listener,(0,A.jT)(!1))}function u(e,t,r){this.cbTime+=e,t?this.onloadCalled=!0:this.called+=1,this.called!==this.totalCbs||!this.onloadCalled&&"function"==typeof r.onload||"function"!=typeof this.end||this.end(r)}function d(e,t){var r=""+V(e)+!!t;this.xhrGuids&&!this.xhrGuids[r]&&(this.xhrGuids[r]=!0,this.totalCbs+=1)}function l(e,t){var r=""+V(e)+!!t;this.xhrGuids&&this.xhrGuids[r]&&(delete this.xhrGuids[r],this.totalCbs-=1)}function f(){this.endTime=(0,S.t)()}function h(e,r){r instanceof fe&&"load"===e[0]&&t.emit("xhr-load-added",[e[1],e[2]],r)}function g(e,r){r instanceof fe&&"load"===e[0]&&t.emit("xhr-load-removed",[e[1],e[2]],r)}function m(e,t,r){t instanceof fe&&("onload"===r&&(this.onload=!0),("load"===(e[0]&&e[0].type)||this.onload)&&(this.xhrCbStart=(0,S.t)()))}function v(e,r){this.xhrCbStart&&t.emit("xhr-cb-time",[(0,S.t)()-this.xhrCbStart,this.onload,r],r)}function b(e){var t,r=e[1]||{};if("string"==typeof e[0]?0===(t=e[0]).length&&p.RI&&(t=""+p.gm.location.href):e[0]&&e[0].url?t=e[0].url:p.gm?.URL&&e[0]&&e[0]instanceof URL?t=e[0].href:"function"==typeof e[0].toString&&(t=e[0].toString()),"string"==typeof t&&0!==t.length){t&&(this.parsedOrigin=(0,ie.D)(t),this.sameOrigin=this.parsedOrigin.sameOrigin);var i=n.generateTracePayload(this.parsedOrigin);if(i&&(i.newrelicHeader||i.traceContextParentHeader))if(e[0]&&e[0].headers)s(e[0].headers,i)&&(this.dt=i);else{var o={};for(var a in r)o[a]=r[a];o.headers=new Headers(r.headers||{}),s(o.headers,i)&&(this.dt=i),e.length>1?e[1]=o:e.push(o)}}function s(e,t){var r=!1;return t.newrelicHeader&&(e.set("newrelic",t.newrelicHeader),r=!0),t.traceContextParentHeader&&(e.set("traceparent",t.traceContextParentHeader),t.traceContextStateHeader&&e.set("tracestate",t.traceContextStateHeader),r=!0),r}}function y(e,t){this.params={},this.metrics={},this.startTime=(0,S.t)(),this.dt=t,e.length>=1&&(this.target=e[0]),e.length>=2&&(this.opts=e[1]);var r,n=this.opts||{},i=this.target;"string"==typeof i?r=i:"object"==typeof i&&i instanceof le?r=i.url:p.gm?.URL&&"object"==typeof i&&i instanceof URL&&(r=i.href),pe(this,r);var o=(""+(i&&i instanceof le&&i.method||n.method||"GET")).toUpperCase();this.params.method=o,this.body=n.body,this.txSize=G(n.body)||0}function w(e,t){if(this.endTime=(0,S.t)(),this.params||(this.params={}),(0,ce.iW)(this.params))return;let n;this.params.status=t?t.status:0,"string"==typeof this.rxSize&&this.rxSize.length>0&&(n=+this.rxSize);const i={txSize:this.txSize,rxSize:n,duration:(0,S.t)()-this.startTime};r("xhr",[this.params,i,this.startTime,this.endTime,"fetch"],this,a.K7.ajax)}function R(e){const t=this.params,n=this.metrics;if(!this.ended){this.ended=!0;for(let t=0;t<de;t++)e.removeEventListener(ue[t],this.listener,!1);t.aborted||(0,ce.iW)(t)||(n.duration=(0,S.t)()-this.startTime,this.loadCazptureCalled||4!==e.readyState?null==t.status&&(t.status=0):T(this,e),n.cbTime=this.cbTime,r("xhr",[t,n,this.startTime,this.endTime,"xhr"],this,a.K7.ajax))}}function T(e,r){e.params.status=r.status;var n=function(e,t){var r=e.responseType;return"json"===r&&null!==t?t:"arraybuffer"===r||"blob"===r||"json"===r?G(e.response):"text"===r||""===r||void 0===r?G(e.responseText):void 0}(r,e.lastSize);if(n&&(e.metrics.rxSize=n),e.sameOrigin){var i=r.getResponseHeader("X-NewRelic-App-Data");i&&((0,x.p)(O.rs,["Ajax/CrossApplicationTracing/Header/Seen"],void 0,a.K7.metrics,t),e.params.cat=i.split(", ").pop())}e.loadCaptureCalled=!0}t.on("new-xhr",i),t.on("open-xhr-start",o),t.on("open-xhr-end",s),t.on("send-xhr-start",c),t.on("xhr-cb-time",u),t.on("xhr-load-added",d),t.on("xhr-load-removed",l),t.on("xhr-resolved",f),t.on("addEventListener-end",h),t.on("removeEventListener-end",g),t.on("fn-end",v),t.on("fetch-before-start",b),t.on("fetch-start",y),t.on("fn-start",m),t.on("fetch-done",w)}(e,this.ee,this.handler,this.dt),this.importAggregator(e)}}function pe(e,t){var r=(0,ie.D)(t),n=e.params||e;n.hostname=r.hostname,n.port=r.port,n.protocol=r.protocol,n.host=r.hostname+":"+r.port,n.pathname=r.pathname,e.parsedOrigin=r,e.sameOrigin=r.sameOrigin}const ge={},me=["pushState","replaceState"];function ve(e){const t=function(e){return(e||B.ee).get("history")}(e);return!p.RI||ge[t.debugId]++||(ge[t.debugId]=1,(0,W.YM)(t).inPlace(window.history,me,"-")),t}var be=i(3738);const{He:ye,bD:we,d3:Re,Kp:xe,TZ:Te,Lc:Ae,uP:Ee,Rz:Se}=be;class Ne extends b{static featureName=Te;constructor(e,t=!0){super(e,Te,t);if(!(0,m.V)(this.agentIdentifier))return void this.deregisterDrain();const r=this.ee;let n;ve(r),this.eventsEE=(0,F.u)(r),this.eventsEE.on(Ee,(function(e,t){this.bstStart=(0,S.t)()})),this.eventsEE.on(Ae,(function(e,t){(0,x.p)("bst",[e[0],t,this.bstStart,(0,S.t)()],void 0,a.K7.sessionTrace,r)})),r.on(Se+Re,(function(e){this.time=(0,S.t)(),this.startPath=location.pathname+location.hash})),r.on(Se+xe,(function(e){(0,x.p)("bstHist",[location.pathname+location.hash,this.startPath,this.time],void 0,a.K7.sessionTrace,r)}));try{n=new PerformanceObserver((e=>{const t=e.getEntries();(0,x.p)(ye,[t],void 0,a.K7.sessionTrace,r)})),n.observe({type:we,buffered:!0})}catch(e){}this.importAggregator(e,{resourceObserver:n})}}var Oe=i(2614);class _e extends b{static featureName=t.TZ;#i;#o;constructor(e,r=!0){let n;super(e,t.TZ,r),this.replayRunning=!1,this.#o=e;try{n=JSON.parse(localStorage.getItem("".concat(Oe.H3,"_").concat(Oe.uh)))}catch(e){}(0,g.SR)(e.agentIdentifier)&&this.ee.on(t.G4.RECORD,(()=>this.#a())),this.#s(n)?(this.#i=n?.sessionReplayMode,this.#c()):this.importAggregator(e),this.ee.on("err",(e=>{this.replayRunning&&(this.errorNoticed=!0,(0,x.p)(t.G4.ERROR_DURING_REPLAY,[e],void 0,this.featureName,this.ee))})),this.ee.on(t.G4.REPLAY_RUNNING,(e=>{this.replayRunning=e}))}#s(e){return e&&(e.sessionReplayMode===Oe.g.FULL||e.sessionReplayMode===Oe.g.ERROR)||(0,g.Aw)(this.agentIdentifier)}#u=!1;async#c(e){if(!this.#u){this.#u=!0;try{const{Recorder:t}=await Promise.all([i.e(478),i.e(249)]).then(i.bind(i,8589));this.recorder??=new t({mode:this.#i,agentIdentifier:this.agentIdentifier,trigger:e,ee:this.ee}),this.recorder.startRecording(),this.abortHandler=this.recorder.stopRecording}catch(e){}this.importAggregator(this.#o,{recorder:this.recorder,errorNoticed:this.errorNoticed})}}#a(){this.featAggregate?this.featAggregate.mode!==Oe.g.FULL&&this.featAggregate.initializeRecording(Oe.g.FULL,!0):(this.#i=Oe.g.FULL,this.#c(t.Qb.API),this.recorder&&this.recorder.parent.mode!==Oe.g.FULL&&(this.recorder.parent.mode=Oe.g.FULL,this.recorder.stopRecording(),this.recorder.startRecording(),this.abortHandler=this.recorder.stopRecording))}}var Ie=i(3962);class je extends b{static featureName=Ie.TZ;constructor(e,t=!0){if(super(e,Ie.TZ,t),!p.RI||!(0,R.dV)().o.MO)return;const r=ve(this.ee);Ie.tC.forEach((e=>{(0,A.sp)(e,(e=>{a(e)}),!0)}));const n=()=>(0,x.p)("newURL",[(0,S.t)(),""+window.location],void 0,this.featureName,this.ee);r.on("pushState-end",n),r.on("replaceState-end",n);try{this.removeOnAbort=new AbortController}catch(e){}(0,A.sp)("popstate",(e=>(0,x.p)("newURL",[e.timeStamp,""+window.location],void 0,this.featureName,this.ee)),!0,this.removeOnAbort?.signal);let i=!1;const o=new((0,R.dV)().o.MO)(((e,t)=>{i||(i=!0,requestAnimationFrame((()=>{(0,x.p)("newDom",[(0,S.t)()],void 0,this.featureName,this.ee),i=!1})))})),a=(0,v.s)((e=>{(0,x.p)("newUIEvent",[e],void 0,this.featureName,this.ee),o.observe(document.body,{attributes:!0,childList:!0,subtree:!0,characterData:!0})}),100,{leading:!0});this.abortHandler=function(){this.removeOnAbort?.abort(),o.disconnect(),this.abortHandler=void 0},this.importAggregator(e,{domObserver:o})}}var Pe=i(7378);const Ce={},ke=["appendChild","insertBefore","replaceChild"];function Le(e){const t=function(e){return(e||B.ee).get("jsonp")}(e);if(!p.RI||Ce[t.debugId])return t;Ce[t.debugId]=!0;var r=(0,W.YM)(t),n=/[?&](?:callback|cb)=([^&#]+)/,i=/(.*)\.([^.]+)/,o=/^(\w+)(\.|$)(.*)$/;function a(e,t){if(!e)return t;const r=e.match(o),n=r[1];return a(r[3],t[n])}return r.inPlace(Node.prototype,ke,"dom-"),t.on("dom-start",(function(e){!function(e){if(!e||"string"!=typeof e.nodeName||"script"!==e.nodeName.toLowerCase())return;if("function"!=typeof e.addEventListener)return;var o=(s=e.src,c=s.match(n),c?c[1]:null);var s,c;if(!o)return;var u=function(e){var t=e.match(i);if(t&&t.length>=3)return{key:t[2],parent:a(t[1],window)};return{key:e,parent:window}}(o);if("function"!=typeof u.parent[u.key])return;var d={};function l(){t.emit("jsonp-end",[],d),e.removeEventListener("load",l,(0,A.jT)(!1)),e.removeEventListener("error",f,(0,A.jT)(!1))}function f(){t.emit("jsonp-error",[],d),t.emit("jsonp-end",[],d),e.removeEventListener("load",l,(0,A.jT)(!1)),e.removeEventListener("error",f,(0,A.jT)(!1))}r.inPlace(u.parent,[u.key],"cb-",d),e.addEventListener("load",l,(0,A.jT)(!1)),e.addEventListener("error",f,(0,A.jT)(!1)),t.emit("new-jsonp",[e.src],d)}(e[0])})),t}const He={};function De(e){const t=function(e){return(e||B.ee).get("promise")}(e);if(He[t.debugId])return t;He[t.debugId]=!0;var r=t.context,n=(0,W.YM)(t),i=p.gm.Promise;return i&&function(){function e(r){var o=t.context(),a=n(r,"executor-",o,null,!1);const s=Reflect.construct(i,[a],e);return t.context(s).getCtx=function(){return o},s}p.gm.Promise=e,Object.defineProperty(e,"name",{value:"Promise"}),e.toString=function(){return i.toString()},Object.setPrototypeOf(e,i),["all","race"].forEach((function(r){const n=i[r];e[r]=function(e){let i=!1;[...e||[]].forEach((e=>{this.resolve(e).then(a("all"===r),a(!1))}));const o=n.apply(this,arguments);return o;function a(e){return function(){t.emit("propagate",[null,!i],o,!1,!1),i=i||!e}}}})),["resolve","reject"].forEach((function(r){const n=i[r];e[r]=function(e){const r=n.apply(this,arguments);return e!==r&&t.emit("propagate",[e,!0],r,!1,!1),r}})),e.prototype=i.prototype;const o=i.prototype.then;i.prototype.then=function(...e){var i=this,a=r(i);a.promise=i,e[0]=n(e[0],"cb-",a,null,!1),e[1]=n(e[1],"cb-",a,null,!1);const s=o.apply(this,e);return a.nextPromise=s,t.emit("propagate",[i,!0],s,!1,!1),s},i.prototype.then[W.Jt]=o,t.on("executor-start",(function(e){e[0]=n(e[0],"resolve-",this,null,!1),e[1]=n(e[1],"resolve-",this,null,!1)})),t.on("executor-err",(function(e,t,r){e[1](r)})),t.on("cb-end",(function(e,r,n){t.emit("propagate",[n,!0],this.nextPromise,!1,!1)})),t.on("propagate",(function(e,r,n){this.getCtx&&!r||(this.getCtx=function(){if(e instanceof Promise)var r=t.context(e);return r&&r.getCtx?r.getCtx():this})}))}(),t}const Me={},Ke="setTimeout",Ue="setInterval",Ve="clearTimeout",Ge="-start",Fe=[Ke,"setImmediate",Ue,Ve,"clearImmediate"];function Be(e){const t=function(e){return(e||B.ee).get("timer")}(e);if(Me[t.debugId]++)return t;Me[t.debugId]=1;var r=(0,W.YM)(t);return r.inPlace(p.gm,Fe.slice(0,2),Ke+"-"),r.inPlace(p.gm,Fe.slice(2,3),Ue+"-"),r.inPlace(p.gm,Fe.slice(3),Ve+"-"),t.on(Ue+Ge,(function(e,t,n){e[0]=r(e[0],"fn-",null,n)})),t.on(Ke+Ge,(function(e,t,n){this.method=n,this.timerDuration=isNaN(e[1])?0:+e[1],e[0]=r(e[0],"fn-",this,n)})),t}const We={};function ze(e){const t=function(e){return(e||B.ee).get("mutation")}(e);if(!p.RI||We[t.debugId])return t;We[t.debugId]=!0;var r=(0,W.YM)(t),n=p.gm.MutationObserver;return n&&(window.MutationObserver=function(e){return this instanceof n?new n(r(e,"fn-")):n.apply(this,arguments)},MutationObserver.prototype=n.prototype),t}const{TZ:qe,d3:Ze,Kp:Ye,$p:Xe,wW:Je,e5:Qe,tH:$e,uP:et,rw:tt,Lc:rt}=Pe;class nt extends b{static featureName=qe;constructor(e,t=!0){if(super(e,qe,t),!p.RI)return;try{this.removeOnAbort=new AbortController}catch(e){}let r,n=0;const i=this.ee.get("tracer"),o=Le(this.ee),a=De(this.ee),s=Be(this.ee),c=Z(this.ee),u=this.ee.get("events"),d=ne(this.ee),l=ve(this.ee),f=ze(this.ee);function h(e,t){l.emit("newURL",[""+window.location,t])}function g(){n++,r=window.location.hash,this[et]=(0,S.t)()}function m(){n--,window.location.hash!==r&&h(0,!0);var e=(0,S.t)();this[Qe]=~~this[Qe]+e-this[et],this[rt]=e}function v(e,t){e.on(t,(function(){this[t]=(0,S.t)()}))}this.ee.on(et,g),a.on(tt,g),o.on(tt,g),this.ee.on(rt,m),a.on(Je,m),o.on(Je,m),this.ee.on("fn-err",((...t)=>{t[2]?.__newrelic?.[e.agentIdentifier]||(0,x.p)("function-err",[...t],void 0,this.featureName,this.ee)})),this.ee.buffer([et,rt,"xhr-resolved"],this.featureName),u.buffer([et],this.featureName),s.buffer(["setTimeout"+Ye,"clearTimeout"+Ze,et],this.featureName),c.buffer([et,"new-xhr","send-xhr"+Ze],this.featureName),d.buffer([$e+Ze,$e+"-done",$e+Xe+Ze,$e+Xe+Ye],this.featureName),l.buffer(["newURL"],this.featureName),f.buffer([et],this.featureName),a.buffer(["propagate",tt,Je,"executor-err","resolve"+Ze],this.featureName),i.buffer([et,"no-"+et],this.featureName),o.buffer(["new-jsonp","cb-start","jsonp-error","jsonp-end"],this.featureName),v(d,$e+Ze),v(d,$e+"-done"),v(o,"new-jsonp"),v(o,"jsonp-end"),v(o,"cb-start"),l.on("pushState-end",h),l.on("replaceState-end",h),window.addEventListener("hashchange",h,(0,A.jT)(!0,this.removeOnAbort?.signal)),window.addEventListener("load",h,(0,A.jT)(!0,this.removeOnAbort?.signal)),window.addEventListener("popstate",(function(){h(0,n>1)}),(0,A.jT)(!0,this.removeOnAbort?.signal)),this.abortHandler=this.#n,this.importAggregator(e)}#n(){this.removeOnAbort?.abort(),this.abortHandler=void 0}}var it=i(3333);class ot extends b{static featureName=it.TZ;constructor(e,t=!0){super(e,it.TZ,t);const r=[e.init.page_action.enabled,e.init.performance.capture_marks,e.init.performance.capture_measures,e.init.user_actions.enabled];p.RI&&e.init.user_actions.enabled&&(it.Zp.forEach((e=>(0,A.sp)(e,(e=>(0,x.p)("ua",[e],void 0,this.featureName,this.ee)),!0))),it.qN.forEach((e=>(0,A.sp)(e,(e=>(0,x.p)("ua",[e],void 0,this.featureName,this.ee)))))),r.some((e=>e))?this.importAggregator(e):this.deregisterDrain()}}var at=i(993),st=i(3785);class ct extends b{static featureName=at.TZ;constructor(e,t=!0){super(e,at.TZ,t);const r=this.ee;this.ee.on("wrap-logger-end",(function([e]){const{level:t,customAttributes:n}=this;(0,st.R)(r,e,n,t)})),this.importAggregator(e)}}new class extends o{constructor(t,r){super(r),p.gm?(this.features={},(0,R.bQ)(this.agentIdentifier,this),this.desiredFeatures=new Set(t.features||[]),this.desiredFeatures.add(w),this.runSoftNavOverSpa=[...this.desiredFeatures].some((e=>e.featureName===a.K7.softNav)),(0,d.j)(this,t,t.loaderType||"agent"),this.run()):(0,e.R)(21)}get config(){return{info:this.info,init:this.init,loader_config:this.loader_config,runtime:this.runtime}}run(){try{const t=u(this.agentIdentifier),r=[...this.desiredFeatures];r.sort(((e,t)=>a.P3[e.featureName]-a.P3[t.featureName])),r.forEach((r=>{if(!t[r.featureName]&&r.featureName!==a.K7.pageViewEvent)return;if(this.runSoftNavOverSpa&&r.featureName===a.K7.spa)return;if(!this.runSoftNavOverSpa&&r.featureName===a.K7.softNav)return;const n=function(e){switch(e){case a.K7.ajax:return[a.K7.jserrors];case a.K7.sessionTrace:return[a.K7.ajax,a.K7.pageViewEvent];case a.K7.sessionReplay:return[a.K7.sessionTrace];case a.K7.pageViewTiming:return[a.K7.pageViewEvent];default:return[]}}(r.featureName).filter((e=>!(e in this.features)));n.length>0&&(0,e.R)(36,{targetFeature:r.featureName,missingDependencies:n}),this.features[r.featureName]=new r(this)}))}catch(t){(0,e.R)(22,t);for(const e in this.features)this.features[e].abortHandler?.();const r=(0,R.Zm)();delete r.initializedAgents[this.agentIdentifier]?.api,delete r.initializedAgents[this.agentIdentifier]?.features,delete this.sharedAggregator;return r.ee.get(this.agentIdentifier).abort(),!1}}}({features:[he,w,N,Ne,_e,_,D,ot,ct,je,nt],loaderType:"spa"})})()})();</script> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> <title>Versapay Product Updates Portal</title> <meta name="description" content="See our latest feature releases, product improvements and bug fixes."> <meta name="keywords" content="launchnotes, release notes, product updates, changelog"> <link rel="canonical" href="https://updates.versapay.com/"> <meta name="robots" content="noindex"> <meta property="og:title" content="Versapay Product Updates Portal"> <meta property="og:description" content="See our latest feature releases, product improvements and bug fixes."> <meta property="og:type" content="website"> <meta property="og:image" content="https://uploads-ssl.webflow.com/5d4754a8a904cd6b8b0355be/5db7affd24ac076310645649_RocketHero%20Light%20Orange-p-800.png"> <meta name="twitter:title" content="Versapay Product Updates Portal"> <meta name="twitter:description" content="See our latest feature releases, product improvements and bug fixes."> <meta name="twitter:card" content="summary_large_image"> <meta name="twitter:site" content="@launchawesome"> <meta name="twitter:image" content="https://uploads-ssl.webflow.com/5d4754a8a904cd6b8b0355be/5db7affd24ac076310645649_RocketHero%20Light%20Orange-p-800.png"> <meta name="twitter:image:alt" content="The Versapay LaunchNotes page"> <meta name="author" content="Versapay Team"> <meta name="slack-app-id" content="AQZ806FNX"> <link rel="stylesheet" href="https://assets.launchnotes.io/packs/css/public-70e57c81.css" media="all" /> <style> :root { --accent: #3535fe; } body { color: #030728 !important; font-family: "Inter", sans-serif; } .width-container { width: 95%; margin: auto; display: flex; justify-content: space-around; } /* NAVBAR STYLES */ .cover-header .navbar { display: block; padding: 15px 0; background: #fff; box-shadow: 0 1px 3px 0 rgba(0,0,0,.1); } .navbar .width-container { display: flex; justify-content: space-between; align-items: center; width: 78%; } .navbar ul { list-style: none; } .navbar-brand { display: inherit; } .logo img { width: 112px !important; } .nav-links-container, .nav-account-container { display: flex; } .nav-account-container { margin: 0; padding: 0; align-items: center; } .nav-links-container { margin: 0 auto 0 18px; padding: 0; align-items: center; } .nav-links-container li { text-align: left; text-align: center; margin-right: 34px; } .top-level-nav-item:link, .top-level-nav-item:visited, .top-level-nav-item:active { font-size: 16px; font-weight: 400; color: #030728; } .top-level-nav-item:hover { text-decoration: none; color: #3535fe; } .top-level-nav-item:hover .arrow { fill: #3535fe; } .arrow { height: 12px; width: 12px; margin: 0 0 0 2px; fill: #030728; transform: rotate(90deg); transition: .15s; } .dropdown.show .arrow { transform: rotate(270deg); } .cta a { background: #3535fe; padding: 9px 25px; color: #fff; transition: .15s; display: block; font-weight: 600; font-size: 14px; border-radius: 0.25rem; box-shadow: 0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1) } .cta a:hover { background: #2614c1; color: #fff; text-decoration: none; } .cta-alt a { background: #5551ff; padding: 10px 20px; color: #fff; transition: .15s; display: block; font-weight: 600; font-size: 14px; margin-right: 10px; border-radius: 100px; } .cta-alt a:hover { background: #2e2ae8; text-decoration: none; } .account-link a { font-size: 16px; color: #030728; font-weight: 400; margin-right: 20px; padding-bottom: 2px; border-bottom: 2px solid #3535fe; } .account-link a:hover { text-decoration: none; color: #3535fe; border-bottom: 2px solid #3535fe; } /* NORMAL DROPDOWN MENU */ .navbar .dropdown-menu.show { visibility: visible; top: 50px; left: 0; opacity: 1; margin: 0; white-space: nowrap; border-radius: 0; padding: .75rem 1.5rem; width: fit-content; background: #fff; border: none; box-shadow: 0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1); } .navbar .dropdown-menu { display: block; visibility: hidden; transition: opacity .15s ease-in, transform .15s ease-in; } .dropdown:hover .dropdown-menu { display: block; } .navbar .dropdown-menu .width-container { align-items: stretch; justify-content: flex-start !important; width: 100%; display: flex; } .navbar .dropdown-menu .dropdown-column-top { border-bottom: 1px solid #e0e0e0; margin-bottom: 10px; } .navbar .dropdown-menu .middle { border-right: 1px solid #dee2e9; } .navbar .dropdown-menu .right { padding-left: 5%; padding-right: 0; } .dropdown-link-image-container { display: flex; align-items: center; } .navbar .dropdown-menu .dropdown-column h3 { color: #858b93; text-transform: uppercase; margin-bottom: 35px; font-size: 18px; line-height: 24px; } .navbar .dropdown-menu .dropdown-column .features { margin-top: 50px !important; } .navbar .dropdown-menu .dropdown-link { display: flex; color: #374d55; font-size: 16px; font-weight: 600; padding-bottom: 10px; } .dropdown-link:hover { text-decoration: none !important; color: #3535fe !important; } .dropdown-link:hover svg { text-decoration: none !important; fill: #3535fe !important; } .top-link { text-transform: uppercase; margin-top: 0 !important; } .dropdown-link:hover img { fill: #fff !important; } .dropdown-link-image-container img { width: 20px; margin-right: 12px; margin-top: -5px; } .link-text-header { font-size: 14px; font-weight: 400; } .link-text-header:hover { } .link-text-header svg { height: 10px; width: 10px; margin-left: 3px; } .link-text-desc { font-size: 11px; } .dropdown-column-header { margin: 0 0 10px 0; height: 30px; letter-spacing: 3.3px; font-size: 11px; font-weight: 600; text-transform: uppercase; } .dropdown-link-text-container .link-text-copy { font-size: 12px; line-height: 14px; } .dropdown-column { } .dropdown-column hr { margin: 0.5rem 0 0 0; height: 1px; border: 0; background-color: #F1F1F1; } .sidebar { width: 340px; white-space: normal; background: #008EBD; border-top-right-radius: 15px; border-bottom-right-radius: 15px; } .sidebar img { border-top-right-radius: 15px; } .sidebar div { padding: 15px 15px 35px 15px; background: #008EBD; color: #fff; font-size: 16px; font-weight: 600; border-bottom-right-radius: 15px; } .sidebar div span { margin-bottom: 15px; display: block; font-weight: 800; } /* HERO STYLES */ .header-wrapper { padding: 100px 0 50px 0 !important; background: #fff; } .header-wrapper .width-container { width: 1045px; } .header-wrapper h1 { font-size: 60px; line-height: 95px; margin: 0 0 25px 0; font-weight: 300; font-family: "Noto Serif", serif; } .header-wrapper .subheader p { font-size: 20px; line-height: 32px; margin: 10px 0 35px 0; font-weight: 400; } .subscribe-button { display: inline-block; padding: 12px 28px !important; transition: all .15s ease-in; background: #3535fe; text-align: center; color: #fff; border: none !important; font-size: 18px; font-weight: 600; border-radius: 0.25rem !important; box-shadow: 0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1) } .subscribe-button:hover { color: #fff; text-decoration: none !important; background: #2614c1; } .text-block { margin: 0; text-align: center; } .hero-block { margin-top: 0; } .hero-block img { width: 877px; margin: -50px -168px 0 0; } .hero-block video { width: 100%; } /* RESPONSIVE STYLES */ @media screen and (max-width: 1000px) { .navbar .width-container { width: 90%; } .nav-links-container { display: none; } .header-wrapper .width-container { width: 90%; } .width-container { width: 90%; } .nav-account-container { margin-left: auto; border-left: 0; } .header-wrapper h1 { text-align: center; } .text-block { margin: auto; text-align: center; } .hero-block { display: none; } } @media screen and (max-width: 600px) { .cover-header .navbar { padding: 25px 0; } .logo { margin-right: auto; margin-left: auto; } .nav-account-container { display: none; } .text-block { margin: auto; max-width: 300px; } } /* STYLE FIXES - DO NOT EDIT */ .page-subscriber-show, .release-show .navbar { margin-top: 100px; } .subscribe-button .btn-text { display: inline-block !important; } .filter-pane-wrapper .heading { padding-left:0px !important; margin-bottom:8px; } .filter-pane-wrapper .categories .css-1xne685.primary-background { background-color: var(--accent) !important; } .filter-pane-wrapper .categories .css-1xne685:hover { border-color: var(--accent); } .filter-pane-wrapper .light-gray-background { background:transparent; } .filter-pane-wrapper .categories { display:flex; flex-direction:column; align-items:flex-start; padding-left:0px !important; padding-top:0px !important; padding-right:0px !important; padding-bottom:0px !important; } .filter-pane-wrapper .categories .css-1xne685 { display:block; background-color:white !important; padding: 12px 14px; border:1px solid white; width:100%; transition:border-color .15s ease-in; border-radius:4px; } .filter-pane-wrapper .categories .css-1xne685.primary-background { background-color: var(--accent) !important; } .filter-pane-wrapper .categories .css-1xne685:hover { border-color: var(--accent); } .btn-outline-primary { background: none !important; border: 1px solid var(--accent) !important; padding: 8px 16px !important; font-size: 14px; font-weight: normal; } .subscribe-button span svg { display: none !important; } .stages-container .subscribe-button { border: 1px solid var(--accent); padding: 8px 16px !important; font-size: 14px !important; font-weight: normal; } .header-wrapper { background-color: #F6FAFF !important; } #general-feedback-billboard { display: none; } </style> <style> body { color: #3D3D3D; } /* primary-color primary-background */ .primary-color { color: #3535fe; } .primary-background { background-color: #3535fe; } .primary-border { border-color: #3535fe; } .secondary-color { color: #fa8800; } .secondary-background { background-color: #fa8800; } .secondary-border { border-color: #fa8800; } .white-color { color: #FFFFFF; } .white-background { background-color: #FFFFFF; } .white-border { border-color: #FFFFFF; } .off-white-color { color: #F3F6F8; } .off-white-background { background-color: #F3F6F8; } .off-white-border { border-color: #F3F6F8; } .gray-color { color: #D4D5D8; } .gray-background { background-color: #D4D5D8; } .gray-border { border-color: #D4D5D8; } .light-gray-color { color: #E8EBEF; } .light-gray-background { background-color: #E8EBEF; } .light-gray-border { border-color: #E8EBEF; } .primary-text-color { color: #3D3D3D; } .primary-text-background { background-color: #3D3D3D; } .primary-text-border { border-color: #3D3D3D; } .secondary-text-color { color: #BAB9B9; } .secondary-text-background { background-color: #BAB9B9; } .secondary-text-border { border-color: #BAB9B9; } .btn-primary { background-color: #3535fe !important; color: #FFFFFF !important; border-color: #3535fe !important; } .btn-outline-primary { border-color: #3535fe !important; color: #3535fe !important; outline: unset !important; } .btn-outline-primary:hover, .btn-outline-primary:active, .btn-outline-primary:focus { border-color: #3535fe !important; background-color: #3535fe !important; color: #FFFFFF !important; } .custom-control-input:not(:disabled) ~ .custom-control-label { cursor: pointer; } .custom-control-input:checked ~ .custom-control-label:before { border-color: #3535fe !important; background-color: #3535fe !important; } .custom-control-input:checked:disabled ~ .custom-control-label:before { border-color: #D4D5D8 !important; background-color: #D4D5D8 !important; } .ln-end-user-layout .form-control::placeholder { color:rgba(61, 61, 61, 0.35) } .work-item-outer-container:hover { color:#3D3D3D; } input#search-clear { background: rgba(0, 0, 0, 0.6); border: none; border-radius: 8px; box-shadow: 0px 0px 2px rgba(80, 80, 80, 0.7); color: white; font-size: 10px; font-weight: 700; height: 16px; padding: 0; width: 16px; } input#search { background-color: #FFFFFF; border-bottom-color: #FFFFFF; } input#search:focus { border-bottom-color: #3535fe; } .navbar-brand, .navbar-brand:hover { color: #3D3D3D !important; } .brand-circle { color: #3535fe; background-color: #3D3D3D; } .views.navbar { border-top: 1px solid #F3F6F8; } .footie p, .footie a, .footie a:hover { color: #BAB9B9 !important; } header.cover-header button.subscribe-button svg { position: relative; bottom: 1px; fill: #FFFFFF; } header.cover-header button.subscribe-button svg * { transition: fill 60ms; } header.cover-header button.subscribe-button:hover svg *, header.cover-header button.subscribe-button:active svg *, header.cover-header button.subscribe-button:active:focus svg * { fill: #3D3D3D; } .navbar.views .nav-item a.nav-link { color: #BAB9B9; } a, a:hover, a:active { color: #3535fe; } .navbar.views .nav-item.active { border-bottom: 2px solid #3535fe; } .navbar.views .nav-item.active a.nav-link { color: #3535fe; } .navbar.views .nav-item { border-bottom: 2px solid #FFFFFF; } .month-picker a.active { font-weight: bold; } .red { color: #f9512b; } .separator::before, .separator::after { border-bottom: 1px solid #E8EBEF; } .pagination .page-item.active > .page-link, .pagination .page-item.active > .page-link:focus, .pagination .page-item.active > .page-link:hover { background-color: #fa8800; border-color: #fa8800; color: #FFFFFF; } .pagination .page-item .page-link { color: #D4D5D8; } .pagination .page-item .page-link:hover, .pagination .page-item .page-link:focus { background-color: #E8EBEF; color: #3D3D3D; } .release.card { background-color: #FFFFFF; } .release .latest-update .update-wrapper:before { color: #3535fe; } .release .latest-update .update-wrapper .latest-update-heading { color: #3535fe; } .release .content-body { color: #3535fe } .form-control { background-color: #FFFFFF; } ul.timeline li:after { color: #3D3D3D; } ul.timeline li:before { border-left: 1px solid #E8EBEF; } .work-items-index .subscribe-button { background-color: #FFFFFF; } .work-items-index .subscribe-button.following { background-color: #3535fe; } .work-item-show .subscribe-button { background-color: unset; } .work-item-show .subscribe-button.following { background-color: #3535fe; } /* Subscribe modal */ #subscribeModal button[type="submit"] { background-color: #3535fe; border: none; color: #FFFFFF } pre { background-color: #E8EBEF; } .Toastify .Toastify__toast-container { pointer-events: none; } .Toastify .Toastify__toast { border: 1px solid; text-shadow: 0 1px 0 rgba(0, 0, 0, .1); font-family: inherit; } .Toastify .Toastify__toast-theme--colored.Toastify__toast--success { border-color: #3535fe; background-color: #3535fe; color: white; } .Toastify .Toastify__toast-theme--colored.Toastify__toast--error { color: #721c24; background-color: #f8d7da; border-color: #f5c6cb; } .secure-page { padding-top: 60px; text-align: center; } .secure-page-logo { margin-bottom: 30px; } .secure-page-card { width: 450px; max-width: 90%; margin: auto; background: #FFFFFF; border-radius: 8px; padding: 48px; } .secure-page-card-body { text-align: center; margin-bottom: 30px; } .public-timeline { list-style-type: none; padding: 15px; padding-bottom: 0px; position: relative; } .public-timeline .timeline-item { padding: 8px 0; padding-left: 20px; position: relative; } .public-timeline .timeline-item .timeline-announcement { flex: 1; } .public-timeline .timeline-item p { color: #3D3D3D; display: inline-block; margin-bottom: 0px; } .public-timeline .timeline-item .date { color: #BAB9B9; display: inline-block; width: 160px; } .public-timeline .timeline-item .announcement-link { color: #E66A47; } .public-timeline .timeline-item::before { content: ''; background: gray; position: absolute; border-radius: 50%; left: -8px; top: 19px; width: 8px; height: 8px; z-index: 100 } .public-timeline .timeline-tail { position: absolute; top: 20px; left: -5px; height: 100%; border-left: 2px solid #E8EBEF; z-index: 1; } .public-timeline .timeline-item.last .timeline-tail { display: none; } </style> <link rel="apple-touch-icon" sizes=60x60 href="https://ik.imagekit.io/launchnotes/production/tr:w-60,h-60/091fcwrh5ex0jc7077ocycjbb0ai"> <link rel="apple-touch-icon" sizes=76x76 href="https://ik.imagekit.io/launchnotes/production/tr:w-76,h-76/091fcwrh5ex0jc7077ocycjbb0ai"> <link rel="apple-touch-icon" sizes=114x114 href="https://ik.imagekit.io/launchnotes/production/tr:w-114,h-114/091fcwrh5ex0jc7077ocycjbb0ai"> <link rel="apple-touch-icon" sizes=120x120 href="https://ik.imagekit.io/launchnotes/production/tr:w-120,h-120/091fcwrh5ex0jc7077ocycjbb0ai"> <link rel="apple-touch-icon" sizes=152x152 href="https://ik.imagekit.io/launchnotes/production/tr:w-152,h-152/091fcwrh5ex0jc7077ocycjbb0ai"> <link rel="apple-touch-icon" sizes=167x167 href="https://ik.imagekit.io/launchnotes/production/tr:w-167,h-167/091fcwrh5ex0jc7077ocycjbb0ai"> <link rel="apple-touch-icon" sizes=180x180 href="https://ik.imagekit.io/launchnotes/production/tr:w-180,h-180/091fcwrh5ex0jc7077ocycjbb0ai"> <link rel="icon" type="image/png" sizes="32x32" href="https://ik.imagekit.io/launchnotes/production/tr:w-32,h-32/091fcwrh5ex0jc7077ocycjbb0ai"> <link rel="icon" type="image/png" sizes="32x32" href="https://ik.imagekit.io/launchnotes/production/tr:w-16,h-16/091fcwrh5ex0jc7077ocycjbb0ai"> <link rel="shortcut icon" href="https://ik.imagekit.io/launchnotes/production/tr:w-16,h-16/091fcwrh5ex0jc7077ocycjbb0ai"> <link rel="mask-icon" sizes=60x60 href="https://ik.imagekit.io/launchnotes/production/tr:w-32,h-32/091fcwrh5ex0jc7077ocycjbb0ai"> <link rel="mask-icon" sizes=76x76 href="https://ik.imagekit.io/launchnotes/production/tr:w-32,h-32/091fcwrh5ex0jc7077ocycjbb0ai"> <link rel="mask-icon" sizes=114x114 href="https://ik.imagekit.io/launchnotes/production/tr:w-32,h-32/091fcwrh5ex0jc7077ocycjbb0ai"> <link rel="mask-icon" sizes=120x120 href="https://ik.imagekit.io/launchnotes/production/tr:w-32,h-32/091fcwrh5ex0jc7077ocycjbb0ai"> <link rel="mask-icon" sizes=152x152 href="https://ik.imagekit.io/launchnotes/production/tr:w-32,h-32/091fcwrh5ex0jc7077ocycjbb0ai"> <link rel="mask-icon" sizes=167x167 href="https://ik.imagekit.io/launchnotes/production/tr:w-32,h-32/091fcwrh5ex0jc7077ocycjbb0ai"> <link rel="mask-icon" sizes=180x180 href="https://ik.imagekit.io/launchnotes/production/tr:w-32,h-32/091fcwrh5ex0jc7077ocycjbb0ai"> <link rel="manifest" href="https://assets.launchnotes.io/assets/favicon/site-95b4d753717a3b3021b9dcd1a94a59a9918da1016969dcfcca0ce747add2e243.webmanifest"> <meta name="apple-mobile-web-app-title" content="Versapay"> <meta name="application-name" content="Versapay"> <meta name="msapplication-TileColor" content="#2b5797"> <meta name="msapplication-config" content="https://assets.launchnotes.io/assets/favicon/browserconfig-05a7558d6d75012d9277748d15242876a62df20a501c39d8a0c9a506d298d0bb.xml"> <meta name="theme-color" content="#ffffff"> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.7.0/styles/atom-one-dark.min.css" integrity="sha512-Jk4AqjWsdSzSWCSuQTfYRIF84Rq/eV0G2+tu07byYwHcbTGfdmLrHjUSwvzp5HvbiqK4ibmNwdcG49Y5RGYPTg==" crossorigin="anonymous" referrerpolicy="no-referrer" /> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.3/jquery.slim.min.js" integrity="sha512-jxwTCbLJmXPnV277CvAjAcWAjURzpephk0f0nO2lwsvcoDMqBdy1rh1jEwWWTabX1+Grdmj9GFAgtN22zrV0KQ==" crossorigin="anonymous" referrerpolicy="no-referrer"></script> <meta name="csrf-param" content="authenticity_token" /> <meta name="csrf-token" content="X7JUkiS0SiupJWSfsWTU-RDwBqnk2uCIBfK6Q9tD59USPk0duV5y2jWtYHXGuFU5ziemhFdPF_9zYK4KE8x8qA" /> <meta name="csp-nonce" /> <link rel="preconnect" href="https://fonts.googleapis.com"> <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> <link href="https://fonts.googleapis.com/css2?family=Inter:wght@100..900&display=swap" rel="stylesheet"> <link href="https://fonts.googleapis.com/css2?family=Noto+Serif:ital,wght@0,100..900;1,100..900&display=swap" rel="stylesheet <script> !function(t,e){var o,n,p,r;e.__SV||(window.posthog=e,e._i=[],e.init=function(i,s,a){function g(t,e){var o=e.split(".");2==o.length&&(t=t[o[0]],e=o[1]),t[e]=function(){t.push([e].concat(Array.prototype.slice.call(arguments,0)))}}(p=t.createElement("script")).type="text/javascript",p.async=!0,p.src=s.api_host+"/static/array.js",(r=t.getElementsByTagName("script")[0]).parentNode.insertBefore(p,r);var u=e;for(void 0!==a?u=e[a]=[]:a="posthog",u.people=u.people||[],u.toString=function(t){var e="posthog";return"posthog"!==a&&(e+="."+a),t||(e+=" (stub)"),e},u.people.toString=function(){return u.toString(1)+".people (stub)"},o="capture identify alias people.set people.set_once set_config register register_once unregister opt_out_capturing has_opted_out_capturing opt_in_capturing reset isFeatureEnabled onFeatureFlags".split(" "),n=0;n<o.length;n++)g(u,o[n]);e._i.push([i,s,a])},e.__SV=1)}(document,window.posthog||[]); posthog.init('phc_UlHlA3tIQlE89WRH9NSy0MzlOg1XYiUXnXiYjKBJ4OT', { api_host:'https://a.launchnotes.com', loaded: function (posthog_instance) { var properties = {"project_id":"pro_kphKGbfha5gbq","project_name":"Versapay","organization_id":"org_7Hgd7geGqRsct"}; posthog_instance.group('Project', "pro_kphKGbfha5gbq", { name: "Versapay" }); }, } ); </script> <script src="https://assets.launchnotes.io/packs/js/turbo-22df6d47b7fbdfe45f45.js" data-turbo-track="reload" data-cookieconsent="ignore"></script> </head> <body class="off-white-background ln-end-user-layout"> <header class="cover-header white-background"> <nav class="navbar fixed-top"> <div class="width-container"> <a href="https://versapay.launchnotes.io" class="logo"> <img src="https://assets.launchnotes.io/page-customizations/versapay/img/logo.svg" alt="" /> </a> <div id="account" class="nav-account-container"> <ul class="nav-account-container"> <li class="account-link"> <a href="https://www.versapay.com/">Back to versapay.com</a> </li> </ul> </div> </div> </nav> <div class="header-wrapper"> <div class="width-container"> <div class="text-block"> <h1 class="heading"> Product Updates </h1> <div class="subheader"> <p>See our latest feature releases, product improvements, and bug fixes.</p> </div> <button class="subscribe-button btn btn-outline-light my-sm-0 ml-auto pb-2 white-border white-text" data-toggle="modal" data-target="#subscribeModal"><span class="btn-text d-none d-sm-inline-block">Subscribe to updates</span><span class="d-inline-block d-sm-none"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24"> <title>megaphone</title> <g fill="#FFFFFF"> <path d="M19.525,1.149a1,1,0,0,0-.972-.044L10.764,5H5A5,5,0,0,0,5,15h5.764L18.553,18.9A1,1,0,0,0,20,18V2A1,1,0,0,0,19.525,1.149Z" fill="#FFFFFF"></path> <path d="M21,7v6a3,3,0,0,0,0-6Z"></path> <path d="M10.142,17H5.813l2.334,5.744a2,2,0,0,0,3.708-1.492Z"></path> </g> </svg></span></button> </div> </div> </div> </header> <main role="main" id="main"> <turbo-frame id="outlet"> <style> body { background-color: #F3F6F8; } </style> <nav class="views navbar navbar-expand-lg navbar-light white-background py-0 position-relative"> <form id="nav-search-form" class="form-inline position-absolute d-none d-lg-block container-margin-left" data-turbo-frame="outlet" data-turbo-action="replace" action="https://updates.versapay.com/" accept-charset="UTF-8" method="get"> <svg class="svg-icon" width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"> <path d="M8.33333 13.8946C11.555 13.8946 14.1667 11.2829 14.1667 8.06124C14.1667 4.83958 11.555 2.22791 8.33333 2.22791C5.11167 2.22791 2.5 4.83958 2.5 8.06124C2.5 11.2829 5.11167 13.8946 8.33333 13.8946Z" stroke="#3535fe" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> <path d="M17.5 17.2279L12.5 12.2279" stroke="#3535fe" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> </svg> <input type="search" name="search" id="search" class="form-control search-field" tabindex="1" autocomplete="off" placeholder="search" aria-label="Search" /> <input id="search-clear" type="reset" value="X" alt="Clear the search form" style='display:none'> </form> <div class="mx-auto"> <ul class="navbar-nav mx-auto mt-0 flex-row" style="min-height: 60px"> </ul> </div> </nav> <script type="text/javascript" charset="utf-8"> var currentLocation = "/" var clearEl = document.getElementById("search-clear"); var searchEl = document.getElementById("search"); document.getElementById('nav-search-form').addEventListener('submit', function() { document.getElementById('loading-indicator').style.display = 'block'; document.getElementById('announcements-container').style.display = 'none'; }); clearEl.addEventListener('click', function () { const frame = document.querySelector("turbo-frame#outlet"); if (!!frame) { searchEl.value = ""; var params = new URLSearchParams(window.location.search); var nextParams = {}; if (params.has("categories")) { nextParams["categories"] = params.get("categories"); } var search = new URLSearchParams(nextParams).toString(); frame.src = `${currentLocation}?${search}`; const newURL = `${window.location.protocol}//${window.location.host}${currentLocation}?${search}`; window.history.pushState({}, '', newURL); window.Turbo.navigator.history.push(newURL); } }); </script> <div class="container-fluid pb-4 container-padding-left container-padding-right container-padding-top layout-content announcements-index d-md-flex"> <div class="category-feedback-container"> <div class="d-md-block d-none mt-4"> <div id="general-feedback-billboard" class="feedback-billboard-wrapper mr-auto mb-4" > <div data-controller="feedback" data-feedback-mobile-value=false data-feedback-project-id-value="pro_kphKGbfha5gbq" data-feedback-email-value="" data-feedback-feedbackable-id-value="" data-feedback-feedbackable-type-value="" data-feedback-privacy-policy-url-value="https://www.versapay.com/privacy-policy" data-feedback-terms-and-conditions-url-value="https://www.versapay.com/terms-of-use" data-feedback-sentiment-value="importance" data-feedback-path-prefix-value="" data-feedback-can-leave-feedback-value=true data-feedback-project-name-value="Versapay" data-feedback-recaptcha-site-token-value="6LcNzNsZAAAAAJH1kh0G2YHL-7Cm3dSmFKcOzOM_" data-feedback-theme-value="{"primaryColor":"#3535fe","secondaryColor":"#fa8800","primaryTextColor":"#3D3D3D","secondaryTextColor":"#BAB9B9","whiteColor":"#FFFFFF","offWhiteColor":"#F3F6F8","lightGrayColor":"#E8EBEF","grayColor":"#D4D5D8"}" data-feedback-translations-value="{"importanceTitle":"Have an idea or feature request?","importanceCTA":"Leave feedback"}" ></div> </div> <div class="filter-pane-wrapper mr-auto"> <div data-controller="categories" data-categories-selected-categories-value="[]" data-categories-selected-change-types-value="[]" data-categories-project-value="{"id":"pro_kphKGbfha5gbq","name":"Versapay","slug":"versapay","published":true,"categories":[{"id":"cat_aI0vlXpI4RG4o","name":"Cash Application","description":null,"color":"#7bdcb5","text_color":"#394967","background_color":"#7bdcb5"},{"id":"cat_JB3xi8W9LRSrz","name":"Collaborative AR","description":"","color":"#fcb900","text_color":"#394967","background_color":"#fcb900"},{"id":"cat_WHHA4BjcZWrek","name":"ERP Payments","description":null,"color":"#104c81","text_color":"#394967","background_color":"#104c81"},{"id":"cat_1HbA3e40TtkKx","name":"eCommerce","description":null,"color":"#f78da7","text_color":"#394967","background_color":"#f78da7"},{"id":"cat_BnyUE4v0NoaBC","name":"NetSuite Pay","description":null,"color":"#abb8c3","text_color":"#394967","background_color":"#abb8c3"},{"id":"cat_ux5plniI9iELA","name":"Virtual Card Connect","description":null,"color":"#8ed1fc","text_color":"#394967","background_color":"#8ed1fc"},{"id":"cat_0ad4HkcpLLN0z","name":"Microsoft Dynamics 365 Business Central","description":null,"color":"#9900ef","text_color":"#394967","background_color":"#9900ef"},{"id":"cat_cjczfc2XtyBfM","name":"NetSuite","description":null,"color":"#0693e3","text_color":"#394967","background_color":"#0693e3"},{"id":"cat_4sRtJMSzzfTzj","name":"Sage Intacct","description":null,"color":"#00d084","text_color":"#394967","background_color":"#00d084"},{"id":"cat_5rrcaKCK596gk","name":"MRI","description":null,"color":"#d4f8e8","text_color":"#394967","background_color":"#d4f8e8"}],"change_types":[]}" data-categories-location-value="/" data-categories-translations-value="{"categoriesTitle":"Categories","categoriesClear":"Clear"}" data-categories-change-type-rollout-value="false" ></div> </div> <div class="d-none d-md-block"> <a class="primary-text-color powered-by-link " style="display: block !important;" href="https://www.launchnotes.com/powered-by?company=Versapay&utm_campaign=https%3A%2F%2Fupdates.versapay.com%2F&utm_content=project-release-index&utm_medium=powered-by&utm_source=in-app">Powered by LaunchNotes</a> </div> </div> </div> <div class="row mt-0 flex-grow-1"> <div class="loading-indicator col-md-12 col-lg-9 col-xl-8 w-75 mx-auto text-center" id="loading-indicator"> <svg id="L9" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 100 100" xml:space="preserve" width="60px" > <path fill="#3535fe" d="M73,50c0-12.7-10.3-23-23-23S27,37.3,27,50 M30.9,50c0-10.5,8.5-19.1,19.1-19.1S69.1,39.5,69.1,50" > <animateTransform attributeName="transform" attributeType="XML" type="rotate" dur="1s" from="0 50 50" to="360 50 50" repeatCount="indefinite" /> </path> </svg> <p class="loading-label primary-text-color"> Loading... </p> </div> <div class="col-md-12 col-lg-9 col-xl-8 mx-auto announcements-container" id="announcements-container"> <div class="separator primary-text-color month-published-header">November 2024</div> <article class="release announcement card white-background d-flex pt-3"> <a href="https://updates.versapay.com/announcements/november-25-2024-customer-portal-update" target="_self"> <section class="announcement-categories"> <div class="d-flex flex-wrap"> <span class="category-badge d-flex align-items-center mr-3" style="font-size:12px"> <svg class="category-dot" width="9px" height="9px" viewBox="0 0 12 12" fill="#fcb900" xmlns="http://www.w3.org/2000/svg"> <circle cx="6" cy="6" r="6" fill="#fcb900"/> </svg> <span class="category-title secondary-text-color text-uppercase" style="letter-spacing:0.2px">Collaborative AR</span> </span> <span class="category-badge d-flex align-items-center mr-3" style="font-size:12px"> <svg class="category-dot" width="9px" height="9px" viewBox="0 0 12 12" fill="#104c81" xmlns="http://www.w3.org/2000/svg"> <circle cx="6" cy="6" r="6" fill="#104c81"/> </svg> <span class="category-title secondary-text-color text-uppercase" style="letter-spacing:0.2px">ERP Payments</span> </span> </div> </section> <section class="announcement-title-container"> <h2 class="m-0">November 25, 2024: Customer Portal Update</h2> </section> <section class="announcement-excerpt-container"> For Collaborative AR and ERP Payments Customer Portal users, we’re excited to announce an enhancement that makes paying order deposit payments more... </section> <section class="announcement-date-container"> <small class="primary-text-color opacity-6 timestamp release-timestamp"><time datetime="2024-11-25T19:59:01Z" data-local="time" data-format="%B %e, %Y">November 25, 2024</time></small> </section> </a> </article> <article class="release announcement card white-background d-flex pt-3"> <a href="https://updates.versapay.com/announcements/november-7-2024-collaborative-ar-update" target="_self"> <section class="announcement-categories"> <div class="d-flex flex-wrap"> <span class="category-badge d-flex align-items-center mr-3" style="font-size:12px"> <svg class="category-dot" width="9px" height="9px" viewBox="0 0 12 12" fill="#fcb900" xmlns="http://www.w3.org/2000/svg"> <circle cx="6" cy="6" r="6" fill="#fcb900"/> </svg> <span class="category-title secondary-text-color text-uppercase" style="letter-spacing:0.2px">Collaborative AR</span> </span> </div> </section> <section class="announcement-title-container"> <h2 class="m-0">November 7, 2024: Collaborative AR Update</h2> </section> <section class="announcement-excerpt-container"> This update is for suppliers who organize customers into hierarchies and use the “Consolidated Customers” filter on the Customers Listing page. To access the... </section> <section class="announcement-date-container"> <small class="primary-text-color opacity-6 timestamp release-timestamp"><time datetime="2024-11-07T16:49:44Z" data-local="time" data-format="%B %e, %Y">November 7, 2024</time></small> </section> </a> </article> <div class="separator primary-text-color month-published-header">October 2024</div> <article class="release announcement card white-background d-flex pt-3"> <a href="https://updates.versapay.com/announcements/october-16-2024-collaborative-ar-update" target="_self"> <section class="announcement-categories"> <div class="d-flex flex-wrap"> <span class="category-badge d-flex align-items-center mr-3" style="font-size:12px"> <svg class="category-dot" width="9px" height="9px" viewBox="0 0 12 12" fill="#fcb900" xmlns="http://www.w3.org/2000/svg"> <circle cx="6" cy="6" r="6" fill="#fcb900"/> </svg> <span class="category-title secondary-text-color text-uppercase" style="letter-spacing:0.2px">Collaborative AR</span> </span> </div> </section> <section class="announcement-title-container"> <h2 class="m-0">October 16, 2024: Collaborative AR Update</h2> </section> <section class="announcement-excerpt-container"> We’re excited to announce the first phase of updates to your Supplier Portal interface featuring enhanced performance and a better user experience. This is just the beginning—more UI enhancements are planned for 2025! </section> <section class="announcement-date-container"> <small class="primary-text-color opacity-6 timestamp release-timestamp"><time datetime="2024-10-17T00:09:06Z" data-local="time" data-format="%B %e, %Y">October 17, 2024</time></small> </section> </a> </article> <article class="release announcement card white-background d-flex pt-3"> <a href="https://updates.versapay.com/announcements/october-3-2024-versapay-for-sage-intacct-update" target="_self"> <section class="announcement-categories"> <div class="d-flex flex-wrap"> <span class="category-badge d-flex align-items-center mr-3" style="font-size:12px"> <svg class="category-dot" width="9px" height="9px" viewBox="0 0 12 12" fill="#7bdcb5" xmlns="http://www.w3.org/2000/svg"> <circle cx="6" cy="6" r="6" fill="#7bdcb5"/> </svg> <span class="category-title secondary-text-color text-uppercase" style="letter-spacing:0.2px">Cash Application</span> </span> <span class="category-badge d-flex align-items-center mr-3" style="font-size:12px"> <svg class="category-dot" width="9px" height="9px" viewBox="0 0 12 12" fill="#fcb900" xmlns="http://www.w3.org/2000/svg"> <circle cx="6" cy="6" r="6" fill="#fcb900"/> </svg> <span class="category-title secondary-text-color text-uppercase" style="letter-spacing:0.2px">Collaborative AR</span> </span> </div> </section> <section class="announcement-title-container"> <h2 class="m-0">October 3, 2024: Versapay for Sage Intacct Update</h2> </section> <section class="announcement-excerpt-container"> We're excited to announce an enhancement to our Sage Intacct Connector, giving you more control over how payments sync between Versapay and Sage Intacct. </section> <section class="announcement-date-container"> <small class="primary-text-color opacity-6 timestamp release-timestamp"><time datetime="2024-10-03T12:59:01Z" data-local="time" data-format="%B %e, %Y">October 3, 2024</time></small> </section> </a> </article> <div class="separator primary-text-color month-published-header">September 2024</div> <article class="release announcement card white-background d-flex pt-3"> <a href="https://updates.versapay.com/announcements/introducing-virtual-card-connect-streamline-your-payments-today" target="_self"> <section class="announcement-categories"> <div class="d-flex flex-wrap"> <span class="category-badge d-flex align-items-center mr-3" style="font-size:12px"> <svg class="category-dot" width="9px" height="9px" viewBox="0 0 12 12" fill="#7bdcb5" xmlns="http://www.w3.org/2000/svg"> <circle cx="6" cy="6" r="6" fill="#7bdcb5"/> </svg> <span class="category-title secondary-text-color text-uppercase" style="letter-spacing:0.2px">Cash Application</span> </span> <span class="category-badge d-flex align-items-center mr-3" style="font-size:12px"> <svg class="category-dot" width="9px" height="9px" viewBox="0 0 12 12" fill="#fcb900" xmlns="http://www.w3.org/2000/svg"> <circle cx="6" cy="6" r="6" fill="#fcb900"/> </svg> <span class="category-title secondary-text-color text-uppercase" style="letter-spacing:0.2px">Collaborative AR</span> </span> <span class="category-badge d-flex align-items-center mr-3" style="font-size:12px"> <svg class="category-dot" width="9px" height="9px" viewBox="0 0 12 12" fill="#8ed1fc" xmlns="http://www.w3.org/2000/svg"> <circle cx="6" cy="6" r="6" fill="#8ed1fc"/> </svg> <span class="category-title secondary-text-color text-uppercase" style="letter-spacing:0.2px">Virtual Card Connect</span> </span> </div> </section> <section class="announcement-title-container"> <h2 class="m-0">Introducing Virtual Card Connect: Streamline Your Payments Today</h2> </section> <section class="announcement-excerpt-container"> We’re excited to introduce Virtual Card Connect, a new solution that simplifies virtual card acceptance, payment processing, and reconciliation. </section> <section class="announcement-date-container"> <small class="primary-text-color opacity-6 timestamp release-timestamp"><time datetime="2024-09-23T13:59:01Z" data-local="time" data-format="%B %e, %Y">September 23, 2024</time></small> </section> </a> </article> <article class="release announcement card white-background d-flex pt-3"> <a href="https://updates.versapay.com/announcements/september-20-2024-versapay-for-netsuite-unified-product-update" target="_self"> <section class="announcement-categories"> <div class="d-flex flex-wrap"> <span class="category-badge d-flex align-items-center mr-3" style="font-size:12px"> <svg class="category-dot" width="9px" height="9px" viewBox="0 0 12 12" fill="#fcb900" xmlns="http://www.w3.org/2000/svg"> <circle cx="6" cy="6" r="6" fill="#fcb900"/> </svg> <span class="category-title secondary-text-color text-uppercase" style="letter-spacing:0.2px">Collaborative AR</span> </span> </div> </section> <section class="announcement-title-container"> <h2 class="m-0">September 20, 2024: Versapay for NetSuite (Unified Product) Update</h2> </section> <section class="announcement-excerpt-container"> We're excited to announce enhancements to our Automated Settlement Reconciliation feature for our ERP Payments for NetSuite solution. </section> <section class="announcement-date-container"> <small class="primary-text-color opacity-6 timestamp release-timestamp"><time datetime="2024-09-20T13:59:04Z" data-local="time" data-format="%B %e, %Y">September 20, 2024</time></small> </section> </a> </article> <article class="release announcement card white-background d-flex pt-3"> <a href="https://updates.versapay.com/announcements/september-15-2024-collaborative-ar-update" target="_self"> <section class="announcement-categories"> <div class="d-flex flex-wrap"> <span class="category-badge d-flex align-items-center mr-3" style="font-size:12px"> <svg class="category-dot" width="9px" height="9px" viewBox="0 0 12 12" fill="#fcb900" xmlns="http://www.w3.org/2000/svg"> <circle cx="6" cy="6" r="6" fill="#fcb900"/> </svg> <span class="category-title secondary-text-color text-uppercase" style="letter-spacing:0.2px">Collaborative AR</span> </span> </div> </section> <section class="announcement-title-container"> <h2 class="m-0">September 15, 2024: Collaborative AR Update</h2> </section> <section class="announcement-excerpt-container"> We’re excited to introduce a new enhancement to the Collaborative AR Supplier Portal that allows you to view aging reports by month. </section> <section class="announcement-date-container"> <small class="primary-text-color opacity-6 timestamp release-timestamp"><time datetime="2024-09-16T00:11:49Z" data-local="time" data-format="%B %e, %Y">September 16, 2024</time></small> </section> </a> </article> <div class="separator primary-text-color month-published-header">August 2024</div> <article class="release announcement card white-background d-flex pt-3"> <a href="https://updates.versapay.com/announcements/august-30-2024-collaborative-ar-updates" target="_self"> <section class="announcement-categories"> <div class="d-flex flex-wrap"> <span class="category-badge d-flex align-items-center mr-3" style="font-size:12px"> <svg class="category-dot" width="9px" height="9px" viewBox="0 0 12 12" fill="#fcb900" xmlns="http://www.w3.org/2000/svg"> <circle cx="6" cy="6" r="6" fill="#fcb900"/> </svg> <span class="category-title secondary-text-color text-uppercase" style="letter-spacing:0.2px">Collaborative AR</span> </span> </div> </section> <section class="announcement-title-container"> <h2 class="m-0">August 30, 2024: Collaborative AR Updates</h2> </section> <section class="announcement-excerpt-container"> We're excited to announce the latest enhancements to Collaborative AR, designed to improve integration, flexibility, and control across various platforms. </section> <section class="announcement-date-container"> <small class="primary-text-color opacity-6 timestamp release-timestamp"><time datetime="2024-08-30T20:50:00Z" data-local="time" data-format="%B %e, %Y">August 30, 2024</time></small> </section> </a> </article> <article class="release announcement card white-background d-flex pt-3"> <a href="https://updates.versapay.com/announcements/august-26-2024-collaborative-ar-netsuite-users-updates" target="_self"> <section class="announcement-title-container"> <h2 class="m-0">August 26, 2024: Collaborative AR (NetSuite Users) Updates</h2> </section> <section class="announcement-excerpt-container"> We’re excited to introduce the latest updates and enhancements for the NetSuite Connector Bundle (ID 413798). These improvements are designed to streamline... </section> <section class="announcement-date-container"> <small class="primary-text-color opacity-6 timestamp release-timestamp"><time datetime="2024-08-26T14:40:00Z" data-local="time" data-format="%B %e, %Y">August 26, 2024</time></small> </section> </a> </article> <article class="release announcement card white-background d-flex pt-3"> <a href="https://updates.versapay.com/announcements/august-13-2024-erp-payments-for-netsuite-updates" target="_self"> <section class="announcement-title-container"> <h2 class="m-0">August 13, 2024: ERP Payments for NetSuite Updates</h2> </section> <section class="announcement-excerpt-container"> We’re excited to bring you the latest updates and enhancements for the NetSuite Embedded Payments Bundle. These improvements are designed to ensure compatibility with the upcoming NetSuite ERP v. 2024.2, resolve key issues, and enhance the functionality of your payment processing workflows. </section> <section class="announcement-date-container"> <small class="primary-text-color opacity-6 timestamp release-timestamp"><time datetime="2024-08-13T17:35:00Z" data-local="time" data-format="%B %e, %Y">August 13, 2024</time></small> </section> </a> </article> <div class="p-2 d-flex justify-content-between align-items-center mb-4"> <div class="mx-auto"> <nav aria-label="pager" class="pagy-bootstrap-nav" role="navigation"> <ul class="pagination"> <li class="page-item prev disabled"> <a href="#" class="page-link"> <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 36 36"><title>left chevron</title> <g fill="#CCC"> <path d="M23.12 11.12L21 9l-9 9 9 9 2.12-2.12L16.24 18z"></path> </g> </svg> </a> </li> <li class="page-item active"> <a href="/?page=1" class="page-link" data-turbo-action="replace" >1</a> </li> <li class="page-item"> <a href="/?page=2" class="page-link" data-turbo-action="replace" rel="next" >2</a> </li> <li class="page-item"> <a href="/?page=3" class="page-link" data-turbo-action="replace" >3</a> </li> <li class="page-item"> <a href="/?page=4" class="page-link" data-turbo-action="replace" >4</a> </li> <li class="page-item next"> <a href="/?page=2" class="page-link" data-turbo-action="replace" rel="next" aria-label="next"> <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 36 36"><title>left chevron</title> <g fill="#CCC"> <path d="M15 9l-2.12 2.12L19.76 18l-6.88 6.88L15 27l9-9z"></path> </g> </svg></a> </li> </ul> </nav> </div> </div> </div> <div class="d-none d-lg-block col-lg-3 col-xl-4 month-picker-container"> <dl class="month-picker align-right"> <dt class="primary-text-color">Jump to Month</dt> <dd> <a data-turbo-frame="outlet" data-turbo-action="replace" class="active primary-color" aria-current="page" href="/?date=2024-11-01">November 2024</a> </dd> <dd> <a data-turbo-frame="outlet" data-turbo-action="replace" class="primary-text-color opacity-8" href="/?date=2024-10-01">October 2024</a> </dd> <dd> <a data-turbo-frame="outlet" data-turbo-action="replace" class="primary-text-color opacity-8" href="/?date=2024-09-01">September 2024</a> </dd> <dd> <a data-turbo-frame="outlet" data-turbo-action="replace" class="primary-text-color opacity-8" href="/?date=2024-08-01">August 2024</a> </dd> <dd> <a data-turbo-frame="outlet" data-turbo-action="replace" class="primary-text-color opacity-8" href="/?date=2024-07-01">July 2024</a> </dd> <dd> <a data-turbo-frame="outlet" data-turbo-action="replace" class="primary-text-color opacity-8" href="/?date=2024-06-01">June 2024</a> </dd> <dd> <a data-turbo-frame="outlet" data-turbo-action="replace" class="primary-text-color opacity-8" href="/?date=2024-05-01">May 2024</a> </dd> <dd> <a data-turbo-frame="outlet" data-turbo-action="replace" class="primary-text-color opacity-8" href="/?date=2024-04-01">April 2024</a> </dd> <dd> <a data-turbo-frame="outlet" data-turbo-action="replace" class="primary-text-color opacity-8" href="/?date=2024-03-01">March 2024</a> </dd> <dd> <a data-turbo-frame="outlet" data-turbo-action="replace" class="primary-text-color opacity-8" href="/?date=2024-02-01">February 2024</a> </dd> <dd> <a data-turbo-frame="outlet" data-turbo-action="replace" class="primary-text-color opacity-8" href="/?date=2024-01-01">January 2024</a> </dd> </dl> </div> </div> <div class="footie row mt-4 mb-4 ml-0 mr-0 d-block d-md-none"> <div class="col text-center mt-3 mb-4 p-0"> <a class="primary-text-color powered-by-link " style="display: block !important;" href="https://www.launchnotes.com/powered-by?company=Versapay&utm_campaign=https%3A%2F%2Fupdates.versapay.com%2F&utm_content=project-release-index&utm_medium=powered-by&utm_source=in-app">Powered by LaunchNotes</a> </div> </div> <div class="chin fixed-bottom d-block d-md-none primary-background-color text-white border-top py-2 px-4" style="background-color:#3535fe"> <div class="col mb-2"> <div id="general-feedback-billboard" class="feedback-billboard-wrapper mr-auto my-2" > <div data-controller="feedback" data-feedback-mobile-value=true data-feedback-project-id-value="pro_kphKGbfha5gbq" data-feedback-email-value="" data-feedback-feedbackable-id-value="" data-feedback-feedbackable-type-value="" data-feedback-privacy-policy-url-value="https://www.versapay.com/privacy-policy" data-feedback-terms-and-conditions-url-value="https://www.versapay.com/terms-of-use" data-feedback-sentiment-value="importance" data-feedback-path-prefix-value="" data-feedback-can-leave-feedback-value=true data-feedback-project-name-value="Versapay" data-feedback-recaptcha-site-token-value="6LcNzNsZAAAAAJH1kh0G2YHL-7Cm3dSmFKcOzOM_" data-feedback-theme-value="{"primaryColor":"#3535fe","secondaryColor":"#fa8800","primaryTextColor":"#3D3D3D","secondaryTextColor":"#BAB9B9","whiteColor":"#FFFFFF","offWhiteColor":"#F3F6F8","lightGrayColor":"#E8EBEF","grayColor":"#D4D5D8"}" data-feedback-translations-value="{"importanceTitle":"Have an idea or feature request?","importanceCTA":"Leave feedback"}" ></div> </div> </div> </div> </div> </turbo-frame> </main> <div id="feedback-portal-root"></div> <div class="modal fade white-background-color" id="subscribeModal" tabindex="-1" role="dialog" aria-labelledby="subscribeLabel" aria-hidden="true"> <div class="modal-dialog" role="document"> <div class="modal-content"> <div class="modal-header"> <h5 class="modal-title mt-0 primary-text-color" id="subscribeLabel">Subscribe to updates</h5> <button type="button" class="close" data-dismiss="modal" aria-label="Close"> <span aria-hidden="true">×</span> </button> </div> <form data-turbo="false" class="new_subscriber" id="new_subscriber" action="https://updates.versapay.com/subscribers" accept-charset="UTF-8" method="post"><input type="hidden" name="authenticity_token" value="8VzKxF4JA6aM4OhUcA0HmZ24k2PxHF0rb_lZSlQEFfYvc_irNWll1VQbNZ_72GHfl1rkzxs-YNywug_NMCvugA" autocomplete="off" /> <div class="modal-body"> <div class="form-group primary-text-color"> <label class="secondary-text-color" for="subscriber_email">Email</label> <input class="form-control" type="email" name="subscriber[email]" id="subscriber_email" /> <input type="hidden" name="subscribed_object_type" id="subscribed_object_type" value="Project" autocomplete="off" /> <input type="hidden" name="subscribed_object_id" id="subscribed_object_id" value="pro_kphKGbfha5gbq" autocomplete="off" /> <script src="https://www.recaptcha.net/recaptcha/api.js?render=6LcNzNsZAAAAAJH1kh0G2YHL-7Cm3dSmFKcOzOM_" ></script> <script> // Define function so that we can call it again later if we need to reset it // This executes reCAPTCHA and then calls our callback. function executeRecaptchaForSubscribe() { grecaptcha.ready(function() { grecaptcha.execute('6LcNzNsZAAAAAJH1kh0G2YHL-7Cm3dSmFKcOzOM_', {action: 'subscribe'}).then(function(token) { setInputWithRecaptchaResponseTokenForSubscribe('g-recaptcha-response-data-subscribe', token) }); }); }; // Invoke immediately executeRecaptchaForSubscribe() // Async variant so you can await this function from another async function (no need for // an explicit callback function then!) // Returns a Promise that resolves with the response token. async function executeRecaptchaForSubscribeAsync() { return new Promise((resolve, reject) => { grecaptcha.ready(async function() { resolve(await grecaptcha.execute('6LcNzNsZAAAAAJH1kh0G2YHL-7Cm3dSmFKcOzOM_', {action: 'subscribe'})) }); }) }; var setInputWithRecaptchaResponseTokenForSubscribe = function(id, token) { var element = document.getElementById(id); if (element !== null) element.value = token; } </script> <input type="hidden" name="g-recaptcha-response-data[subscribe]" id="g-recaptcha-response-data-subscribe" data-sitekey="6LcNzNsZAAAAAJH1kh0G2YHL-7Cm3dSmFKcOzOM_" class="g-recaptcha g-recaptcha-response "/> <style> .grecaptcha-badge { visibility: hidden; } </style> </div> <button type="submit" class="btn btn-primary btn-block mb-2 primary-background-color">Subscribe</button> <small class="secondary-text-color"> By clicking subscribe, you accept our <a href="https://www.versapay.com/privacy-policy" target="_blank" class="primary-color">privacy policy</a> and <a href="https://www.versapay.com/terms-of-use" target="_blank" class="primary-color">terms and conditions</a>. <span> reCAPTCHA <a href="https://policies.google.com/privacy" class="primary-color">privacy</a> and <a href="https://policies.google.com/terms" class="primary-color">terms</a> apply </span> </small> </div> </form> </div> </div> </div> <script src="https://browser.sentry-cdn.com/5.21.4/bundle.tracing.min.js" integrity="sha384-L18Y4dnHG3rj58y7WwOZH5ZKkXqPhaf5M9QItUT/MB5t71mgOwtxs83RI+4m/nE5" crossorigin="anonymous"></script> <script> Sentry.init({ release: '6dfd5074848bd8b054c2e03df579d6b677619aad', environment: 'production', dsn: "https://9bfa402b68994872b61bcd78267127f6@o269410.ingest.sentry.io/1772406", }); </script> <script defer src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.16.0/umd/popper.min.js" integrity="sha512-hCP3piYGSBPqnXypdKxKPSOzBHF75oU8wQ81a6OiGXHFMeKs9/8ChbgYl7pUvwImXJb03N4bs1o1DzmbokeeFw==" crossorigin="anonymous" referrerpolicy="no-referrer"></script> <script defer src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap/4.6.2/js/bootstrap.min.js" integrity="sha512-7rusk8kGPFynZWu26OKbTeI+QPoYchtxsmPeBqkHIEXJxeun4yJ4ISYe7C6sz9wdxeE1Gk3VxsIWgCZTc+vX3g==" crossorigin="anonymous" referrerpolicy="no-referrer"></script> <script defer src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.7.0/highlight.min.js" integrity="sha512-bgHRAiTjGrzHzLyKOnpFvaEpGzJet3z4tZnXGjpsCcqOnAH6VGUx9frc5bcIhKTVLEiCO6vEhNAgx5jtLUYrfA==" crossorigin="anonymous" referrerpolicy="no-referrer"></script> <script src="https://assets.launchnotes.io/packs/js/public-2eeca1eeda265001f125.js" data-cookieconsent="ignore"></script> <script> document.addEventListener('DOMContentLoaded', (event) => { document.querySelectorAll('pre, pre code').forEach((block) => { hljs.highlightBlock(block); }); }); if (URLSearchParams !== 'undefined') { let queryParams = new URLSearchParams(window.location.search); if (queryParams && (queryParams.get("token") || queryParams.get("workosToken") || queryParams.get("authToken"))) { queryParams.delete('token'); queryParams.delete('authToken'); queryParams.delete('workosToken'); window.history.pushState({}, document.title, location.origin + location.pathname + queryParams.toString()) } } </script> <script> document.addEventListener('turbo:click', async (event) => { // Clear search params, since the component for Ideas is keeping // the previous state for the params, and therefore misapplying filters if (event.detail.url.endsWith('/ideas')) { const newURL = `${window.location.protocol}//${window.location.host}${window.location.pathname}`; window.history.pushState({}, '', newURL); } // If we are targeting a pagination link, scroll to the navbar // The navbar is a nice padding above the announcement list // Note that we only use pagination like this for announcement // list if (event.target.classList.contains('page-link')) { let navbarQuery = document.querySelectorAll('nav.views.navbar') if (!!navbarQuery) { let navbar = navbarQuery[0] navbar.scrollIntoView({ behavior: 'smooth' }) } } }) </script> <div data-react-class="Alerts" data-react-props="{"initialAlerts":[]}"></div> <script> $('body').on('hidden.bs.modal', '.modal', function() { $('.btn').blur(); }); $('body').on('shown.bs.modal', '.modal', function() { $('.form-control').focus(); }); </script> </body> </html>