An IMAP integration that scans the Email's sent by Ocado and pulls out the Order Edit and Order Delivery details as sensors that can be displayed in the HA dashboard.
Note: There is no association with Ocado. This integration took a lot of inspiration from ha-email-sensor so has a similar configuration

Example mushroom-template-card
type: custom:mushroom-template-card
primary: Edit Order Until
secondary: >
{{ state_attr('sensor.ocado_tracking', 'edit_until_date') | default('N/A') }}
{{ state_attr('sensor.ocado_tracking', 'edit_until_time') | default('N/A') }}
icon: mdi:note-edit
multiline_secondary: true
tap_action:
action: none
hold_action:
action: none
double_tap_action:
action: none
fill_container: false
icon_color: blue```
---
## Installation
- Download, unzip and copy the ocado folder in your 'config/custom_components' folder
- Edit your '/config/configuration.yaml' file and add the following in your sensor section
```yaml
sensor:
- platform: ocado
email: email@account
password: email_password| Name | Type | Requirement | default Description |
|---|---|---|---|
| string | Required | email address | |
| password | string | Required | email password |
| imap_server | string | Optional | imap.gmail.com IMAP server address |
| imap_port | number | Optional | 993 IMAP port |
| folder | string | Optional | INBOX Which folder to pull emails from |
| ssl | boolean | Optional | true enable or disable SSL when using IMAP |
| days_old | number | Optional | 7 how many days of emails to retrieve |
| Name | Description |
|---|---|
| Email Received Date | Email date and time that information was parsed from |
| Delivery Date | Delivery date for example; Saturday 10 March |
| Delivery Time | Delivery Time for example; 8:30pm - 9:30pm |
| Edit Until Date | Date that Order can be edited until, example; Thursday 09 March |
| Edit Until Time | Time that Order can be edited until, example; 23:30 |
| Edit Countdown Minutes | Countdown until Order editing closes, making it easier to build alert automations |
| Delivery Countdown Minutes | Countdown until Delivery window opens, making it easier to turn on lights etc |
To add a sensor use the following syntax;
{{ state_attr('sensor.ocado_tracking', 'edit_until_date') | default('N/A') }}
Integration will poll the IMAP server every 10 minutes, so bear this in mind when making automations
Edit Countdown Minutes provides a simple minutes countdown to make it easy to build alert automations without faffing around with dates and times
If you enjoy this integration please consider buying me a coffee!

