---
title: 'Workflow Automation with Claude Code & Zapier MCP | AI Automation Project'
source: 'https://youtube.com/watch?v=QBI5bmbgL38'
video_id: 'QBI5bmbgL38'
date: 2026-07-31
duration_sec: 2765
---

# Workflow Automation with Claude Code & Zapier MCP | AI Automation Project

> Source: [Workflow Automation with Claude Code & Zapier MCP | AI Automation Project](https://youtube.com/watch?v=QBI5bmbgL38)

## Summary

This tutorial demonstrates how to build a production-ready AI agent for automating invoice processing using Claude Code, SQLite, and Zapier's MCP server. It walks through the entire workflow: connecting Gmail, QuickBooks, and Slack, defining business rules in a skills file, and executing approvals, alerts, and posting to accounting software. The video contrasts Claude Code's built-in connectors with Zapier's 8,000+ integrations, showing why the latter streamlines automation.

### Key Points

- **Production-Ready AI System** [00:01] — The video builds a real invoice-processing AI agent that can be used by any business, not just a tutorial toy project.
- **Two Integration Approaches** [00:33] — First approach uses Claude Code's built-in connectors; second uses Zapier's single MCP server with 8,000+ integrations.
- **PO & Vendor Workflow** [01:58] — Vendors are registered in a master table; purchase orders define approved amounts and allow ~5% invoice variation.
- **Invoice Approval Checks** [03:06] — Haslina verifies vendor name, PO number, amount within 5%, and bank account before approving an invoice.
- **Manual Process Pain** [05:38] — Processing many invoices daily is error-prone, tiring, and inefficient for large companies with big AP teams.
- **Gmail Connector Limitation** [13:44] — Claude Code's built-in Gmail tool only returns attachment metadata, not the actual PDF content, making extraction impossible.
- **QuickBooks Connector Gap** [15:13] — The built-in QuickBooks connector lacks a 'post bill' tool; a custom MCP server is needed but requires managing refresh tokens every 60 minutes.
- **Zapier MCP Advantage** [17:51] — A single Zapier MCP connection gives access to 8,000+ rich integrations without managing authentication per app.
- **Setting Up Zapier MCP** [19:57] — Create an MCP server on mcp.zapier.com, add Gmail, QuickBooks Online, and Slack, then connect accounts for unified access.
- **SQLite as System of Record** [24:43] — The invoiceagent.db holds vendor master, PO master, invoices, and audit log; a custom SQLite MCP server exposes tools to Claude Code.
- **Skills Guardrail** [31:44] — The skill.md file contains domain-specific rules (5% tolerance, Slack/email flows) that prevent LLM hallucination and guide the agent.
- **Automated Flagging** [35:08] — The agent detected an amount mismatch (22,137 vs PO 18,500) and suspicious urgency language, flagging the invoice for review.
- **Alert & Approve Actions** [38:00] — Claude Code sends Slack alerts for flagged invoices, transitions invoice status to 'approved', posts to QuickBooks, and drafts email alerts.
- **Month-End Report** [44:12] — The skill can generate a monthly invoice processing summary and send it via Slack and email for visibility.

### Conclusion

This tutorial shows how to turn a manual, error-prone accounts payable process into an automated, auditable AI workflow. Using Claude Code, a skills file, and Zapier MCP, you get production-ready automation with minimal custom code and access to 8,000+ integrations.

## Transcript

processing AI agent that can be used by pretty much any business in the world. This is not a toy project for YouTube tutorial. It is a production ready AI system that can be used by any company that is [music] processing invoices for
their vendors. We will be using Cloud Code along with other tools such as Gmail, Slack, QuickBooks Online for accounting, [music] etc. We will review approach is using in-built [music] connectors of Cloud Code and the second
approach is using Zapier's single MCP server which comes [music] with 8,000 plus integrations. All right, let's get started. [music] We will first review the problem statement. Athletic Technologies is a technology company and
they take services from different vendors. For example, Acme Office Supplies will supply them the office supplies, obviously. Metro Cleaning Services come to their corporate office for cleaning,
uh and so on. So, they take services from all these vendors and these vendors will issue invoices for the services that they are rendering. So, let's take the example of Acme Office Supplies and how the workflow works here. So, in
Athletic, there will be uh an account uh payable department, and let's say Haslina is a person who is working in this department.
Uh when they onboard this vendor, so let's say Acme Office Supplies, they are onboarding as a vendor, they will enter their data into the vendor master table. So, Haslina will be using some kind of software. That software will have a
database and through that software, they will register Acme Office as a registered vendor for Athletic and they will provide the name of the company, address, bank account details, and so on, okay?
Then, for a specific service contract, they will issue a purchase order. So, Athletic, which is Haslina here, she uh issue this purchase order and she will grant this amount that, "Okay, hey
Acme, for your services, we are granting this $4,250 amount and this is the PO number." And when Acme actually provides that service, after the service, they will issue an invoice, okay? And the invoice
will have that same PO number mentioned. You see this PO number here? And the amount may vary a little bit because, you know, you agreed on certain amount you know, you agreed on certain amount and after the services are rendered, the
So, they will have some kind of contract that, "Okay, you can have 5% variation here and there." And based on this incoming invoice, uh Haslina will check the details and she will either approve it or reject it,
okay? So, what will she check in order to approve or reject it? Well, she will uh check the incoming invoice against the two records. One is PO
and the other is the vendor master, okay? So, she will first check, "Okay, vendor is matching, so vendor is Acme Office Supply, okay, it is matching. Then, is PO order matching, right? See, PO number is matching, yes, it is
matching. Is the amount within 5%? Okay, that's what they agreed, so yes, it is in that range. And if the bank account is matching, see, 4521. So, if it is matching, she will approve the invoice,
she will ingest that into QuickBooks, etc., so that payments can be processed. But sometimes, there can be a scenario where there can be suspicious thing, you know? For example, here, the bank account is
For example, here, the bank account is not matching. Haslina receives email for all these invoices and a fraudulent email might have been sent to her account. So, she needs to do her due diligence and make sure that this bank
diligence and make sure that this bank accounts, etc., are matching, okay? So, now, uh if you look at Haslina's life, you know, the kind of tasks that she will do on a day-to-day basis, uh it looks
something like this. She will check her email, okay? In the email, she will invoices [snorts] from different vendors. It's not just Acme, there are different vendors who will send these invoices in PDF format,
will send these invoices in PDF format, okay? So, she will get that PDF, she will extract the information, meaning she will read through the PDF, she will uh make sure all the information is correct based on the PO master and
vendor master. So, for PO and vendor, she will have a software, so on one screen, she has PDF, on other screen, she has this software where she is matching, "Okay, if the PO number is matching here, if if the amount is in
that 5% range, is the bank account matching?" And so on. And if things look good, she will say, "Okay, this invoice is approved." She will send it to the
QuickBooks. So, in the QuickBooks, then the whoever is the relevant person, they can make a payment, okay? And she can also send it in a Slack message. She will send a Slack message saying that, "This invoice is approved." Etc., so
that the other team members are aware. Now, Haslina goes through so many invoices every day and it is a manual process which you can imagine is not fun and there can be multiple people in the
account department. Imagine a big company like Microsoft, they get so many emails, they have a huge account processing department and this manual processes are error-prone, they are tiring. Look at
Haslina's face, you know, after uh the day is over, she might be exhausted, etc. We live in the world of AI. Why can't we automate this using AI, okay? So, let's think about a solution. How about we use
Cloud Code and we uh connect all these uh different things, you know, like the Gmail, QuickBooks, Slack, etc., with Cloud Code
we can just say, "Okay, get invoices from Gmail." And it will just look at that account and it will get the invoices, not only get the invoice, it will check the PDF. It will uh extract the amount, etc. It
will check it against the PO, purchase order, uh database. So, the thing that I did not show is there is one more connection here, which is your one more connection here, which is your database of your purchase orders, vendor
master, all of that. So, Cloud Code has all that information. So, it will check all that information. So, it will check it and then it will say that, "Okay, um you know, if it is matching, if it should be approved." And so on. So, see,
these two are ready, they are approved, but this one is flagged, see, because there is a bank account mismatch or there is amount mismatch. So, Cloud Code can do all of that and then uh Haslina can say, "Okay, uh invoice
two, three, three is ready, it is approved. So, in Cloud Code, she will say, "Approve invoice three." And it will uh insert a approval record in a database and then you can say, "Post
invoice three to QuickBooks." And it will send it to QuickBooks and the person who is looking at QuickBooks will make the payment, okay? Now, for the invoices which are suspicious, you can send Slack alert. You can say,
"Okay, uh invoice number four had bank account mismatch." So, you send a Slack alert and it will look something like this, and it will look something like this, see? So, that the account team is aware,
okay? So, we are going to automate it using Cloud Code and the connectors. And then, we will uh streamline this process using uh Zapier. So, we will then connect Cloud Code with Zapier single Zapier MCP. And
the beauty of using Zapier here is that it comes with 8,000 plus integrations it comes with 8,000 plus integrations and uh Zapier has been doing this for so many years, so they have uh this experience in automation and
integration, etc. So, as you work on this project, you will see how Zapier will streamline everything and it will make things so much easier for us. All right, so that was a quick overview of problem statement and the solution
approach. Let's uh do some setup now. Let's start our setup by looking at the Gmail account that we have. So, this is the account of the account uh payable team. And as you can see, they receive these invoices from different vendors.
Global Tech Solution send them this invoice of this amount, okay? And then you have Data World, they send them this amount. So, this is Haslina's account, see? Haslina's account. And we are going to connect this account with Cloud Code.
Now, if you don't have Cloud Code installed locally on your computer, just say, "Install Cloud Code" on whatever your operating system is. Install it, it should be pretty straightforward. I have installed it. And this is how the
application looks. It has three components: chat, which is your usual chat GPT type of chatbot, then co-work, and then code. We will be using code mainly. You have to select a folder in which you are going to work, okay? So,
here, just to begin with, let's select some dummy folder, okay? I I I'll tell you the the purpose of that folder, but right now, we are not using that folder and without selecting folder it will not
let you work. So just just you know some just create some test folder dummy folder, okay? And here we're going to connect our Google account. So I will say go to manage connectors. Okay, I have
disconnect this and let me show you from scratch. In your case you will not see connectors here and select Gmail and you will click on
connect, okay? Now let me do this. when you do connect by the way there is one trick. You have to connect where you have your Claude.ai account active. So run
Claude.ai account active. So run Claude.ai here. For me I'm logged into my Claude.ai account through this particular browser window so I'll keep that active. I will click on connect. And when I do that I
will see this window, okay? I'm already logged into Claude via this particular browser. That is important. Then you just say continue, select Heslin Army's account, okay? Continue. Continue.
Continue. Continue. And that should be it. See? Now I'm connected with Gmail. Now I have always allow permissions and everything is set. See? You can block certain permissions as well, okay? This looks
permissions as well, okay? This looks good. Now I can say that okay good. Now I can say that okay read my last email from Gmail. So now Claude code has access
of your Gmail. You have given that access. And it can just work on it, okay? Through that Gmail connector that we just configured, see? We configured this Gmail connector. Why that it is saying my last email is
this. Look at this. It is reading my last email so if I check my last email security alert you are allowed whatever, okay? No replies. Account. See? It was able to read the
Account. See? It was able to read the email. I can say that get me invoices from Gmail. Something like that, okay? Now Claude code is an LLM. It is smart so it will go through all the emails and it will figure out which
emails are invoices. So see? It will ignore all these emails and it will select those emails which has invoices. See? These emails it will select. So
see? Here I are the invoice related emails. See? This is invoice invoice processing. Okay, it's selecting all the invoice related emails also. You all the invoice related emails also. You can say that select emails with
PDF attachment, okay? Select emails with PDF attachment or you can be explicit and
say select invoice emails with PDF attachment from Gmail. And see? It has this these emails like this one has the amount directly mentioned. Now I can
say that for the first email read the attachment for the first email read the attachment and tell me the invoice amount, okay?
So now I want to check if the Claude code's Gmail connector code's Gmail connector has an ability to read the attached PDF, you know, to extract data from PDF or not. See? And then I'm stuck in this
this problem. Gmail tool only returns attached metadata. It doesn't return actual file content and I'm unable to read it. So right there now I'm getting stuck because I need to read the PDF file and
read the invoice amount etc., okay? So this is the place where this is the place where the inbuilt connector from Claude code are not doing the job that I want it to do. Now let us connect to QuickBooks
connector. I want to see what kind of capability capability does it offer, okay? So I will go here and Intuit QuickBooks. Okay?
Okay? So I connected to that using my QuickBooks account and if you don't know what is QuickBooks it is an accounting software which is very very popular in US actually. I use it for my companies.
this is the account. You can create a free account here by the way. Okay? And this is where Atlassian is maintaining all its account, you know, the bills which it
account, you know, the bills which it needs to pay. So if you go to expenses it will show all the bills that you need to pay, okay? So I connected that account but unfortunately I don't find a tool which allows me to
post a bill. Because once the bill or the invoice is approved I want to post it to QuickBooks. And I do not see any tool. Do you see it? See? Cash flow generator and all that. We do not have a tool to post invoice to QuickBooks,
okay? So we are hitting a wall once again. So in the case of Gmail it was not able to read from PDF. Here in the QuickBooks it is not having Here in the QuickBooks it is not having a tool which can allow me to post a bill
and there is a solution for it for it which is to build custom MCP server and actually we worked on that, okay? I'm going to provide you a code for it. going to provide you a code for it. We built a custom MCP server for
QuickBooks which will perform that post bill action. See? Here create bill. So you can write custom code. You can of course use wipe coding for it. But see?
course use wipe coding for it. But see? The thing is you have to manage all your credentials in the environment variable. That is one. Second, you have to manage this refresh token. Now refresh token is something
which will expire every 60 minutes. So every 60 minutes you have to go to the Intuit developer account and refresh the exercise. It was a lot of work. It is annoying. It
is time taking, okay? And especially if you are not very very technical it will be hard for you to do this. I'm going to provide this code to you anyway. You can try it. It will work. But
the whole idea is we're looking for a better option, okay? Where you don't have to write all these custom MCP servers. You are not restricted by the limitation of the tools that you have and also tomorrow if I am browsing
connectors, okay? It has connectors but let's say I'm I'm using some custom connector which they do not have here then that is another problem, okay? Claude etc. These are new tools. They don't have this experience of years
They don't have this experience of years of years of integrating with third party providers. And this is where the power of Zapier MCP server comes in play. Zapier MCP server is a single connection that you need to establish with your
Claude code and then it comes with this entire ecosystem of 8,000 plus integrations. So you don't have to manage auth which we did in case of
QuickBooks custom MCP server. We have to manage authentication, refresh tokens. We have to write code for it. You don't have to do all of that, okay? And these connectors are rich in nature which means it offers rich functionality, you
know? I felt in Claude code you have limited functionality whereas these connectors are rich. They have a lot of functionality. Zapier has years and years of experience in the
automation industry and they have any any third party integration that you can think about you will get it in Zapier, okay? So that is a reason for making this pro project easier to execute we're going to use Zapier now. So folks, let's
use the Zapier link that I have given in the video description below. And let's the video description below. And let's create the free account, okay? So start free with email. So make sure you have created an account and you have logged
into it, okay? So once you have logged into it you will go to Claude code and you will click on Zapier. You will connect with Zapier of course, okay? And see?
Here I'm going to make the browser active Zapier account I have logged into it, okay? So this is active. okay? So this is active. And then at that time I will say
connect. So that it it will always pick up that active account, okay? And see? This is the account Heslin Army, okay? So it will And now I'm connected
to my Zapier. So if you look at Zapier here it has all these tools. Now how did we get all these tools? You will not see these tools, by the way. So, you need to go to Zapier and
um what you will do is essentially you will what you will do is essentially you will go to mcp.zapier.com. Okay, so mcp .zapier.com
Okay. So, you'll just say new mcp server for Cloud, so for Cloud Code you're creating a new mcp server. And now, here see, you see this 8,000 plus apps. So, you can add the tools. So,
you'll first add Gmail. Okay, when you add Gmail you get all these um tools. Okay. So, now you say connect.
connect with the new account. So, just say connect new account, you will not see this. You'll say connect new account, you will give your credentials and so on. And you will connect. Okay, so
I already have this account uh added. So, I got my Gmail. account uh added. So, I got my Gmail. Then the other one we are going to get
is QuickBooks online. And here select all we take action tools. Okay, anyways, I'll just select all of
Connect. And here you will uh connect to the QuickBooks account. So, once again click on connect new account and I hope
QuickBooks. So, just say quickbooks.intuit.com. um new account. Okay, for QuickBooks, so
let's see. QuickBook online, right? QuickBook online, right? And for QuickBooks online you will say I already have the account. Otherwise, you'll say create an account, give your
information and then you can uh log in into it. So, let's go back to Zapier and then that account will appear here. You will connect to it. Okay. So, once that connection is done, the
Slack. Okay. So, by the way, I created this new server just to show you, but actually I have already created my previous server which I'm going to use. And you can see QuickBooks online
uh Gmail and Slack. And by the way, in QuickBooks I have selected only uh five tools. See, there is this create bill tool which you have it here, but in Cloud Code's QuickBooks connected we did not have this tool.
See, that is the difference. In Zapier the the number of tools are wider and you have so many options and you can connect to 8,000 plus apps. Uh anyways, you can connect to all 44 tools or you just select these specific
tools. Either way is fine. In Gmail I have all these. In Slack send channel message, send private channel message. Okay. So, I hope you have connected to all these three
three uh tools in Zapier and CP. And once you do that and when you connect here you will find all of that. See, Slack, QuickBooks. I have all of them available here. And make sure you are doing always
allow and all these are checked. Okay. So, if this is not checked or let's say Okay, so make sure all of this is checked. So, my Zapier all of this is checked. So, my Zapier account is ready. Now, what I need to do
account is ready. Now, what I need to do is I need to connect this to my local directory. Okay. And I'll tell you why we need to do that. So, we have given we need to do that. So, we have given you code. So, I'm I'm going to provide
you a GitHub link of this code. So, make sure you are doing git clone here. Okay, I have already done git clone and I have opened it in my VS Code. So, this is the code and I'll tell you the importance, like
what is the purpose of that code. Okay. So, see this is the code that we have. And in this code we have the storage which is invoiceagent.db.
So, invoiceagent.db is a database, basically. It's a database of your uh current invoices. So, when Haslean approves an invoice, it will go to this database. And it also has
master. Remember we talked about vendor master and the purchase order master. You remember this flow where we talked about these tables,
purchase order master, vendor master. So, these are the tables in some database, correct? So, what is that database? Well, that database is this. So, this is vendor master where account team has entered all the approved
vendors. So, once the vendor is approved for Atlic Technologies, it will be added here and it has information such as name uh alias, email, bank account. This is
important. Active or not, whatever. Okay. And then the other table that we Okay. And then the other table that we have is the purchase order. So, these are the approved purchase orders. Okay. So,
where it says, "Okay, what is a vendor ID? How much amount is approved?" Right? This is the total amount uh that is approved and so on. If you look at other tables, these are empty. See, audit log is empty.
See, audit log is empty. Invoices is empty and so on. Okay. So, Invoices is empty and so on. Okay. So, this is uh the table that we have. this is uh the table that we have. Another thing that we have in this code
base is when you um do operations in this database, you know, you have to provide it a tool. Cloud
Code doesn't know how to do operations in this database. It is internal to your in this database. It is internal to your organization. So, we have written a an mcp server which is SQLite store mcp server. And again, we we did wipe coding
for this where we have all this code. Okay. So, upsert invoice, meaning it will insert a new invoice when you approve it. It will list invoice. It has all this bunch of tools. Don't worry.
We will look into it step by step. It's not that complex. So, now I have that code. So, let's connect with that code directory. Okay, so I'm going to choose that particular
folder. So, this is that folder. So, when you do that your uh Cloud Code will have access to those mcp servers. So, here you can say list down mcp servers. So, when you
do that it will list all the mcp servers that you see. And by the way, before you do this, you need to have some prerequisites which is make sure you have Python 3.13
version or above. Also, you should have done pip install mcp and all these uh you know, if you have not done this, go to command prompt here and just do
pip install all of that. I have done that. Okay. And make sure you have Python 3.13. So, those are the two two things. And other thing is you will see an option of work tree here. So, make sure
you are unchecking it. Otherwise, it will create a new work tree. So, if you see any work tree option here um make sure you have unchecked it. Okay. So, now the mcp servers you have is QuickBooks
from Zapier's Gmail from Zapier. Okay, all of this. And then uh I'm search mcp registry this. Where is my SQLite?
So, here I think once you select a folder, maybe you have to close it. So, let me see. Okay, maybe I have to close it. And by the way, when you close it it it actually doesn't end. So,
behavior where I have to end the Cloud Code session like this. So, I'm going to end it and start it again. Okay. I want to see that mcp server, by
the way, which is SQLite mcp server. Okay. this is the option I was talking about. Okay, make sure this is not checked. Okay. And here it says, "Okay, list mcp servers from the connected
folder." So, see here it is asking me to run some So, see here it is asking me to run some commands. I will say always allow. the SQLite store mcp server is now visible to this Cloud
Code. Okay. So, here if I go to this code it has this mcp server available code it has this mcp server available and it has all the tools visible. So, see, let let's do one one thing. Okay. So, list me I can say list me all the
So, list me I can say list me all the vendors, okay? So, list me all the vendors from SQLite DB. And it will ask you to run this. So, it is running the SQL query. And see, it
selected all these tools, okay? Just say run run run for everything.
vendors. So, now Claude code is able to connect to this database. It is able to fetch the records. It can do pretty much all the operations which you have mentioned here. You can say transition invoice status for a particular vendor.
You can tran- change the invoice status and so on, okay? So, let's back go back to our main business, which is get me invoices from Gmail.
So, I want to get all the invoices from Gmail. So, now see, it is using what is it is using? It is using MCP. So, by the way, using? It is using MCP. So, by the way, I'm going to Okay, let me stop this and
let me disconnect all of this, okay? So, I'm going to go to this. And I'm going to disconnect Gmail. I'm going to disconnect this.
And now pretty much what I have is Zapier. I have GitHub, but doesn't matter. So, Zapier is the only thing now I that I have. And I will say uh get me invoices from Gmail with PDF attachment,
maybe. Okay. Now, you see this option called uh launching the skill invoice agent desktop. So, what exactly is this skill?
So, let's look at it. So, in the code that we have, we have dot Claude directory, skills, and here we have skill.md file. So, if you open it in this kind of nice preview. Or maybe let me open that from GitHub.
Or maybe let me open that from GitHub. So, see, here this is the skill that I have. So, skill is basically bunch of instructions that will guide your LLM. Okay, this is very domain-specific. This workflow of invoices is specific to
my organization. So, I have listed down all the instructions so that LLM doesn't get confused or it doesn't hallucinate, okay? So, here I have said that okay,
okay? So, here I have said that okay, use MCP SQLite as a source of truth. table. Okay, enforce these uh statuses status transition rules I have mentioned. PDF extraction on ingest, okay? Validation
extraction on ingest, okay? Validation rules See, validation rule is that 5% PO rule, right? Now, this 5% rule Claude code wouldn't know. It has general internet knowledge. This 5% rule is specific to my organization, which is
Therefore, you need to specify all these rules. You know, Slack alert flow. You can look into this skill.md file later on. But now uh I'm going to just say always allow. Okay, so let's see what it did. So, it
invoked it's going to use this skill, which is actually good. Then it found which is actually good. Then it found it Okay, let me just run this. It found four emails, see? It used Zapier and it used
the Gmail extension from it. And it found the total four invoices, okay? The PDF return as a binary for I'll extract fields from whatever.
fields from whatever. Okay, query all vendor data. So, it is querying Okay. So, it extracted tried to extract the invoice, but it couldn't, okay? So, I'm going to say that
going to say that uh I want you to read the attached PDF from email and extract necessary information. So, it eventually pulled that information from PDF. See, it
used Zapier's web fetch functionality to pull those success. And this is this is a common thing with agents, you know? They will
try something, it will not work, you have to instruct them. They will retry and it will work. So, they got this URL from S3. And eventually, I see this kind of nice table, okay? So, it extracted information from PDF.
The PO number, okay? What should be the total total uh amount and so on. And it also updated our SQLite database with the status, okay?
So, if you look at the SQLite database now, the uh invoices table did not have any records. Now, it has all the records. So, it got
let's uh verify something. So, here I'm going to look at the first invoice, which is Global Tech Solutions. And the quoted
price is 22137, okay? Global Solutions, okay? 22137, that is what they have requested. But if
that is what they have requested. But if you look at the purchase order, okay? So, let's look at the purchase order for that vendor. So, what is this vendor? that vendor. So, what is this vendor? So, this vendor is GT 2026, whatever.
So, this vendor is GT 2026, whatever. Okay. So, Global Tech is V002, actually. And if you look at the purchase order for them, the total amount we have we have approved is 18,500. And what they're generating is 22,000,
which is actually uh more than 5%, all right? So, it's amount mismatch. And also And also there is a suspicious pattern, which is
urgency language, okay? In the in the email. So, let's look at that. I did not see it. Yeah, see, please make the payment ASAP. There is also spelling mistake. So, this
sounds like a some kind of scam. So, that is why it is flagged as a suspicious pattern. And the other email has bank account mismatch. So, if you has bank account mismatch. So, if you look at the this one, okay?
check it out, okay? We are going to provide all the emails and everything. So, you can check it out, okay? So, this is awesome. Like now is awesome. Like now uh we have our our
SQLite table ready with all the invoices, all the patterns checked. So, essentially, whatever Hazelina was doing manually, now what happened is Claude uh CC, right? So, this is Claude code. It read an email, it extracted
information from it. It checked it against the PO master and vendor master. And it has not posted it vendor master. And it has not posted it in QuickBooks or Slack yet, but it has
performed all these state all these steps, you know? This this this this. And now it is ready with the approved or not approved status, which is stored in our SQLite database, okay? So, now we have all
these options, okay? You can say approve invoice two and send it to QuickBooks, okay? Or send Slack alert for invoice four. So, let's do that. So, I'm going to send a Slack alert for invoice four.
Okay, so let's copy this command here. And And because the number four has this problem of bank account not matching, okay? So, that is that is the problem.
See, four bank account mismatch. And it is now once again using Zapier as a is now once again using Zapier as a central connector. And then in Zapier, we have configured our Slack. So, see, in Zapier, we have configured our Slack.
in Zapier, we have configured our Slack. So, it will use this. And it will send a message here, okay? So, I have my Slack app open. Let me I'll just say allow. Perfect, see? It says that bank account mismatch.
see? It says that bank account mismatch. The alert is posted. So, rest of the The alert is posted. So, rest of the account payable team is going to be uh notified uh for this, okay? Now, you might be wondering, okay, where do you
alert? Where is it getting all that information from? Well, it is getting that from our skills file. Once again, look at the skill file carefully. So, if
you look at the skill file, okay? Uh and if you look at the Slack workflow, so Slack workflow is here. See, send Slack alert of invoice
So, you're guiding LLM through this skill file and it is using it to generate all these commands and so on, okay? Look at it, it's it's pretty straightforward. Now, I'm going to approve invoice number
let's say two, okay? So, let's approve invoice number two. So, here I will say approve invoice number two.
invoices table, see this is the second row, invoice number two. Right now, is it ready for approval? It is not approved yet. Ready for approval, okay? So, I will say
So, I will say Okay. Approve invoice two. I will also will approve invoice three later on. So now, when you do it, see look at this. It is using our MCP server. Okay. So it used this
Okay. So it used this SQLite store MCP server. Uh and I think the tool that it used Okay, transition, okay? So we have
transition invoice tool. Transition invoice status. It used this code. It updated the status. And if you look at now the SQLite code here, SQLite
Uh let's see.
You see for invoice number two Uh see it was ready for approval. Now it is approved. So that is approved. And you can post that to QuickBooks. So now, I will post this invoice to QuickBooks. When I do that,
once again, it has only single connector, Zapier. And using Zapier See, let's go to Zapier here. It will use this QuickBooks online, okay? And then, here we have connected our QuickBooks account, which is this. You
see? So this is the account that we have connected. And it has all the bills. So we'll check for that particular bill to be posted. All right. So now, I got this
new bill here, see? Bills, I got this bill here. So this bill is unpaid and there will be a accountant person who will be uh clearing all this bills. So he the account person knows that when the bill
comes here, it is approved. So then they will just schedule a payment or they will just make a payment directly. And the entire workflow will be finished. In Zapier MCP, you can also see the history of all the events. So this is useful for
of all the events. So this is useful for your audit, etc. So if you look at the create bill Okay. Here you can see the payload. You can see everything, all the details. See, create bill find account. All those actions you can review from
this place. You can also send email alert, okay? So for invoice number four alert, okay? So for invoice number four let's send an email alert here. let's send an email alert here. And the email alert flow is once again
specified here in the skill.md file. So slack and then we have email alert flow. So when prompted, send email alert of invoice X. So see, I did that, right? Send email alert
for invoice X, do this. So now LLM is going to follow all these instructions and it will do that, okay? So here I'm saying that uh in Hasura accounts, draft an email. See, I'm saying draft.
Do not send. Draft an email. An email should have all this content. So let's should have all this content. So let's look at the drafts now. See, I got this draft. Look at this, folks. Just now, see?
It is 7:13 7:13 right now here in and and here you are seeing this particular draft, which is invoices flagged. So Hasura now will send this to a relevant party.
They will send that, okay? This is the problem with this invoice. And otherwise, see Hasura will have to do all this work manually. Now, with AI uh her time is being saved. She's more productive. Let's look at the skill.md
file and see what other tools or options we have. we have. I think we have the option for monthly So we can say that
create month end report here. this. You have processed some invoice. You have rejected some invoices and it is at the the end end of the month and
you want to get a nice preview of whatever has happened in the month. You can get that via this particular report. And this report will be sent via Slack. And this report will be sent via Slack. See, it is using Slack and email to send
that particular report. So let's check our Slack channel. We should see that message soon. Uh see? You see that message just got popped up. Invoice processing
Okay, total invoice processed this, payable this. amazing? Uh any companies which is dealing with multiple vendors, which is the case for most of the companies unless you are a
everything on your own. Uh this workflow, whatever automation we did in this tutorial is helpful for almost all the businesses in the world. And at the end, you see uh things in the
audit log table. Everything is getting audited. See, month end report shared. Email draft shared. This is folks, this is production ready system, you know? This is how companies will build automation
is how companies will build automation workflows uh and this is something this something that can be used by any business today. That's it, folks. Check video description for all the resources, code, etc. If you have any question,
[music] post in the comment box below. Thank you for watching.
