Un bon de commande sera représenté par un objet operation
de type "intervention" sur intentPlatform.
L'opération aura un workType dédié working_order
Le gestionnaire va créer une demande d'intervention, valant commande, avec un worktype work_order (commande)
. Le prestataire accuse la bonne réception de la commande en indiquant un accusé de réception sur la référence du demandeur.
Le prestataire indique le détail du traitement de la demande sur l'intervention (commande) du demandeur.
Une fois les travaux terminés, le prestataire vient clôturer la commande en l'indiquant sur la référence du demandeur.
Diagramme de séquence d'une commande
Le gestionnaire crée une commande validée qui doit être transmise au prestataire - log open/requested
Le prestataire va réceptionner la commande et en accuser la bonne réception - log open/acknowledged
Le prestataire indique le déroulé du traitement de la commande. - log open/planned, pending/start, pending/end
Le prestataire clôture la commande une fois qu'il a réalisé l'intégralité des prestations commandées - log closed/done
Scénario dérivé pour cause de problèmes d’accès ou d’impossibilité d’intervenir (status=hold).
Scénario dérivé pour cause de problèmes après première intervention (réparation partielle, problème de sécurité, de salubrité, etc.) (status=hold).
Fermeture de l’intervention suite à une impossibilité d’intervenir, un refus d’intervention de la part du partenaire ou une annulation de l'intervention (closed/denied).
- API Operations v2
- objet "intervention"
- API Documents v1
- objet "document"
Action réalisée par le gestionnaire
{
"reference": "BC-20201014-01",
"orderReference":"ERP-BC-20201014-01",
"description": "Remise en peinture de la cage d'escalier",
"contractReference": "contract1",
"status": "open",
"event": "requested",
"eventDate": "2020-10-14T10:00:00",
"logDate": "2020-10-14T10:00:00",
"location": {
"assetReference": "01-ALT-01-03",
"address": {
"way": "165 Avenue de Bretagne",
"city": "LILLE",
"zip": "59000",
"country": "FRANCE"
}
},
"serviceCode":"BC-001",
"workType": "work_order",
"contacts": [
"BEGIN:VCARD\n\nVERSION:3\r\nFN;CHARSET=UTF-8:Pierre DUPONT\r\nN;CHARSET=UTF-8:DUPONT ;Pierre\r\nTEL;TYPE=WORK,VOICE:0734220902\r\nTEL;TYPE=HOME,VOICE:0685874445\r\nADR;TYPE=WORK:165 Avenue de Bretagne;59000;LILLE;France\r\nROLE;CHARSET=UTF-8:Gardien\r\nEMAIL;CHARSET=UTF-8;TYPE=WORK,INTERNET:p.dupont@internet.fr\r\nEND:VCARD\r\nBEGIN:VCARD\n\nVERSION:3\r\nFN;CHARSET=UTF-8:Marie FRANCE\r\nN;CHARSET=UTF-8:FRANCE ;Marie\r\nTEL;TYPE=WORK,VOICE:0709243902\r\nTEL;TYPE=HOME,VOICE:0385874498\r\nADR;TYPE=WORK:165 Avenue du Bretagne;59000;LILLE;France\r\nROLE;CHARSET=UTF-8:Locataire\r\nEMAIL;CHARSET=UTF-8;TYPE=WORK,INTERNET:mfrance@internet.fr\r\nEND:VCARD"
],
"origin": "pm",
"criticalLevel": 3,
"suggestedProvisionalDate": "2020-11-10",
"suggestedTimeSlot":"Les matins de préférence"
}
curl -X POST " https://api.hubintent.com/api/documents/v1/documents " -H "accept: application/json" -H "Content-Type: multipart/form-data" -F "file=@BC-001.pdf;type=application/pdf" -F "title=BC 213231" -F "elementType=intervention" -F "elementReference=BC-20201014-01" -F "description=Bon de commande" -F "intent_contractReference=contract1"
En tant que prestataire, je reçois un webhook lors de la mise à disposition d'une commande. Il sera de la forme suivante :
[
{
"type": "operations:intervention:share",
"id": "471b155d-09ac-4ec6-a83a-70b3b8695738",
"event": {
"type": "operations",
"body": {
"id": "6ca801bb-cae3-43a6-978a-a18216f1f7a8",
"reference": "BC-20201014-01",
"contractReference": "contract1",
"type": "intervention",
"description": "Remise en peinture de la cage d'escalier",
"status": "open",
"event": "requested",
"serviceCode": "BC-001",
"workType": "work_order",
"criticalLevel": "3",
"issuer": {
"entity": {
"id": "5e78774dfb9f7e3faec804ec",
"label": "Gestionnaire"
},
"user": {
"id": "371c6829-2b25-40d7-8d2d-8238537ca146",
"name": "serviceclient+gestionnaire@intent.tech"
}
},
"operation_url": "https://apisandbox.hubintent.com/api/operations/v2/operations/BC-20201014-01?contractReference=contract1"
}
}
}
]
Lancement des actions suivantes :
- Appel API sur le champ
operation_url
: GET /operations/{reference} - Appel API pour récupérer les photos
- Appel API pour récupérer les documents
Action réalisée par le prestataire
{
"reference": "BC-20201014-01",
"orderReference":"ERP-BC-20201014-01",
"description": "Nous accusons bonne réception de votre commande",
"contractReference": "contract1",
"status": "open",
"event": "acknowledged",
"eventDate": "2020-10-14T10:05:00",
"logDate": "2020-10-14T10:05:00",
"serviceCode": "BC-001",
"location": {
"assetReference": "01-ALT-01-03",
"address": {
"way": "165 Avenue de Bretagne",
"city": "LILLE",
"zip": "59000",
"country": "FRANCE"
}
},
"workType": "work_order"
}
Action réalisée par le prestataire
{
"reference": "BC-20201014-01",
"orderReference":"ERP-BC-20201014-01",
"description": "Planification de l'intervention au 18/10/2020 - 14h",
"contractReference": "contract1",
"status": "open",
"event": "planned",
"eventDate": "2020-10-18T14:00:00",
"logDate": "2020-10-16T10:00:00",
"serviceCode": "PEINTRE-CP-9",
"location": {
"assetReference": "01-ALT-01-03",
"address": {
"way": "165 Avenue de Bretagne",
"city": "LILLE",
"zip": "59000",
"country": "FRANCE"
}
},
"workType": "work_order"
}
Action réalisée par le prestataire
{
"reference": "BC-20201014-01",
"orderReference":"ERP-BC-20201014-01",
"contractReference": "contract1",
"status": "pending",
"event": "start",
"eventDate": "2020-10-18T13:00:00",
"logDate": "2020-10-18T13:00:00",
"serviceCode": "PEINTRE-CP-9",
"location": {
"assetReference": "01-ALT-01-03",
"address": {
"way": "165 Avenue de Bretagne",
"city": "LILLE",
"zip": "59000",
"country": "FRANCE"
}
},
"workType": "work_order"
}
… puis …
{
"reference": "BC-20201014-01",
"orderReference":"ERP-BC-20201014-01",
"contractReference": "contract1",
"status": "pending",
"event": "end",
"eventDate": "2020-10-18T17:00:00",
"logDate": "2020-10-18T17:00:00",
"serviceCode": "PEINTRE-CP-9",
"location": {
"assetReference": "01-ALT-01-03",
"address": {
"way": "165 Avenue de Bretagne",
"city": "LILLE",
"zip": "59000",
"country": "FRANCE"
}
},
"workType": "work_order",
}
Action réalisée par le prestataire
{
"reference": "BC-20201014-01",
"orderReference":"ERP-BC-20201014-01",
"description":"Travaux de peinture terminés",
"contractReference": "contract1",
"status": "closed",
"event": "done",
"eventDate": "2020-10-18T17:10:00",
"logDate": "2020-10-18T17:10:00",
"serviceCode": "PEINTRE-CP-9",
"location": {
"assetReference": "01-ALT-01-03",
"address": {
"way": "165 Avenue de Bretagne",
"city": "LILLE",
"zip": "59000",
"country": "FRANCE"
}
},
"workType": "work_order",
"visitAttempt": 1,
"occupantSignature": "ok"
}
curl -X POST " https://apisandbox.hubintent.com/api/documents/v1/documents " -H "accept: application/json" -H "Content-Type: multipart/form-data" -F "file=@quitus1.pdf;type=application/pdf" -F "title=rapport d'intervention d'intervention" -F "elementType=intervention" -F "elementReference=inter_201007151812" -F "description=rapport d'intervention" -F "intent_contractReference=contract1"