@@ -101,7 +101,7 @@ def _shipment_request(payload: ShipmentRequest, settings: Settings) -> Serializa
101101 is_international = (payload .shipper .country_code != payload .recipient .country_code )
102102 shipper_phone_number = Phone (payload .shipper .phone_number , payload .shipper .country_code )
103103 recipient_phone_number = Phone (payload .recipient .phone_number , payload .recipient .country_code )
104- printing = PrintType [ options . label_printing or "PDF" ] .value
104+ printing = PrintType . map ( payload . label_type or "PDF" ) .value
105105 option_ids = [
106106 (key , value ) for key , value in options if key in Service and key not in NON_OFFICIAL_SERVICES
107107 ]
@@ -111,7 +111,7 @@ def _shipment_request(payload: ShipmentRequest, settings: Settings) -> Serializa
111111 Version = "2.1" ,
112112 Language = settings .language ,
113113 GroupID = "" ,
114- RequestReference = "" ,
114+ RequestReference = payload . reference ,
115115 UserToken = settings .user_token ,
116116 ),
117117 body_content = CreateShipmentRequest (
@@ -128,9 +128,7 @@ def _shipment_request(payload: ShipmentRequest, settings: Settings) -> Serializa
128128 StreetDirection = None ,
129129 Suite = None ,
130130 Floor = None ,
131- StreetAddress2 = SF .concat_str (
132- payload .shipper .address_line2 , join = True
133- ),
131+ StreetAddress2 = SF .concat_str (payload .shipper .address_line2 , join = True ),
134132 StreetAddress3 = None ,
135133 City = payload .shipper .city or "" ,
136134 Province = payload .shipper .state_code or "" ,
@@ -144,8 +142,7 @@ def _shipment_request(payload: ShipmentRequest, settings: Settings) -> Serializa
144142 ),
145143 FaxNumber = None ,
146144 ),
147- TaxNumber = payload .shipper .federal_tax_id
148- or payload .shipper .state_tax_id ,
145+ TaxNumber = (payload .shipper .federal_tax_id or payload .shipper .state_tax_id ),
149146 ),
150147 ReceiverInformation = ReceiverInformation (
151148 Address = Address (
@@ -154,16 +151,12 @@ def _shipment_request(payload: ShipmentRequest, settings: Settings) -> Serializa
154151 Department = None ,
155152 StreetNumber = "" ,
156153 StreetSuffix = None ,
157- StreetName = SF .concat_str (
158- payload .recipient .address_line1 , join = True
159- ),
154+ StreetName = SF .concat_str (payload .recipient .address_line1 , join = True ),
160155 StreetType = None ,
161156 StreetDirection = None ,
162157 Suite = None ,
163158 Floor = None ,
164- StreetAddress2 = SF .concat_str (
165- payload .recipient .address_line2 , join = True
166- ),
159+ StreetAddress2 = SF .concat_str (payload .recipient .address_line2 , join = True ),
167160 StreetAddress3 = None ,
168161 City = payload .recipient .city or "" ,
169162 Province = payload .recipient .state_code or "" ,
@@ -177,9 +170,7 @@ def _shipment_request(payload: ShipmentRequest, settings: Settings) -> Serializa
177170 ),
178171 FaxNumber = None ,
179172 ),
180- TaxNumber = (
181- payload .recipient .federal_tax_id or payload .recipient .state_tax_id
182- ),
173+ TaxNumber = (payload .recipient .federal_tax_id or payload .recipient .state_tax_id ),
183174 ),
184175 FromOnLabelIndicator = None ,
185176 FromOnLabelInformation = None ,
@@ -304,7 +295,7 @@ def _shipment_request(payload: ShipmentRequest, settings: Settings) -> Serializa
304295 ),
305296 NotificationInformation = (
306297 NotificationInformation (
307- ConfirmationEmailAddress = options .notification_email or payload .recipient .email
298+ ConfirmationEmailAddress = ( options .notification_email or payload .recipient .email )
308299 )
309300 if options .notification_email is None else None
310301 ),
@@ -327,21 +318,16 @@ def _create_shipment(payload: ShipmentRequest, settings: Settings) -> Job:
327318 )
328319
329320
330- def _get_shipment_label (
331- create_response : str , payload : ShipmentRequest , settings : Settings
332- ) -> Job :
333- errors = parse_error_response (XP .to_xml (create_response ), settings )
334- valid = len (errors ) == 0
321+ def _get_shipment_label (create_response : str , payload : ShipmentRequest , settings : Settings ) -> Job :
322+ response = XP .to_xml (create_response )
323+ valid = len (parse_error_response (response , settings )) == 0
335324 shipment_pin = (
336- getattr (XP .find ("ShipmentPIN" , XP . to_xml ( create_response ) , PIN , first = True ), 'Value' , None )
325+ getattr (XP .find ("ShipmentPIN" , response , PIN , first = True ), 'Value' , None )
337326 if valid else None
338327 )
339- return Job (
340- id = "document" ,
341- data = (
342- get_shipping_documents_request (shipment_pin , payload , settings )
343- if valid
344- else None
345- ),
346- fallback = "" ,
328+ data = (
329+ get_shipping_documents_request (shipment_pin , payload , settings )
330+ if valid else None
347331 )
332+
333+ return Job (id = "document" , data = data , fallback = "" )
0 commit comments