Agency workflow
Know your agency role
An agency is a white-label owner. Your clients are businesses, and each business serves its own customers. You only see businesses assigned to your agency. The platform Control workspace belongs to AgencyLaunch staff.
Before you start
Keep your Start Here checklist open as your next-action list. Sign in and select your agency. Part 1 covers your agency name and logo, your Twilio account for calls and texts, and an optional web address. No client is needed. Part 2 starts with adding a business: use your own for practice, or a client’s. Select that business there, choose one service to start with, then follow its setup and test steps. It links directly to the relevant guides, saves your progress and keeps setup separate from confirmed real tests. Return there after each setup task; this walkthrough is the detailed reference.
- Your access: use the welcome invitation to accept your agency-owner account. New invitation accounts must choose a password of at least 12 characters; existing accounts sign in to accept. If you were supplied temporary credentials instead, sign in and change them through the account menu → Settings → Security.
- Your agency: have your name, logo, colours and support contact ready. For a custom portal or sending domain, arrange access to the domain's DNS settings. A portal address, an email sender and an email inbox are three separate things.
- Your client: collect its contact details, city, state/region, country, timezone, currency, services, hours, owner email and approved FAQs. Agree which channels you will deliver before connecting anything.
First login with no clients: “No business access” or “No business workspace is available” is expected for a new agency. Open Clients to add one, or Partner branding to prepare your agency. It does not mean your agency login failed. If your agency is absent from Branding or you cannot add a client, ask the person who invited you to check your role.
Agency workflow
Set your agency identity
Sign in using the account you accepted in step 1. If you were supplied a temporary password, change it in Settings → Security. Then open Partner branding → Identity & appearance. Configure your display name, logo, colours, support contacts, and portal appearance, then select Save branding.
Connect your agency's own portal domain
This optional step gives your agency a branded address for sign-in, the application, and customer portal links. You can keep using your AgencyLaunch login address while you set it up. You need a domain you own and access to its DNS settings, or help from the person who manages them. You do not need your own Vercel account.
Worked example: platform.domain.com
If your portal URL will be https://platform.domain.com, open the DNS settings for domain.com and add this record. Replace domain.com with your own domain; keep the target value below unchanged.
- Type:
CNAME - Name / Host:
platform - Value / Target / Points to:
7e55a0bb4bf1d443.vercel-dns-016.com - TTL: leave the provider's default or Auto setting.
This makes platform.domain.com point to AgencyLaunch. Do not enter https://, a slash, or your email address in the record. If your DNS provider requires the full record name instead of a short Host, enter platform.domain.com. If you prefer portal.domain.com, use Name portal with the same target. You do not need to move your domain or change its nameservers.
Register the address too: in Partner branding → Portal domain, enter platform.domain.com and select Connect domain. This tells AgencyLaunch which agency owns that address; adding the CNAME alone is not enough. Then select Check domain after saving DNS.
Only if ownership verification is requested: also add the TXT record shown after registration. Set Type to TXT, Name/Host to the displayed verification name (for example, _vercel if the displayed name is _vercel.domain.com), and Value to the complete verification token shown for your domain. That token is unique and cannot be supplied as a universal record in this guide. Do not copy a token from another account.
The CNAME target above is the current AgencyLaunch production target, checked on 18 September 2026. If the app shows a different target for your registration, use that returned value. Vercel uses a project-specific CNAME target.
- Choose a portal address. Use a subdomain such as
portal.youragency.comorapp.youragency.com, replacingyouragency.comwith your own domain. Choose an unused subdomain so your existing site can stay where it is. - Register your chosen portal address. Sign in as the agency owner, open Partner branding, and select the Portal domain tab. If you can manage more than one agency, select the correct agency first. Enter your chosen address without
https://or a page path, then select Connect domain. Use the worked CNAME example above. The DNS records section confirms the current target and supplies any domain-specific ownership TXT token. - Open your domain's DNS settings. Sign in to the service that manages your DNS, which may be your domain registrar or another provider. Find the DNS records for your domain. If someone else manages your DNS, send them the records shown in AgencyLaunch and ask them to add them.
- Add the records shown. Add the CNAME record using the displayed name and target/value. If AgencyLaunch also displays a TXT verification record, add that too, using its exact name and value. The copy button beside each record copies its value. Some DNS providers append your domain automatically: for
portal.youragency.com, the Name/Host field may need onlyportal. Check the resulting full name so your domain is not repeated. Keep existing site and email records unchanged; if the chosen subdomain already has records, use an unused subdomain or ask your DNS administrator for help. - Verify the connection. Save the records at your DNS provider, return to Portal domain in AgencyLaunch, and select Check domain. DNS changes may take time to become visible. If the status remains Pending DNS or Checking, allow time for the changes to propagate and check again. If it shows Needs attention, read the message and compare both the record names and values with your DNS settings.
- Open and check your portal. When the status becomes Active, select Open portal. Check that your address opens over HTTPS and shows your agency's name and branding. Share this address with your clients once you have checked it.
If you cannot connect: make sure you are signed in as the agency owner. If you see “Domain automation is not configured”, contact AgencyLaunch support with your agency name and chosen portal address. If verification is stuck, include the status and error message shown on the Portal domain tab. Do not send passwords or API keys.
Set up email identity and authenticated sending
Current limitation: Partner branding → Email identity saves preferences only. It does not register a sending domain, show DNS records, verify ownership, or create a mailbox. “Save branding” and the email preview are not proof that email can be sent. Agency-level self-service sending-domain verification is not available in this screen.
Worked example: sending as hello@domain.com
If your agreed sending address is hello@domain.com, the sending domain is domain.com, even when your portal lives at platform.domain.com. Add the following email records in the DNS settings for domain.com. Register the sending domain using Add domain in the business Email tab first, or have AgencyLaunch support arrange the agency sending setup, so Postmark can generate your DKIM record.
Record 1: Return-Path for SPF alignment. Add a CNAME with these fields:
- Type:
CNAME - Name / Host:
pm-bounces - Value / Target / Points to:
pm.mtasv.net - TTL: default or Auto.
The resulting full record is pm-bounces.domain.com pointing to pm.mtasv.net. This is the email bounce/Return-Path address, not your portal address or a mailbox. Postmark's Return-Path target provides SPF authentication; do not add a second SPF TXT record to your main domain for this step.
Record 2: DKIM authentication. Add a TXT record using the selector and public key generated for your sending domain:
- Type:
TXT - Name / Host: the generated selector followed by
._domainkey. - Value / Content: the entire DKIM TXT value supplied for your domain, including the complete public key. Copy it without shortening or rewriting it.
- TTL: default or Auto.
For example, if your issued DKIM Host is 20260918pm._domainkey.domain.com, enter Name 20260918pm._domainkey at a provider that appends domain.com. Enter the full host if your provider requires it. This selector is an illustration, not a record to copy: your real selector and key come from the business Email tab's TXT row or AgencyLaunch support. Every domain needs its own issued DKIM key; a generic key in this public guide would not authenticate your email.
If you send from a subdomain instead: for hello@mail.domain.com, register mail.domain.com. In the DNS zone for domain.com, the Return-Path Name becomes pm-bounces.mail, still pointing to pm.mtasv.net; the DKIM Name becomes your issued selector followed by ._domainkey.mail. Use the exact generated records, not the root-domain example.
After saving both records, return to the business Email tab and select Check DNS. Both checks must pass. Then test an actual email and reply as described below. These records do not configure inbound email, create mailboxes, or replace existing MX/DMARC settings. Postmark's domain-verification instructions confirm the TXT and Return-Path CNAME setup.
- Save the intended identity. Open Partner branding → Email identity. Enter the domain you control in Managed email domains (for example
youragency.com), your Email from name and an address on that domain in Email from address (for examplehello@youragency.com). Select Save branding. Listing a domain here is not DNS verification. Use a domain you own; you cannot add authentication records forgmail.com. - For agency-level sending, arrange setup with AgencyLaunch. Reply to your welcome email with your agency name, intended sending address, who manages your DNS, and how you currently receive replies. Inbox replies use platform-managed inbound routing; there is no mailbox-routing selector on the Email identity tab. Ask support to confirm the supported sender and reply-routing arrangement and supply the exact DNS records where applicable. Do not assume every invitation or password-reset email will use your agency address: system email may use the platform sender. Do not share passwords or API keys.
- Choose the business sender. Each business can define its own From name and email address. For
hello@clientdomain.com, registerclientdomain.comand arrange access to that domain’s DNS. This is separate from your agency’s sender and portal domain. - For a client business, use its sending-domain controls. Open Clients → select client → Open client workspace → Email. Enter the agreed sending domain (just the domain, without
https://or an email address) under Sending domain, then select Add domain. Under Business email sender, enter the From name and From email (for examplehello@clientdomain.com) and select Save sender. The email domain must exactly match the registered sending domain. This screen obtains the records from Postmark and displays the actual host names and values. If it reports missing provider configuration, AgencyLaunch must complete that setup first. - Add both email DNS records. At the DNS provider, add the displayed TXT record for DKIM and CNAME record for the custom Return-Path. DKIM authenticates the sender; the Return-Path provides SPF alignment. These are different from the portal-domain records. Copy the exact values from the Email screen and check whether the provider expects a short Host name or the full domain. Keep existing mail and DNS records intact.
- Check verification and sender matching. Return to the business's Email tab and select Check DNS. Wait for verified and both record checks. If a domain is already present and needs changing, contact AgencyLaunch; this screen does not provide a removal/replacement control. If still pending, check names and values at the DNS provider, allow propagation time and retry. The saved business From address is used after both DNS checks pass. Until then, existing transactional sender fallback remains in place and Inbox sending requires a verified matching sender. Saving an identity alone does not enable it.
- Test sending and receiving separately. Using your own test contact, send a reply from Inbox, confirm delivery to the receiving mailbox and inspect the From address. Reply to that message and check the intended destination. Receiving replies in the AgencyLaunch Inbox requires separate inbound routing, which AgencyLaunch must configure. A verified sending domain does not create mailboxes or prove replies are connected.
SPF and DMARC: Postmark does not require a new SPF TXT record on your main domain; use the custom Return-Path CNAME shown for SPF alignment. Have your DNS administrator check any existing DMARC policy and other mail providers before making changes. See Postmark's SPF instructions. Do not replace existing SPF, DMARC or MX records with guessed values.
Done when: the required sending domain is verified, the correct sender is used in a received test email, and a reply reaches the agreed inbox. Until then, treat custom email as unfinished even if branding is saved or the platform email connection looks ready.
Agency workflow
Add and prepare a client
- Open Clients and choose Add client. Enter the business name, URL slug, category, contact details, service area, first location and plan. The slug is the short identifier requested by the form; it does not connect a custom domain.
- Choose regional settings explicitly. Enter city, state/region, ZIP/postal code and country code, then select the business's timezone, currency and regional format. A city does not set these automatically. For a US business, use
US,USD,en-US, and the correct timezone: for exampleAmerica/New_Yorkfor Eastern orAmerica/Chicagofor Central. Choose the zone appropriate to the business, not your own location. - Select Create business workspace. Onboarding may open on Activation; start with the Business details tab. Complete phone, email, service area, main location, primary service, goal and response target, then select Save foundation. To correct these later, use Clients → Open client workspace → Edit business details.
- An agency owner can manage this client business with their existing agency login, including a business they own themselves. The agency account and business remain separate. Invite the business owner only if they need their own login. In Owner access, check the owner's name and email, then select Email invitation. Tell the owner the account is being prepared and agree when to start using it. A new invitation expires after seven days. Check delivery status; use Replace and resend if needed and tell the owner to use the newest link.
- Return to Activation. Required checks cover business details, operating location, owner access and an assigned plan. Owner access is satisfied by an active managing agency with an active agency owner, an active business owner, or a valid business-owner invitation with healthy delivery. An agency-managed business does not require a second login or an invitation to yourself. Resolve each incomplete item, then select Activate business.
- Run the end-to-end service checks before handover. Activation alone does not verify custom email, phone routing, Google or calendar connections. A separate owner invitation is optional; final handover still needs a clear agreement about who answers enquiries.
Done when: the business is active, its regional settings are correct, and every service you intend to deliver passes its own test. A plan enables features and limits; it does not connect provider accounts or charge your client automatically.
Agency workflow
Open a client workspace
Use Open client workspace for business details, locations, team, email setup, and Plan and access. Use Choose business in the sidebar for daily work. Confirm the page heading matches your intended client. Today summarises work; Inbox handles replies, notes and tasks; Pipeline uses search and Move to; Requests uses type and status filters with Start work and Complete.
Agency workflow
Test the service before handover
Choose the correct client in Choose business before each setup task. Configure only the services you agreed to provide. Shared provider credentials belong to AgencyLaunch; business owners authorise their own Google or Microsoft accounts. A plan, saved form, simulator result or green platform connection does not prove a customer's real message will arrive.
AI knowledge and assistant
- Open Knowledge → Sources → Add source. Add approved services, prices where applicable, service area, hours, FAQs and handoff instructions. Use structured facts, text, or PDF; check Ingestion jobs if a PDF fails.
- Review the draft under Revisions and select Approve. Adding a source does not publish it to the assistant. Check the current revision and use Live retrieval preview to test a real question.
- Under Assistant, configure the greeting and handoff, save the profile, and enable it for customer conversations only when ready. If the AI connection is missing, ask AgencyLaunch to complete it.
- Test a known question and an unsupported request. Confirm answers use approved facts and uncertain cases go to a person. Staff-generated drafts still need review before Send reply.
Appointments and calendar connections
- Open Appointments → Booking settings. Add active People & resources, then Booking types with duration, confirmation mode, buffers, notice and eligible people/resources.
- Set Availability for the correct booking type and resource. Add holidays under Time off & closures. Check the business timezone and save each section.
- If external calendar sync is needed, use Calendar connections to connect Google or Microsoft using an account authorised to access the intended calendar. Select Choose calendars. Choose a writable Calendar for new bookings, then select the calendars whose busy times should block availability and select Save calendars. The booking calendar is always included; up to 10 calendars can block availability. Busy times apply across the whole business, not to individual resources. For example, one staff calendar marked busy can block slots for the whole business, so only select calendars appropriate for that shared availability. Once appointments have been written to a booking calendar, changing that write destination requires support so existing appointments are not left behind. If OAuth reports platform setup missing, AgencyLaunch must configure the provider application first.
- To offer booking on an existing website, open Appointments → Booking settings → Booking widget. Select the appointment types customers may book, tick Enable online booking, and select Save booking widget. Use Copy booking link to share a standalone booking page or Copy embed code and paste into an HTML/embed block on the existing website. For example, a business with slug
harbour-dentalshareshttps://agencylaunch.app/book/harbour-dental; its embed loadshttps://agencylaunch.app/embed/booking/harbour-dental. Copy the actual link/code shown for your business. No AgencyLaunch website is required. The business must be active. Slots respect hours, resources, blackouts, notice, buffers, appointments, temporary holds and selected calendar busy times. Calendar updates are periodic, not instantaneous; stale or missing connected-calendar coverage blocks new widget bookings. If no times appear, check those settings and calendar health before changing hours. Instant booking reserves a slot; request-to-book requires staff confirmation. Customers receive a secure management link on the confirmation screen. Save that link for rescheduling or cancellation; disabling new bookings does not revoke existing management links. - For SMS appointment enquiries, enable booking in Lead Rescue and use automatic replies. The assistant can offer saved booking types and real available slots. A customer’s chosen slot is saved as a requested appointment: staff must review and confirm it in Appointments. A callback preference is a separate request, not an appointment or a guaranteed time.
- Test a booking, an unavailable slot, rescheduling and cancellation. Confirm the time, assigned resource, customer notification and external calendar entry when connected. Internal availability and external calendar authorisation are separate setup tasks.
Phone, SMS, WhatsApp and Lead Rescue
Full setup instructions: follow the detailed Twilio guide. It covers account credentials, number purchase and registration, country permissions, separate client accounts, owned-number connection, exact routing addresses, forwarding, WhatsApp and the complete real-call/SMS test checklist.
- First connect your agency’s own Twilio account: sign up at Twilio, upgrade for live use, then copy the Account SID and Auth Token from its Console dashboard. In AgencyLaunch open Partner branding, select your agency, open Phone & messaging, enter those credentials and select Connect Twilio. The token is encrypted and is never shown again. Twilio bills your agency directly for numbers and usage; arrange your own billing to clients. Each agency uses a separate Twilio account. Then open the client’s Lead Rescue → Setup and select Create client account. Then use Find numbers and accept the displayed monthly price, or Use owned number for a number in that client subaccount. Configure forwarding and test SMS. The business does not sign up for Twilio. For WhatsApp, follow the linked guide: provider readiness, a private business-owner Meta consent link, sender/template approval, then delivery and reply verification. Number rental and usage incur charges on your Twilio account. Complete the messaging registrations required for the number and destination countries; WhatsApp also requires an approved sender and templates. Connecting the account alone does not make these channels live.
- Under Rules, review whether rescue is enabled, channel priority and AI autonomy (automatic, approval or human replies only). Follow the Activation checklist and forwarding/channel tests, then select Activate Lead Rescue when ready. This is separate from activating the business account. Set Quiet hours start and Quiet hours end in the displayed business timezone and select Save rules. Overnight windows are supported; equal start/end times disable quiet hours. These hours defer the first automatic rescue message; they do not stop replies to incoming customer messages.
- The Simulator, where enabled for local/demo workspaces, is for practice. Before launch, use your own test number to make a controlled real enquiry or missed call. Confirm the intended follow-up arrives, the record appears in Inbox/Activity, and a human can take over. Resolve failed deliveries before customer use. Ask for a callback or quote, then check Requests contains the actual details and preferred time. Follow up with a changed time and confirm the same open request updates. In approval mode the team must review the reply and capture any requested action; automatic request tools do not run. If AI generation fails or its allowance is exhausted, the conversation hands over to staff instead of claiming an action succeeded. Test “I want to speak to a person”: a short acknowledgement is sent, AI replies pause, and an assignable follow-up appears in Inbox → Needs a person. Assign the conversation and task, contact the customer, and complete the task. Do not promise a callback time without checking availability; a human handoff is not a calendar booking.
To rotate an Auth Token, return to Phone & messaging and save the new token for the same account. Contact support before switching accounts or transferring a client with live numbers. Disconnect stops AgencyLaunch from using the connection, but does not cancel Twilio number rental; release unwanted numbers in Twilio separately. Lead Rescue setup and testing reference
Google reviews and Reputation
- Have the business owner or authorised manager ready with Google Business Profile access. Open Reputation → Google setup → Connect Google and authorise that account.
- Select/map the correct account and business location. Confirm the connection is live, then sync and check that the reviews belong to this business. A place search or listing selection alone is not permission to manage reviews.
- Review any drafted reply before publishing. If access or provider setup is missing, follow the displayed error and involve the business owner or AgencyLaunch as appropriate.
Customer Portal and QR campaigns
- Open Customer Portal and copy the Customer sign-in address. Put this permanent address on the business website and in email footers. Customers enter the email on their active contact record, receive a single-use link valid for 15 minutes, and select Continue to portal. They stay signed in on that device for 30 days and can repeat the email step themselves whenever needed. Test this with your own contact email, then check the customer’s appointments, quotes, messages, documents and payment requests. Existing private direct links still work, but publish the permanent sign-in address, never a customer’s private link.
- A payment request needs a hosted payment URL from the business's payment provider. AgencyLaunch does not create that external payment account or collect your agency's client fees through this request. After confirming the full amount has arrived in the business's bank or payment provider, open Customer Portal → select the customer → Payments → Record payment received. Enter the received date/time and receipt or transaction reference, then select Confirm full payment received. This marks the request paid and removes its Pay button in the customer portal; it does not charge the customer or verify payment automatically. Partial receipts do not settle a request: wait until the full requested amount is received. To fix a recording mistake, use Correct recording, give a reason and reopen the request. The audit log preserves the original entry. Reopening does not issue a refund or disable the external payment link.
- In QR Campaigns, choose the campaign destination and placement, save the campaign, and scan the generated code with a phone. Verify that it opens the correct business and working destination before printing or distributing it. Configure the destination service first.
Automations, notifications and reporting
- Open Automations → Recipes and review which follow-ups are enabled for this client. Confirm the intended recipients and customer contact permissions before allowing customer messages. Preferences controls your own staff notifications and their quiet hours; it does not set customer messaging permissions or hours.
- Trigger a controlled test with your own test contact. Inspect Run history and Deliveries, and confirm receipt, not just that a run was queued. Use Integration health to investigate provider problems.
- Use the account menu → Settings to review your notification preferences. Make sure the client's team knows who owns new enquiries and overdue work.
- In Analytics, select the correct business and date range and confirm your test activity is represented. An empty new account has no historical results to report.
Final service check
- Send a real test enquiry through each enabled customer channel using your own test contact.
- Find it in Inbox, assign it, review/send a reply and confirm receipt. Record and complete the next action.
- Test bookings, portal access, review sync and follow-ups where included. Confirm the correct business, timezone, sender and destination throughout.
- Resolve failed or missing deliveries. Document any service still awaiting configuration so the client knows it is not live.
Done when: each promised service works from customer action to team response. See the first-client readiness checklist.
Agency workflow
Give the right people access
A separate owner invitation is optional while your active agency manages the business. If the client needs their own login, use the invitation process in step 3. After testing the service, confirm that owner access works and invite any additional staff: select the client in Clients and use Team access. Sending an invitation emails the recipient. Confirm the owner accepts and can access the correct business. Enter an email, choose the permitted role, and select Send invitation. Agency managers manage non-owner roles. Agency owners can invite business owners. If the invitation is missing, check the address, spam folder and delivery status; an expired or replaced invitation needs a fresh link. Never share your own agency password. Hand over the portal/login URL, enabled services, daily tasks, reply-handling arrangement and your support contact. Later membership changes and ownership transfers are covered in the account management reference.
Later reference: billing and account status
Review your agency subscription when requested by AgencyLaunch. Client invoicing and account-status changes are separate ongoing tasks.
Agency workflow
Keep billing relationships separate
Invoice your client businesses and collect their payments externally. The client Billing screen directs them to your agency. As agency owner, use Agency subscription for the agency's own platform plan and billing contact; checkout uses the platform owner's Stripe account when connected. A Customer Portal payment request is a separate transaction between the business and its customer.
In Agency subscription, complete the agency billing contact and Set up agency billing if shown, then follow the checkout offered for your plan. If checkout or provider configuration is unavailable, contact AgencyLaunch; do not try to fix this by connecting your own Stripe account. Review the amount and plan before confirming payment.
Agency workflow
Control client account status
An agency owner can enter a reason and select Suspend client. Client access and automated activity pause, while data and memberships remain preserved. To resume service, enter a reason and select Reactivate client. Review Recent account activity and outstanding work; previously stopped activity is not replayed automatically. External payment status does not change account status automatically.
If setup is blocked
- Sign-in fails: use the exact invited email and correct login address. Use Forgot your password? if needed. If an invitation is expired or replaced, request a new one from its sender.
- No clients or unavailable controls: check your agency role and selected business. A new agency has no client data until you add a client; missing permission needs the agency owner or AgencyLaunch.
- Activation is disabled: read each required item in Onboarding → Activation. Complete business details, location, owner access and plan; do not confuse optional provider readiness with account activation.
- Provider not configured, unsupported sender, or missing DNS controls: this is not solved by saving branding again. Reply to your welcome email and ask AgencyLaunch to complete or clarify the connection.
- Contact support with: agency and business name, the guide step, page URL, exact status/error and approximate time. Include a screenshot with customer information hidden if useful. Never include passwords, API keys or private invitation/customer access links.
Handover checklist: owner can sign in; business details and timezone are correct; required services have passed real tests; sender and reply routing are confirmed; staff roles are correct; billing responsibilities and your support contact are clear. Tell the client explicitly about anything still pending.
