{
  "name": "Kindwork Client Onboarding",
  "nodes": [
    {
      "parameters": {
        "httpMethod": "POST",
        "path": "kindwork-stripe-webhook",
        "responseMode": "onReceived",
        "options": {}
      },
      "id": "webhook-trigger",
      "name": "Stripe Webhook",
      "type": "n8n-nodes-base.webhook",
      "typeVersion": 2,
      "position": [
        250,
        300
      ]
    },
    {
      "parameters": {
        "jsCode": "// Parse Stripe webhook data\nconst stripeData = $input.item.json;\n\n// Extract customer and payment info\nconst customerEmail = stripeData.data?.object?.customer_email || stripeData.data?.object?.receipt_email || '';\nconst customerName = stripeData.data?.object?.billing_details?.name || stripeData.data?.object?.customer_name || 'New Client';\nconst paymentAmount = (stripeData.data?.object?.amount || 0) / 100; // Convert cents to dollars\nconst paymentId = stripeData.data?.object?.id || '';\nconst productDescription = stripeData.data?.object?.description || 'Service';\n\n// Determine service type based on amount\nlet service = 'Build';\nif (paymentAmount === 750) {\n  service = 'Audit';\n} else if (paymentAmount >= 3000) {\n  service = 'Retainer';\n} else if (paymentAmount >= 2500) {\n  service = 'Build';\n}\n\n// Generate folder name\nconst folderName = `${customerName.trim()} - Kindwork Project`;\n\nreturn {\n  client_name: customerName,\n  client_email: customerEmail,\n  payment_amount: paymentAmount,\n  payment_id: paymentId,\n  service: service,\n  folder_name: folderName,\n  product_description: productDescription,\n  timestamp: new Date().toISOString()\n};"
      },
      "id": "parse-stripe-data",
      "name": "Parse Client Data",
      "type": "n8n-nodes-base.code",
      "typeVersion": 2,
      "position": [
        470,
        300
      ]
    },
    {
      "parameters": {
        "operation": "create",
        "folderId": {
          "__rl": true,
          "mode": "list",
          "value": "root"
        },
        "name": "={{ $json.folder_name }}",
        "options": {}
      },
      "id": "create-main-folder",
      "name": "Create Project Folder",
      "type": "n8n-nodes-base.googleDrive",
      "typeVersion": 3,
      "position": [
        690,
        200
      ],
      "credentials": {
        "googleDriveOAuth2Api": {
          "name": "<your credential>"
        }
      }
    },
    {
      "parameters": {
        "operation": "create",
        "folderId": {
          "__rl": true,
          "mode": "id",
          "value": "={{ $('Create Project Folder').item.json.id }}"
        },
        "name": "01 - Deliverables",
        "options": {}
      },
      "id": "create-deliverables-folder",
      "name": "Create Deliverables Folder",
      "type": "n8n-nodes-base.googleDrive",
      "typeVersion": 3,
      "position": [
        910,
        100
      ],
      "credentials": {
        "googleDriveOAuth2Api": {
          "name": "<your credential>"
        }
      }
    },
    {
      "parameters": {
        "operation": "create",
        "folderId": {
          "__rl": true,
          "mode": "id",
          "value": "={{ $('Create Project Folder').item.json.id }}"
        },
        "name": "02 - Assets",
        "options": {}
      },
      "id": "create-assets-folder",
      "name": "Create Assets Folder",
      "type": "n8n-nodes-base.googleDrive",
      "typeVersion": 3,
      "position": [
        910,
        200
      ],
      "credentials": {
        "googleDriveOAuth2Api": {
          "name": "<your credential>"
        }
      }
    },
    {
      "parameters": {
        "operation": "create",
        "folderId": {
          "__rl": true,
          "mode": "id",
          "value": "={{ $('Create Project Folder').item.json.id }}"
        },
        "name": "03 - Contracts & Invoices",
        "options": {}
      },
      "id": "create-contracts-folder",
      "name": "Create Contracts Folder",
      "type": "n8n-nodes-base.googleDrive",
      "typeVersion": 3,
      "position": [
        910,
        300
      ],
      "credentials": {
        "googleDriveOAuth2Api": {
          "name": "<your credential>"
        }
      }
    },
    {
      "parameters": {
        "operation": "create",
        "folderId": {
          "__rl": true,
          "mode": "id",
          "value": "={{ $('Create Project Folder').item.json.id }}"
        },
        "name": "04 - Intake & Discovery",
        "options": {}
      },
      "id": "create-intake-folder",
      "name": "Create Intake Folder",
      "type": "n8n-nodes-base.googleDrive",
      "typeVersion": 3,
      "position": [
        910,
        400
      ],
      "credentials": {
        "googleDriveOAuth2Api": {
          "name": "<your credential>"
        }
      }
    },
    {
      "parameters": {
        "resource": "databasePage",
        "operation": "create",
        "databaseId": {
          "__rl": true,
          "mode": "list",
          "value": ""
        },
        "title": "={{ $('Parse Client Data').item.json.client_name }}",
        "propertiesUi": {
          "propertyValues": [
            {
              "key": "Email",
              "emailValue": "={{ $('Parse Client Data').item.json.client_email }}"
            },
            {
              "key": "Service",
              "selectValue": "={{ $('Parse Client Data').item.json.service }}"
            },
            {
              "key": "Status",
              "selectValue": "New"
            },
            {
              "key": "Priority",
              "selectValue": "Medium"
            },
            {
              "key": "Start Date",
              "dateValue": "={{ $now.toISODate() }}"
            },
            {
              "key": "Payment Amount",
              "numberValue": "={{ $('Parse Client Data').item.json.payment_amount }}"
            },
            {
              "key": "Payment Status",
              "selectValue": "Paid"
            },
            {
              "key": "Stripe Payment ID",
              "textValue": "={{ $('Parse Client Data').item.json.payment_id }}"
            },
            {
              "key": "Drive Folder",
              "urlValue": "=https://drive.google.com/drive/folders/{{ $('Create Project Folder').item.json.id }}"
            }
          ]
        }
      },
      "id": "create-notion-project",
      "name": "Create Notion Project",
      "type": "n8n-nodes-base.notion",
      "typeVersion": 2,
      "position": [
        1130,
        300
      ],
      "credentials": {
        "notionApi": {
          "name": "<your credential>"
        }
      }
    },
    {
      "parameters": {
        "fromEmail": "ben@getkindwork.com",
        "toEmail": "={{ $('Parse Client Data').item.json.client_email }}",
        "subject": "Welcome to Kindwork, {{ $('Parse Client Data').item.json.client_name }}! \ud83c\udf89",
        "text": "Hi {{ $('Parse Client Data').item.json.client_name }},\n\nThanks for choosing Kindwork to transform your operations!\n\nHere's what happens next:\n\n\u2705 Your project folder is ready: https://drive.google.com/drive/folders/{{ $('Create Project Folder').item.json.id }}\n\n\u2705 Please fill out our intake form: [INTAKE_FORM_URL_HERE]\n\n\u2705 Book your kickoff call: [CALENDLY_LINK_HERE]\n\nI'll personally review your intake responses and come prepared with an automation roadmap for our call.\n\nLooking forward to working together!\n\nBen Larrazolo\nFounder, Kindwork\nhello@kindwork.co\ngetkindwork.com",
        "options": {
          "senderName": "Ben from Kindwork"
        }
      },
      "id": "send-welcome-email",
      "name": "Send Welcome Email",
      "type": "n8n-nodes-base.sendGrid",
      "typeVersion": 1,
      "position": [
        1350,
        300
      ],
      "credentials": {
        "sendGridApi": {
          "name": "<your credential>"
        }
      }
    }
  ],
  "connections": {
    "Stripe Webhook": {
      "main": [
        [
          {
            "node": "Parse Client Data",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Parse Client Data": {
      "main": [
        [
          {
            "node": "Create Project Folder",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Create Project Folder": {
      "main": [
        [
          {
            "node": "Create Deliverables Folder",
            "type": "main",
            "index": 0
          },
          {
            "node": "Create Assets Folder",
            "type": "main",
            "index": 0
          },
          {
            "node": "Create Contracts Folder",
            "type": "main",
            "index": 0
          },
          {
            "node": "Create Intake Folder",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Create Deliverables Folder": {
      "main": [
        [
          {
            "node": "Create Notion Project",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Create Notion Project": {
      "main": [
        [
          {
            "node": "Send Welcome Email",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  },
  "settings": {
    "executionOrder": "v1"
  },
  "staticData": null,
  "tags": [],
  "triggerCount": 1,
  "versionId": null
}