Documentation Index
Fetch the complete documentation index at: https://docs.younegotiate.com/llms.txt
Use this file to discover all available pages before exploring further.
Real-World Example
Maya uploads creditor profiles in the morning, schedules a campaign in the afternoon, and leaves a weekly report active for Monday. The browser should not stay open for any of that work. Jobs and scheduled commands process the CSV import, campaign delivery, provider tracking, and report email delivery in the background.Visual Flow
Background Work
| Area | Background Behavior |
|---|---|
| Creditor profile import | Stores the CSV, creates import history, processes rows on the imports queue, and writes failed rows to a failed CSV. |
| Campaign delivery | The daily command finds due campaigns, creates trackers, chunks creditor profiles, and dispatches individual email jobs. |
| Provider tracking | SendGrid events update EcoMail Hub campaign sent, delivered, and viewed counts by provider tracking key. |
| Scheduled reports | Daily, weekly, and monthly commands generate CSV files, email recipients, update last sent time, and delete temporary files. |
How It Should Work
- It should keep long-running import, campaign, and report work outside page requests.
- It should keep each history/tracker/scheduled export scoped to the owning EcoMail Hub user.
- It should make failure visible through upload history, tracker counts, or missing report send state.
- It should avoid duplicate scheduled report sends inside the same frequency window.
How It Should Not Work
- It should not require a user to keep the browser open while rows or campaign recipients process.
- It should not mix EcoMail Hub tracking with creditor campaign tracking.
- It should not leave temporary scheduled export files around after email delivery.
Developer Notes
- EcoMail Hub campaigns run daily at 17:30.
- CRM scheduled exports run at 11:00 daily, 11:15 weekly on Monday, and 11:30 monthly.
- Import jobs run on the
importsqueue.
Related App Areas
app/Jobs/ImportCreditorProfilesJob.phpapp/Console/Commands/RunEcoMailHubCampaignCommand.phpapp/Jobs/ProcessEcoMailHubCampaignCreditorProfilesJob.phpapp/Console/Commands/DailyCRMScheduleExportCommand.phpapp/Console/Commands/WeeklyCRMScheduleExportCommand.phpapp/Console/Commands/MonthlyCRMScheduleExportCommand.phpapp/Jobs/SendCRMScheduleExportEmailJob.php

