Inbound Enquiries: Difference between revisions
From Standout Property Manager Wiki Help
(Standout Communications Centre, inbound feeds and Meta documentation) |
imported>Standout documentation update (Update Standout help for Communications Centre, portal integrations, Customer Portal and Reports Centre changes through 5 September 2026) |
||
| Line 1: | Line 1: | ||
__NOTOC__ | |||
= Inbound Enquiries = | = Inbound Enquiries = | ||
Inbound enquiry | Inbound enquiry connections are managed under '''Administration → Feeds/Portals'''. They feed portal and website leads into the normal [[Communications Centre]] rather than creating separate inboxes. | ||
== Supported sources == | |||
''' | {| class="wikitable" | ||
! Source !! Connection model !! Branch/customer setting | |||
|- | |||
| Rightmove || Scheduled RTDF polling || Rightmove Branch ID | |||
|- | |||
| OnTheMarket || Scheduled RTDF polling || OnTheMarket Branch ID and telephone-lead mode | |||
|- | |||
| Zoopla || Scheduled Leads API polling || Zoopla internal Branch ID | |||
|- | |||
| Homeflow || Push callback || Fixed Standout branch | |||
|- | |||
| Agency website || HTTPS API || Website source/API key and optional fixed branch | |||
|} | |||
Shared provider credentials are managed centrally by ISSL under '''Tools'''. Agency administrators normally only configure the branch-specific values shown above. | |||
== Common lead processing == | |||
Regardless of source, Standout uses the same core process: | |||
# deduplicate using the source's lead/external ID where available; | |||
# match the property using the supplied property/agent reference; | |||
# infer sales/rental context where the source lead type is generic; | |||
# match an existing CRM contact by email/telephone only where the match is sufficiently clear; | |||
# assign to the property's active managing negotiator where possible; | |||
# preserve the complete original payload for audit/future mappings; | |||
# place the communication in the normal Communications Centre workflow. | |||
The enquiry can then be corrected, linked, converted to CRM actions and responded to from within Standout. | |||
Standout | |||
== Rightmove == | |||
Rightmove uses the RTDF branch email interface. Standout-wide Network ID/API/certificate details are managed centrally and each agency branch supplies its Rightmove Branch ID. | |||
Enabled connections are polled by the Laravel scheduler. Poll windows deliberately overlap and Rightmove's lead ID is used for deduplication, so a repeat poll should not create duplicate enquiries. | |||
Qualified lettings answers are retained and the customer-written message is separated from the positional qualification information where possible. | |||
== OnTheMarket == | |||
OnTheMarket uses its RTDF-compatible endpoints and Standout's shared client certificate. Each agency branch supplies its OnTheMarket Branch ID. | |||
The working Standout transport uses the P12/PFX client certificate directly with TLS 1.2/HTTP 1.1. P12/PFX files already contain the private key, so a separate PEM key is not used for that certificate format. | |||
OnTheMarket telephone leads are optional per connection: | |||
* ''' | * '''Off''' – do not request telephone leads; | ||
* ''' | * '''Missed calls only''' (default) – import Unanswered, Abandoned and Missed calls; | ||
* ''' | * '''All calls''' – import all supported telephone lead statuses. | ||
See [[OnTheMarket Inbound Enquiries]]. | |||
== Zoopla == | |||
Zoopla uses OAuth2 machine-to-machine authentication for the Leads API. Each branch must use Zoopla's own internal Branch ID, not the Standout Office ID. | |||
A | The production lead sync uses the Leads API client-credentials/audience authentication. A separate generic Zoopla OAuth form is available only as a comparison in the diagnostic tools; it is not used as a silent production fallback. | ||
Standout requests applicant and appraisal leads when the shared Zoopla credentials are active. Production use therefore depends on Zoopla supplying/enabling the correct client credentials and lead permissions. | |||
See [[Zoopla Leads API]]. | |||
=== | == Homeflow == | ||
Homeflow is push-only. Create a Homeflow inbound connection for a fixed Standout branch and give Homeflow the generated secure callback URL. There is no scheduled '''Sync now''' poll for Homeflow. | |||
See [[Homeflow Inbound Enquiries]]. | |||
== Website enquiries == | |||
Agency websites can POST enquiries directly to Standout over HTTPS using the [[Website Enquiry API]]. Each source has a secret API key and can optionally be restricted to a fixed branch/origin. | |||
Use a stable unique <code>external_id</code> for each website submission. Retrying the same ID is safe and prevents duplicate communications. | |||
== Scheduler == | |||
Rightmove, OnTheMarket and Zoopla polling depend on Laravel's scheduler. Homeflow is push-only. | |||
Typical server scheduler entry: | |||
<pre>* * * * * cd /path/to/standout && php artisan schedule:run >> /dev/null 2>&1</pre> | |||
The portal sync command can also be run manually for testing: | |||
<pre>php artisan enquiries:sync-portals</pre> | |||
or for a single connection: | |||
<pre>php artisan enquiries:sync-portals --connection=CONNECTION_ID</pre> | |||
=== | == Testing checklist == | ||
# Save the branch connection. | |||
# Use the appropriate connection test/Sync now action where available. | |||
# Submit a real test enquiry. | |||
# Confirm exactly one communication appears. | |||
# Confirm the property, branch and contact match are sensible. | |||
# Repeat the poll/submission and make sure the same source ID is treated as a duplicate. | |||
# Confirm later enquiries arrive without manual intervention. | |||
[[Category:Administration]] | |||
[[Category:Communications Centre]] | |||
Revision as of 16:40, 5 September 2026
Inbound Enquiries
Inbound enquiry connections are managed under Administration → Feeds/Portals. They feed portal and website leads into the normal Communications Centre rather than creating separate inboxes.
Supported sources
| Source | Connection model | Branch/customer setting |
|---|---|---|
| Rightmove | Scheduled RTDF polling | Rightmove Branch ID |
| OnTheMarket | Scheduled RTDF polling | OnTheMarket Branch ID and telephone-lead mode |
| Zoopla | Scheduled Leads API polling | Zoopla internal Branch ID |
| Homeflow | Push callback | Fixed Standout branch |
| Agency website | HTTPS API | Website source/API key and optional fixed branch |
Shared provider credentials are managed centrally by ISSL under Tools. Agency administrators normally only configure the branch-specific values shown above.
Common lead processing
Regardless of source, Standout uses the same core process:
- deduplicate using the source's lead/external ID where available;
- match the property using the supplied property/agent reference;
- infer sales/rental context where the source lead type is generic;
- match an existing CRM contact by email/telephone only where the match is sufficiently clear;
- assign to the property's active managing negotiator where possible;
- preserve the complete original payload for audit/future mappings;
- place the communication in the normal Communications Centre workflow.
The enquiry can then be corrected, linked, converted to CRM actions and responded to from within Standout.
Rightmove
Rightmove uses the RTDF branch email interface. Standout-wide Network ID/API/certificate details are managed centrally and each agency branch supplies its Rightmove Branch ID.
Enabled connections are polled by the Laravel scheduler. Poll windows deliberately overlap and Rightmove's lead ID is used for deduplication, so a repeat poll should not create duplicate enquiries.
Qualified lettings answers are retained and the customer-written message is separated from the positional qualification information where possible.
OnTheMarket
OnTheMarket uses its RTDF-compatible endpoints and Standout's shared client certificate. Each agency branch supplies its OnTheMarket Branch ID.
The working Standout transport uses the P12/PFX client certificate directly with TLS 1.2/HTTP 1.1. P12/PFX files already contain the private key, so a separate PEM key is not used for that certificate format.
OnTheMarket telephone leads are optional per connection:
- Off – do not request telephone leads;
- Missed calls only (default) – import Unanswered, Abandoned and Missed calls;
- All calls – import all supported telephone lead statuses.
See OnTheMarket Inbound Enquiries.
Zoopla
Zoopla uses OAuth2 machine-to-machine authentication for the Leads API. Each branch must use Zoopla's own internal Branch ID, not the Standout Office ID.
The production lead sync uses the Leads API client-credentials/audience authentication. A separate generic Zoopla OAuth form is available only as a comparison in the diagnostic tools; it is not used as a silent production fallback.
Standout requests applicant and appraisal leads when the shared Zoopla credentials are active. Production use therefore depends on Zoopla supplying/enabling the correct client credentials and lead permissions.
See Zoopla Leads API.
Homeflow
Homeflow is push-only. Create a Homeflow inbound connection for a fixed Standout branch and give Homeflow the generated secure callback URL. There is no scheduled Sync now poll for Homeflow.
See Homeflow Inbound Enquiries.
Website enquiries
Agency websites can POST enquiries directly to Standout over HTTPS using the Website Enquiry API. Each source has a secret API key and can optionally be restricted to a fixed branch/origin.
Use a stable unique external_id for each website submission. Retrying the same ID is safe and prevents duplicate communications.
Scheduler
Rightmove, OnTheMarket and Zoopla polling depend on Laravel's scheduler. Homeflow is push-only.
Typical server scheduler entry:
* * * * * cd /path/to/standout && php artisan schedule:run >> /dev/null 2>&1
The portal sync command can also be run manually for testing:
php artisan enquiries:sync-portals
or for a single connection:
php artisan enquiries:sync-portals --connection=CONNECTION_ID
Testing checklist
- Save the branch connection.
- Use the appropriate connection test/Sync now action where available.
- Submit a real test enquiry.
- Confirm exactly one communication appears.
- Confirm the property, branch and contact match are sensible.
- Repeat the poll/submission and make sure the same source ID is treated as a duplicate.
- Confirm later enquiries arrive without manual intervention.
