Organizations may face two significant challenges with conversational AI. First, users want answers where they work – in their CRM, support console, or analytics portal – not in separate tools. Second, implementing a secure embedded chat in their applications may require several weeks of development to build authentication, token verification, domain security, and global delivery infrastructure.
Amazon QuickBooks Embedded Chat helps solve the first challenge by bringing conversational AI directly into your application, so users can query structured data, search documents, and trigger actions without switching tools.
In this post, we show you how to solve the second challenge with a one-click deployment solution for embedding chat agents using QuickTime Suite. Embedding SDK In the enterprise portal.
solution overview
The solution deploys a secure web portal for embedded chat using Amazon CloudFront, Amazon Cognito for global content delivery OAuth 2.0 Authentication, Amazon API Gateway for REST API endpoints, AWS Lambda for serverless API processing, and OpenID Connect (OIDC) Federation for identity integration with Quicken Suite.
The solution implements defense-in-depth security with multiple layers of security: DDoS protection on CloudFront, a private Amazon Simple Storage Service (Amazon S3) bucket with native access controls to help prevent direct access to frontend assets, AWS WAF rate limiting protection on the API Gateway, and Amazon Cognito before generating time-limited user-specific embed URLs with low-privileged AWS identities and access. JSON Web Token (JWT) signature verification using public keys. Management (IAM) permissions.
The following diagram shows the solution architecture.
The workflow includes the following steps:
- Users access a web portal URL, which points to CloudFront.
- CloudFront uses basic access controls to fetch HTML, CSS, and JavaScript files from a private S3 bucket.
- The web application checks for a valid authentication token and redirects unauthenticated users to a UI hosted by Amazon Cognito for OAuth 2.0 login.
- Users enter credentials on the Amazon Cognito login page, which validates them and redirects back to the CloudFront URL with a single-use authorization code.
- The application extracts the authorization code and makes an HTTPS API call to the API Gateway, which passes through AWS WAF rate limiting.
- The API gateway invokes the Lambda function with the authorization code.
- The Lambda function makes a server-to-server HTTPS call to the Amazon Cognito OAuth token endpoint, exchanging the authorization code for the JWT token (ID token, access token, refresh token).
- The function validates the cryptographic signature of the ID token using an Amazon Cognito public key JSON Web Key Set (JWKS) with thread-safe caching.
The following is a decoded JWT example:
- The Lambda function calls the AWS Security Token Service (AWS STS) AssumeRoleWithWebIdentity API with the verified ID token to assume the IAM web identity role and obtain the temporary AWS credential.
- The function uses temporary credentials to call the Quick Suite ListUsers API to verify the user’s existence, then calls the GenerateEmbedUrlForRegisteredUser API to help generate a secure embedded URL with domain restrictions.
- The function returns the embed URL in a JSON response with Cross-Origin Resource Sharing (CORS) headers from the API Gateway via CloudFront. The following is an embed URL example:
- CloudFront uses the Quick Suite Embedding SDK to create an application embedding context and render the chat interface in an HTML iframe with secure cross-origin communication.
You can deploy the solution with the following high-level steps:
- Deploy serverless infrastructure using the AWS Cloud Development Kit (AWS CDK).
- Provision users in Amazon Cognito and Quick Suite.
- Share Quick Suite assets (chat agents and related connections, knowledge base).
- Access the web portal to use Quick Suite chat agents.
Prerequisites
The following prerequisites are required to deploy the solution demonstrated in this post:
Deploy serverless infrastructure using AWS CDK
Complete the following steps to deploy serverless infrastructure using AWS CDK:
- clone GitHub repository: :
- Deploy infrastructure:
You will be asked to enter your AWS region code, AWS CloudFormation stack ID and portal title, and your AWS CLI profile.



Provision users in Amazon Cognito and Quick Suite
Complete the following steps to provision users in Amazon Cognito and Quick Suite:
- Create an Amazon Cognito user in an Amazon Cognito user pool:

- Create a federated user in QuickTime Suite:

Share Instant Suite Chat Agent
Complete the following steps to share your Instant Suite chat agent:
- Sign in to the Quick Suite console using credentials with the Quick Suite Author Pro role.
- choose chat agent In the navigation pane.
- Select the agents you want to share (for example, AnyCompany Ecom Order Assistant) and select share.

- Find the username you created earlier (for example, user123@example.com).
- choose share.


After sharing this agent, you must share each linked resource of the agent separately to verify full functionality.
Access the web portal to use Quick Suite chat agents
Complete the following steps to access the web portal and start using chat agents:
- View the temporary password in the Amazon Cognito verification email.
- Access the CloudFront URL from your web browser with the user ID and temporary password.
- When you login for the first time you will be asked to change your password.
After successful login you can see my colleague In the chat interface.
- Select a region to connect with custom Quick Suite chat agents.

- To see chat agents shared with you, select shared with me under filter.

- Choose the agent you want and start chatting.

The following screenshots show the chat interaction of a customer service representative tracking an example online order and processing its return as requested by a verified customer over the phone.




cleanliness
To clear your resources, delete the deployed AWS resources:
conclusion
The solution addresses the core challenges of embedding conversational AI at scale: securing authentication for thousands of concurrent users across global locations, maintaining enterprise-grade security with comprehensive audit trails, and simplifying deployment with automated infrastructure provisioning. You can customize portal branding, adjust security policies, and integrate with existing identity providers. You can automatically scale to thousands of concurrent users while maintaining pricing.
To try this solution, clone GitHub repository And deploy the entire infrastructure with a single click to embed Quick Suite chat agents.
About the authors
Satyanarayan Adimula Is a Senior Builder in AWS Generative AI Innovation and Delivery. Leveraging over 20 years of data and analytics expertise, he specializes in building agentic AI systems that enable large enterprises to automate complex workflows, accelerate decision making, and drive measurable business results.
