Creación de clientes y recibos de venta en Quickbook basados en datos de Google Sheets
Este es unInvoice Processingflujo de automatización del dominio deautomatización que contiene 8 nodos.Utiliza principalmente nodos como If, Quickbooks, GoogleSheetsTrigger. Automatizar la creación de clientes y recibos de venta en QuickBooks desde Google Sheet
- •Credenciales de API de Google Sheets
Nodos utilizados (8)
Categoría
{
"id": "0PCgKBDaVH6uI0KX",
"meta": {
"instanceId": "1a54c41d9050a8f1fa6f74ca858828ad9fb97b9fafa3e9760e576171c531a787",
"templateCredsSetupCompleted": true
},
"name": "Create customers & Sales Receipts in Quickbook from Google Sheet Data",
"tags": [],
"nodes": [
{
"id": "01eb09e0-1209-4614-ab15-16ee134500b4",
"name": "Google Sheets Trigger",
"type": "n8n-nodes-base.googleSheetsTrigger",
"position": [
-360,
-60
],
"parameters": {
"event": "rowAdded",
"options": {},
"pollTimes": {
"item": [
{
"mode": "everyMinute"
}
]
},
"sheetName": {
"__rl": true,
"mode": "list",
"value": "gid=0",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1vHkhooOUi5AbeLg-HG72jU-jCCJncqdEyY3dXboQc1g/edit#gid=0",
"cachedResultName": "Customers"
},
"documentId": {
"__rl": true,
"mode": "url",
"value": "https://docs.google.com/spreadsheets/d/1vHkhooOUi5AbeLg-HG72jU-jCCJncqdEyY3dXboQc1g/edit?gid=0#gid=0"
}
},
"credentials": {
"googleSheetsTriggerOAuth2Api": {
"id": "2QhkhdXWYCUB5Sf9",
"name": "Google Sheets Trigger account 3"
}
},
"typeVersion": 1
},
{
"id": "generated-601704ef-7cbd-449a-afd3-da0f6d324ddd",
"name": "Resumen del Flujo de Trabajo",
"type": "n8n-nodes-base.stickyNote",
"position": [
-580,
-400
],
"parameters": {
"width": 800,
"height": 280,
"content": "## Workflow Overview\n\nThis workflow first checks if a customer from the Google Sheet already exists in QuickBooks Online using their **Customer Name** or **Email**.\n\n- If the customer **exists**, the workflow proceeds directly to the **Create Sales Receipt** step.\n- If the customer **does not exist**, a new customer is created in QuickBooks Online, and then the workflow proceeds to the **Create Sales Receipt** step."
}
},
{
"id": "generated-b0d6eeec-8888-4a1a-a47e-6e4507bd358c",
"name": "Verificación y Creación de Cliente en QuickBooks",
"type": "n8n-nodes-base.stickyNote",
"position": [
-200,
200
],
"parameters": {
"color": 4,
"width": 800,
"height": 280,
"content": "### QuickBooks Customer Check & Creation\n\n1. **Check Customer Existence**: This node queries QuickBooks Online to see if a customer with the matching \"Customer Name\" or \"Email\" already exists.\n2. **Customer Exists?**: This \"If\" node evaluates the output from \"Check Customer Existence\".\n * The \"True\" branch (top output) means the customer was found.\n * The \"False\" branch (bottom output) means the customer was not found.\n3. **Create Customer**: This node is executed only if the \"Customer Exists?\" node's \"False\" branch is taken, meaning a new customer needs to be created in QuickBooks Online."
}
},
{
"id": "generated-2e0f8a9c-3a00-4222-997a-ccfd0dfdd357",
"name": "¿Cliente Existe?",
"type": "n8n-nodes-base.if",
"position": [
440,
40
],
"parameters": {
"options": {
"ignoreCase": true,
"looseTypeValidation": true
},
"conditions": {
"options": {
"version": 1,
"leftValue": "",
"caseSensitive": false,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "ba271f0d-1115-4bb7-a39b-7b2e97afe9cb",
"operator": {
"type": "number",
"operation": "gt"
},
"leftValue": "={{ $('Get many customers').all().length }}",
"rightValue": 0
}
]
}
}
},
{
"id": "generated-035f9a50-5501-4f7e-a282-4054830fd813",
"name": "Crear Cliente",
"type": "n8n-nodes-base.quickbooks",
"position": [
760,
160
],
"parameters": {
"operation": "create",
"displayName": "={{ $json[\"Customer Name\"] }}",
"additionalFields": {
"Active": true,
"Balance": "",
"Taxable": false,
"GivenName": "",
"FamilyName": "",
"CompanyName": "",
"PrimaryPhone": "={{ $json.Phone }}",
"BillWithParent": false,
"BalanceWithJobs": 0,
"PrimaryEmailAddr": "={{ $json.Email }}",
"PrintOnCheckName": "",
"FullyQualifiedName": "",
"PreferredDeliveryMethod": "Print"
}
},
"credentials": {
"quickBooksOAuth2Api": {
"id": "cOFFQQfsoezdBS0c",
"name": "QuickBooks Online account 2"
}
}
},
{
"id": "generated-f97635f5-7da3-4756-9569-88abcf4259ea",
"name": "Crear Recibo de Venta",
"type": "n8n-nodes-base.quickbooks",
"position": [
1020,
-20
],
"parameters": {
"resource": "payment",
"operation": "create",
"CustomerRef": "={{ $json.Id || $json.customer.Id }}",
"additionalFields": {
"TxnDate": ""
}
},
"credentials": {
"quickBooksOAuth2Api": {
"id": "cOFFQQfsoezdBS0c",
"name": "QuickBooks Online account 2"
}
}
},
{
"id": "ae9dae6f-5c70-4547-8dd7-90fd4eb3b431",
"name": "Verificación y Creación de Cliente en QuickBooks1",
"type": "n8n-nodes-base.stickyNote",
"position": [
640,
-380
],
"parameters": {
"color": 4,
"width": 820,
"height": 340,
"content": "### Sales Receipts\n\n1. **Check Customer Existence**: This node queries QuickBooks Online to see if a customer with the matching \"Customer Name\" or \"Email\" already exists.\n2. **Customer Exists?**: This \"If\" node evaluates the output from \"Check Customer Existence\".\n * The \"True\" branch (top output) means the customer was found.\n * The \"False\" branch (bottom output) means the customer was not found.\n3. **Create Customer**: This node is executed only if the \"Customer Exists?\" node's \"False\" branch is taken, meaning a new customer needs to be created in QuickBooks Online."
},
"typeVersion": 1
},
{
"id": "0b6028de-052f-40ad-a384-c126f3d2c20a",
"name": "Verificar Existencia del Cliente",
"type": "n8n-nodes-base.quickbooks",
"position": [
60,
0
],
"parameters": {
"filters": {
"query": "=DisplayName = '{{ $json[\"Customer Name\"] }}'"
},
"operation": "getAll"
},
"credentials": {
"quickBooksOAuth2Api": {
"id": "cOFFQQfsoezdBS0c",
"name": "QuickBooks Online account 2"
}
},
"typeVersion": 1
}
],
"active": false,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "32e15321-dbce-4da0-b087-1bd2c8902643",
"connections": {
"generated-035f9a50-5501-4f7e-a282-4054830fd813": {
"main": [
[
{
"node": "generated-f97635f5-7da3-4756-9569-88abcf4259ea",
"type": "main",
"index": 0
}
]
]
},
"generated-2e0f8a9c-3a00-4222-997a-ccfd0dfdd357": {
"main": [
[
{
"node": "generated-f97635f5-7da3-4756-9569-88abcf4259ea",
"type": "main",
"index": 0
}
],
[
{
"node": "generated-035f9a50-5501-4f7e-a282-4054830fd813",
"type": "main",
"index": 0
}
]
]
},
"01eb09e0-1209-4614-ab15-16ee134500b4": {
"main": [
[
{
"node": "Create a customer",
"type": "main",
"index": 0
},
{
"node": "0b6028de-052f-40ad-a384-c126f3d2c20a",
"type": "main",
"index": 0
}
]
]
},
"0b6028de-052f-40ad-a384-c126f3d2c20a": {
"main": [
[
{
"node": "generated-2e0f8a9c-3a00-4222-997a-ccfd0dfdd357",
"type": "main",
"index": 0
}
]
]
}
}
}¿Cómo usar este flujo de trabajo?
Copie el código de configuración JSON de arriba, cree un nuevo flujo de trabajo en su instancia de n8n y seleccione "Importar desde JSON", pegue la configuración y luego modifique la configuración de credenciales según sea necesario.
¿En qué escenarios es adecuado este flujo de trabajo?
Intermedio - Procesamiento de facturas
¿Es de pago?
Este flujo de trabajo es completamente gratuito, puede importarlo y usarlo directamente. Sin embargo, tenga en cuenta que los servicios de terceros utilizados en el flujo de trabajo (como la API de OpenAI) pueden requerir un pago por su cuenta.
Flujos de trabajo relacionados recomendados
Intuz
@intuzWorkflow automation can help automate your routine activities and help saves $$$, as well as hours of time. As a boutique tech consulting company, Intuz help businesses with custom AI/ML, AI Workflow Automations, and software development. Automate your business workflow for: Sales Marketing Accounting Finance Operations E-Commerce Customer Support Admin & Backoffice Logistics & Supply Chain
Compartir este flujo de trabajo