General Description of the Feature
This feature deals with the development of the API that is responsible to create Service Inquiries from an external webpage (i.e.: OSM) into Digital Aftersales Workplace (aka DASW) and is linked with it.
The service that creates a Service Appointment Inquiry is described below.
Login – Authentication token |
---|
Relative URL | /Files/Services/ODInquiryServices.onesrv?m=CreateInquiryInterestByCase |
---|
Method Type | POST |
---|
Content Type | application/json |
---|
Arguments |
{
"inquiry": {
"CaseType": 4,
"InquirySource": null,
"InquiryChannel": null,
"InboundKey": "ServiceInquiryOSM",
"RequestedAppointmentDate": "2022-09-16T07:30:00Z",
"TransportationRequest": true,
"CompanyCode": null,
"BranchCode": null,
"LocationCode": "8C959960FB020039E10200000A4104",
"LocationDesc": "OneDealer QA Decouple - Location",
"FirstName": "Testing",
"LastName": "test",
"Email": "ODP4123@mailinator.com",
"Phone1": null,
"Phone2": null,
"MobilePhone": "+306985635626",
"Street": "",
"StreetNo": "",
"ZipCode": "",
"CountryCode": "XX",
"VatRegistration": null,
"MakeCode": "22",
"FamilyCode": "100",
"ModelCode": null,
"ModelAsAComment": "i10",
"VIN": "U176982",
"LicensePlate": "IIK2350",
"Engine": "1800",
"EngineDisplacement": "1800",
"Transmission": null,
"FirstRegistrationDate": "2020-09-01",
"ProductionYear": null,
"Mileage": "50000",
"Notes": "ODP-4123 testing",
"CCs": [{"CCCode": "7gZo0FZk30GMtstLOfgaOw", "Description": "Service 30000 km", "Notes": "Added from OSM"}]
}
}
|
---|
Response On Success |
{
"BusinessState": {
"BusinessStatus": "BusinessOk",
"BusinessErrors": []
},
"Data": {
"InquiryCodeCreated": “{InquiryCode}”
"ProcessedEntityCodeCreated": null,
"ProcessedEntityTypeCreated": null,
"AssignedPersonCode": {AssignedUserID},
"Errors": null
}
}
|
---|
Response On Error |
{
"BusinessState": {
"BusinessStatus": "BusinessOk",
"BusinessErrors": []
},
"Data": {
"InquiryCodeCreated": null,
"ProcessedEntityCodeCreated": null,
"ProcessedEntityTypeCreated": null,
"AssignedPersonCode": null,
"Errors": "{Error_Message}"
}
}
|
---|
Process
After the above mentioned API is called properly from a website, i.e. OSM, an Inquiry is created within the targeted DASW. This inquiry should have Interest Type = Appointment and Source, Channel, Assignee based on the relevant configuration in Dealer Unit and Inquiry Key Relation (check the configuration section).
This inquiry has initial status "Generated" and the user has to make two types of qualifications in order to be able to create a JobCard Appointment. The inquiry of this Interest Type (appointment) should include the following tabs:
- Details: generic information of the inquiry
- Booking code: provided to the User in OSM at the end of the process
- Source
- Channel
- Interest Type
- Notes
- Contact: The information of the customer as provided in OSM
- First Name
- Last Name
- Email
- Phone
- Vehicle: The information of the vehicle as provided in OSM
- License Plate
- Make
- Family
- Model as a Comment = Family description
- VIN
- First Registration Date
- Odometer
- Interest: The information related with the booking as provided in OSM
- Requested Appointment Date
- Location
- Valet Services: Includes one of the following:
- The customer will not remain in the shop
- The customer will remain in the shop
- Service Advisor: the assignee user of the inquiry
- Response Due Date
- notes: as added in OSM from the customer
- Customer Concerns section including a list with all the CCs selected in OSM.
- Related: Includes any related entries created for this inquiry, i.e. Tasks, Notes
Customer Qualification
Just like the regular sales inquiries, the user should firstly qualify the contact. In case the contact information are matching any existing Business Partner information (based on the duplication rules that are developed in the relevant environment) then the user will be able to check the duplicates and decide either to select an existing BP or create a new one.
Then this qualified contact is made as a Business Partner and should be of type "Customer" in order to be able to proceed with the vehicle qualification.
As soon as the contact is qualified the Inquiry Status = Person Qualified
Vehicle Qualification
In this step the user has to qualify the vehicle and the information, in order to be able to open an Appointment Job Card. The system is also passing the vehicle through a duplication check which is trying to match the vehicle information of the inquiry existing vehicles in the database. The rule is matching:
- License Plate
- VIN (7 last digits of the VIN)
The header will then show “Existing vehicle found. Update and connect vehicle” or “No matching vehicles found. Create and connect vehicle” depending on the case.
Clicking the action will open a vehicle card page, that will have all the field from the inquiry filled in the vehicle page’s fields. All the other fields will either use the existing vehicle’s values, or be empty on the “Create new” case.
The Vehicle should take the qualified Business Partner as owner and the Vehicle Status should be "Customer Vehicle".
Once the Inquiry has a “Vehicle ID”, it is considered “Vehicle Qualified” and the save button will no longer appear in this tab.
Actions
When the inquiry is both “Contact Qualified” & “Vehicle Qualified” the action “Create Appointment” will appear within the Action button. It will function the same as the ‘+’ action’s popup in JobCard/Appointment grid list, but any info that exists on the Inquiry will prefill the relevant fields in the appointment creation pop-up.
Response Due Date and User notification
Each Inquiry created through this process, should take a Response Due Date = Creation Date + Response Timespan (in hours) from Dealer Unit. When an inquiry’s Response Due Date has expired, the users should be notified by an OD bell notification as well as an e-mail.
An endpoint has been created “/JobCard/SendNotificationsForExpiredServiceInquiries” that can be configured to run with a scheduler in OneFire (by the IT team). Each time this scheduler or endpoint runs will gather all the inquiries with:
- Type “Appointment”
- status is not “In Process” nor “Disqualified”
- They have a not null Response Due Date
- They have a null Response Date
- They have SentNotification not equal to 1 (not any due date notification is send yet)
- The ResponseDueDate+Time has passed (the response due date is expired)
For all the inquiries that match with the above rules, the assignee User will receive both a bell and an email notification, stating “This inquiry's Response Due Date has passed” and linking to that inquiry.
Add Comment