@Override
    protected Event doExecuteInternal(final RequestContext requestContext) throws Exception {
        val principal = resolvePrincipal(WebUtils.getAuthentication(requestContext).getPrincipal(), requestContext);
        val keyAccount = repository.create(principal.getId());

        val keyUri = buildRegistrationUri(requestContext, keyAccount, principal);
        val flowScope = requestContext.getFlowScope();

        flowScope.put(FLOW_SCOPE_ATTR_ACCOUNT, keyAccount);

        val qrCodeBase64 = QRUtils.generateQRCode(keyUri, QRUtils.SIZE, QRUtils.SIZE);
        flowScope.put(FLOW_SCOPE_ATTR_QR_IMAGE_BASE64, qrCodeBase64);

        LOGGER.debug("Registration key URI is [{}]", keyUri);
        return eventFactory.event(this, CasWebflowConstants.TRANSITION_ID_REGISTER);
    }
Flow scope attribute name indicating the account QR code.
support/cas-server-support-otp-mfa-core/src/main/java/org/apereo/cas/otp/web/flow/OneTimeTokenAccountCreateRegistrationAction.java