Case No. 07  ·  Voice troubleshooting POC  ·  QuickBooks invoices

Fixed on the call, not after it.

Self-help, even when a customer accepts it, defers the fix: steps travel to an inbox, and the work happens later, alone. This prototype asked the next question. Could the model stay on the line and walk a customer through the fix, step by step, until it's done? I wrote the system instructions, grounded the model in QuickBooks product content, personalized it to the customer's product profile, and put it on a live voice loop in Vapi. The session on this page is me testing it with my own voice. The problem is fixed before the goodbye.

Problem

Sending help is not the same as helping. Even accepted self-help ends the call with the problem still there.

What I did

Wrote the system instructions, grounded the model in product content, personalized by product profile, and prototyped the full voice loop in Vapi.

Outcome

A working POC that carries a customer to resolution live on the call. Proof the model could be the help, not just send it.

Role

Solo prototype: the instructions, the grounding, the personalization rules, and the test calls.

01 · The problem

Sending help still leaves the customer alone with the fix.

The voice snippet work is a separate case with a different job: prove the assistant understood, so more callers accept self-help. It moved its numbers. But its best ending is still a handoff: the full steps travel by text or email, the call ends, and the customer does the work later, by themselves. This prototype chased a different measure. Not acceptance. Resolution: is the problem gone when the call ends?

two different problems · side by sideThe framing
Send help · the snippet's job
  1. Caller states the problem.
  2. Assistant speaks a teaser that proves it understood.
  3. Caller accepts; the full steps go to text or email.
  4. Call ends. The fix happens later, alone.
Be the help · this POC's job
  1. Caller states the problem.
  2. Model clarifies until the action is specific.
  3. One step at a time, each confirmed, live.
  4. Call ends with the problem fixed.
Same channel, different finish line. The snippet optimizes acceptance of help; this prototype optimizes resolution on the call.
02 · The build

Five steps from question to a working voice loop.

Built in Vapi, an external voice platform, in February 2024, while I was designing the voice work. No engineering team, no roadmap slot: a prototype whose whole job was to answer one question out loud.

the prototyping methodAs built
1
Pick a real workflow

A common, concrete ask: fix the date on paid invoices. Multi-step, screen-dependent, exactly the kind of task self-help normally defers.

2
Write the system instructions

Behavior as law: a written persona, clarify before guiding, one step at a time with confirmation, honest limits, recovery when the customer gets lost. The full excerpt is in section 03.

3
Ground it

The model answers from QuickBooks product content supplied as context, not from memory. "If the answer is not contained within the Context, ask a clarifying question..."

4
Personalize it

The customer's product profile travels with the call. "If the user doesn't have the required products based on profile, explain that before giving the answer."

5
Put it on the phone

A live voice loop in Vapi, tested with my own voice, session after session, tuning the instructions against what the ear caught.

Steps 3 and 4 quote the prototype's system instructions verbatim.
03 · The instructions

A persona, a pace, and the rules that hold both.

The instructions open with who the agent is, because identity carries behavior further than a rule list alone. Then the step-by-step section sets the pace: start from "are you logged in," one step at a time, confirm before moving, never bluff. Grounding and personalization are rules here too, not features bolted on later.

system instructions · vapi prototypeReal artifact · condensed
You are a QuickBooks customer support AI assistant, crafted by experts in
customer support and AI development. You are a voice-only agent in a
voice-only device. Designed with the persona of a seasoned customer support
expert in her early 30s, you combine deep technical knowledge with a strong
sense of emotional intelligence. [...] Your voice is clear, warm, and
engaging. [...] You will be presented with user context and profile, all of
which you should pay attention in order to personalize your response.

**step-by-step guidance**
2.  Step-by-step should always start from are you logged in to the product/app
3.  Step-by-step needs to be each step at a time.
7.  If providing multiple steps, first confirm the customer is following
    before proceeding with additional steps.
10. You are truthful and never lie. Never make up facts and if you are not
    100% sure, reply with why you cannot answer in a truthful way.
13. If the answer is not contained within the Context, ask a clarifying
    question to collect missing information in the question to provide a
    response.
16. Do NOT suggest a solution before understanding the underlying issue
17. If the user doesn't have the required products based on profile, explain
    that before giving the answer.
21. Show that you understand and provide the WHY before providing an answer.
22. When done with step-by-step instruction, offer to send the steps via
    text or email as well.
Verbatim excerpts from the prototype's system instructions; rule numbering is the original, gaps mark elisions. Written for the prototype and iterated after; the file carries later edits. One template placeholder removed.

The instructions even keep the prototype honest about being a prototype. When it offers to email the full steps, a rule tells it to simulate the send: "This is for a demo, so you should pretend to send it." A prototype that fakes quietly teaches you the wrong things.

04 · The session

Four minutes, unedited, my voice as the customer.

One full session with the prototype: a wrong date on paid invoices, fixed live. The assistant is the prototype's text to speech on test content. Five moments carry the design; jump to them with the chips, or click any transcript line. The map under the player ties each moment to the instruction behind it.

prototyping session · vapi · invoices, fix a dateReal recording · my voice
Assistant
Hello, this is the QuickBooks Assistant. How may I assist you today?
Me
I need help with invoices.
moment 01 · a bare noun gets one question first
Assistant
Of course, I'd be happy to assist you with your invoices. Could you please provide me with more details about the issue you're facing? For example, are you having trouble creating an invoice, sending one, or something else? Your clarification would help me to give you the most accurate guidance.
Me
I put the wrong date on the paid invoices and I'd like to change it.
moment 02 · every step in one breath, then the repair
Assistant
I understand you'd like to correct the dates on your paid invoices. Let's go through this process together. First, you'll need to locate the invoicing question. Open QuickBooks and click on the Sales or Invoicing tab on the left-hand side menu. Next, in the Customer section, you'll see a list of all your invoices. Find the invoice you want to change and click on it. You'll then see the invoice details. Here, you can edit the date by clicking on the date field and selecting the correct date from the calendar that pops up. Finally, remember to click Save and close at the bottom of the page to ensure your changes are saved. Before I proceed, could you please confirm if you're following along and that this information is helpful?
Me
I can't remember all of that. Can you give it to me step by step, one step at a time?
Assistant
Absolutely, I understand. Let's take it one step at a time. First, open QuickBooks and click on the Sales or Invoicing tab on the left-hand side menu. Let me know when you've done this and we'll move on to the next step.
moment 03 · the caller sets the pace
Me
Okay, hang on.
Assistant
Sure, take your time. I'm here when you're ready.
Me
Okay, I'm in QuickBooks right now.
Assistant
Great. Now in the Sales or Invoicing section, you should see a list of all your invoices. Can you find the invoice you want to change and click on it? Let me know once you've done this.
moment 04 · an honest no, then refocus
Me
There are multiple invoices that I need to change. I put the date on all of them, the wrong date on all of them. How do I change more than one at a time? Can I do that?
Assistant
I understand you have several invoices you need to modify. Unfortunately, QuickBooks does not currently support changing the date on multiple invoices simultaneously. You'll need to edit each invoice individually. To proceed, let's focus on one invoice first. Please find the invoice you want to change and click on it. Once you're able to see the invoice details, let me know. We'll continue with the next steps after that.
Me
Okay, I see that one of the invoices here.
Assistant
Great. Now that you have the invoice open, you should see the date field. Click on it and a calendar should pop up. From here, you can select the correct date. Let me know when you've done this and we can move on to the next step.
moment 05 · lost on the screen, so re-describe the screen
Me
Where's the date field again? I don't see it here.
Assistant
My apologies for any confusion. The date field is typically located near the top of the invoice details page, usually right under the customer's name or close to the invoice number. It might be labeled simply as date. If you hover over or click around the top section of the invoice, you should be able to find it. Once you locate it, click on the date to bring up the calendar for selection. Please take a moment to look for it and let me know if you're able to find and select the correct date.
Me
Yes, I see it.
Assistant
Fantastic. Now go ahead and click on the date field and then select the correct date from the calendar that pops up. After you've done that, remember to click Save and close at the bottom of the page to ensure your changes are saved. If you encounter any issues or have any more invoices to update, feel free to let me know. I'm here to help.
Me
Okay, I changed the date.
Assistant
Wonderful. I'm glad to hear you were able to change the date. Remember, you will need to follow these same steps for any other invoices you wish to update. If you have any other questions or need further assistance, feel free to ask. I'm here to help.
Me
I'm good. Thank you.
Assistant
You're welcome. If you ever need help in the future, don't hesitate to reach out. Have a great day.
Unedited session, February 2024. My voice as the customer; the assistant is the prototype's text to speech, on test content with no real account data. Transcript auto-generated, lightly punctuated. Click any line to jump the audio there.
what you hear, and the instruction behind itRules quoted verbatim
0:11
One question before any answer"Invoices" alone gets a clarifying question, not a guess: creating, sending, or something else.
"You handle complex or vague customer queries by asking open-ended questions for clarification, without appearing repetitive or artificial."
0:56
The failure and the saveEvery step in one breath, and the customer says what real customers say: "I can't remember all of that." The model switches to one step at a time. Sessions like this are why the pacing rules are written the way they are.
"Step-by-step needs to be each step at a time." · "If providing multiple steps, first confirm the customer is following before proceeding with additional steps."
1:35
The caller sets the pace"Okay, hang on" gets patience, not a repeat of the step.
"You are engineered to recognize and adapt to the emotional tone of conversations."
2:00
An honest noCan several invoices change at once? No, and the model says so plainly, then refocuses on one.
"You are truthful and never lie. Never make up facts and if you are not 100% sure, reply with why you cannot answer in a truthful way."
2:55
Lost on the screen"Where's the date field again?" The model re-describes the screen from landmarks the caller can see, and recovers the thread.
"If the customer requests clarification or has follow-up questions, you should engage in an iterative process of providing further explanations, examples, or guidance until the customer's understanding is satisfactory."
Timestamps jump the audio. The right column quotes the prototype's system instructions verbatim.
05 · What it proved

The model could be the help.

A prototype, on test content, with sends simulated by design, and no production claim anywhere on this page. What it proved still stands: given written instructions, grounded content, and a product profile, the model could clarify a vague ask, pace itself to a person doing real steps, admit a limit without bluffing, recover a lost customer, and land the fix before the goodbye. That is a different product than self-help. It resolves calls instead of deflecting them.

What this settled

Sending help was a ceiling, not a destination. Once the model could stay on the line and finish the job, the design question changed from "how do we get customers to accept help" to "what should the agent be allowed to do, and when should it hand off." The voice snippet case shows what shipped on that line; this POC is the out-loud proof of where it could go.