diff --git a/roulier/carriers/geodis_fr/edi/api.py b/roulier/carriers/geodis_fr/edi/api.py index af2c369..5a40955 100644 --- a/roulier/carriers/geodis_fr/edi/api.py +++ b/roulier/carriers/geodis_fr/edi/api.py @@ -125,6 +125,13 @@ def _shipments(self): "required": False, # 'description': """7085 : Notify recipient by M(ail), S(ms), P(=M+S)""" }, + # Contract and condition : particular/pro + # when empty it is kind of computed by geodis sytem depending on option + "contractCondition": { + "type": "string", + "required": False, + "allowed": ["P", "E"], + }, "shippingId": { "type": "string", "default": "", diff --git a/roulier/carriers/geodis_fr/edi/encoder.py b/roulier/carriers/geodis_fr/edi/encoder.py index 37d9e92..ba2163b 100644 --- a/roulier/carriers/geodis_fr/edi/encoder.py +++ b/roulier/carriers/geodis_fr/edi/encoder.py @@ -28,7 +28,7 @@ def encode_shipment(self, shipment, service, idx): ["CNI", "%s" % idx, shipment["shippingId"]], [ "TSR", - "2", # 4065 + shipment.get("contractCondition", ""), [shipment["product"], "", "", shipment["productOption"]], # 7273 shipment["productPriority"], # 4219 shipment["notifications"], # 7085 : M, S, P