Sam clarified that receipt logging was acceptable, but the onboarding folder could not say that the receipt system was undocumented. Joe has a firm credit card, so CMO marketing expenses needed to be entered in Litify. Sam then supplied direct login credentials for named business and marketing systems and asked that they be added to Joe's credential sheet.
Created a live Salesforce/Litify marketing expense logging platform in LITIFY_ORG. The new object is Marketing_Expense__c with a custom tab, page layout, list views, and a permission set for Joe. The platform captures line-item marketing expenses with expense date, vendor, amount, category, channel, market, payment method, cardholder, business purpose, receipt link or attachment flag, campaign/project, approval status, statement month, notes, and an optional lookup to litify_mktgROI__Monthly_Marketing_Spend__c for monthly/source rollups.
Validated live first: litify_mktgROI__Monthly_Marketing_Spend__c exists for spend rollups, litify_pm__Expense__c exists but is matter/case expense infrastructure, and Joe Choniski is active in Salesforce as jchoniski@demandsam.com. Assigned Marketing_Expense_Log_Access to Joe and added the Marketing Expense tab to the Litify app navigation.
Updated the Joe onboarding Drive docs so receipt handling now points to Litify rather than vague folder language. The updated docs include the receipt process, CMO card policy, consolidated runbook, media reps, agencies/freelancers, and social accounts inventory. Drive readback verified the banned placeholder phrasing was gone.
Updated the existing Drive credential sheet because Google Drive blocked creating a brand-new file with the service account storage-quota rule. The updated sheet is 04_Access_and_Credentials/01-Credential-Sets-Inventory.md, Drive file ID 15-Mh3TQEuy8WZLRkvXNSBdGc2kC0w-DG, now titled Credential Sets Inventory And Direct Login Sheet. It contains direct-login entries for Amazon Business, Avvo, Intaker.com, Roadproof, Genesis, Salesforce / Litify, GeneratePress, Yext, Screaming Frog, and Buffer. Password values are intentionally omitted from this Notion export.
Tried to create a new Drive file named 03-Direct-Login-Credential-Sheet.md in 04_Access_and_Credentials. Google returned a 403 storage-quota error for service-account-created files. Workaround: updated the existing credential sheet file in-place, which succeeds because media updates to existing files do not require the service account to own new storage quota.
A first Salesforce dry run failed because LongTextArea fields cannot be marked required at the field-definition level and checkbox list-view filters must use 0 or 1. Fixed those. A second dry run failed because permission sets cannot explicitly set FLS for required fields. Removed those redundant required-field permission entries. Final dry run passed.
Created a new marketing-specific object instead of using litify_pm__Expense__c, because the Litify expense object is tied to matter/case expense workflows and would mix marketing card charges with case costs. Linked the new object optionally to litify_mktgROI__Monthly_Marketing_Spend__c so line-item receipts can support existing spend rollups without replacing them.
Used the existing credential sheet rather than creating a new Drive file because Drive blocked new file creation under the service account. Kept secret values out of Notion, handoffs, and final chat prose to avoid spreading credentials beyond the credential sheet Sam specifically requested.
Litify metadata files were added under /Users/samaguiar/Documents/Projects/Repos/sail-litify/Litify_AI_Integration_Project/salesforce-metadata/force-app/main/default/objects/Marketing_Expense__c/, plus /tabs/Marketing_Expense__c.tab-meta.xml, /layouts/Marketing_Expense__c-Marketing Expense Layout.layout-meta.xml, /permissionsets/Marketing_Expense_Log_Access.permissionset-meta.xml, and an app-nav edit to /applications/Litify_Complete_Custom.app-meta.xml.
Operational docs updated: /Users/samaguiar/Documents/Projects/Repos/sail-litify/Litify_AI_Integration_Project/docs/litify-environment-diary.md, /Users/samaguiar/Documents/Projects/Repos/sail-litify/Litify_AI_Integration_Project/OPS_LEDGER.md, and /Users/samaguiar/Documents/Projects/admin/session_logs/joe-cmo-onboarding-folder-cleanup-2026-04-27/HANDOFF-Joe-CMO-onboarding-folder-cleanup-2026-04-27.md.
Drive docs updated: receipt process 11XbF3_pnGFZHmK1Fekrx8f5lxj9z5QK2, card policy 1ZsVAR-RvUN7zGExhDlLcQ-ha9Qn3n06e, consolidated runbook 1itF6OReuDAANjV6oEXf1nrdvvAJ9qPdi, media reps 1Pvdum6R6uFC-jtevOd-4btQK5Qg4_JVU, agencies/freelancers 1dKbEo3hdMN-jIZbnbqpwVYbFn5snkR11, social accounts 1zEwLo0-_z9prXuc362fhJ0IanSsf9pi7, and credential sheet 15-Mh3TQEuy8WZLRkvXNSBdGc2kC0w-DG.
The Litify Marketing Expense platform is live. Joe has the Marketing_Expense_Log_Access permission set. Object permissions read/create/edit are true and delete is false. The Litify app nav includes Marketing Expense. No Marketing Expense records existed immediately after creation.
Deployment evidence: dry run 0AfUV000001VKDB0A4 succeeded with 24/24 components; live deploy 0AfUV000001VKGP0A4 succeeded with 24/24 components; Litify app nav deploy 0AfUV000001VKI10AO succeeded with 1/1 component.