@@ -84,6 +84,14 @@ private function updateQuote(Quote $quote, array $details)
84
84
85
85
$ quote ->collectTotals ();
86
86
87
+ /**
88
+ * Unset shipping assignment to prevent from saving / applying outdated data
89
+ * @see \Magento\Quote\Model\QuoteRepository\SaveHandler::processShippingAssignment
90
+ */
91
+ if ($ quote ->getExtensionAttributes ()) {
92
+ $ quote ->getExtensionAttributes ()->setShippingAssignments (null );
93
+ }
94
+
87
95
$ this ->quoteRepository ->save ($ quote );
88
96
}
89
97
@@ -122,6 +130,11 @@ private function updateShippingAddress(Quote $quote, array $details)
122
130
$ shippingAddress ->setCollectShippingRates (true );
123
131
124
132
$ this ->updateAddressData ($ shippingAddress , $ details ['shippingAddress ' ]);
133
+
134
+ // PayPal's address supposes not saving against customer account
135
+ $ shippingAddress ->setSaveInAddressBook (false );
136
+ $ shippingAddress ->setSameAsBilling (false );
137
+ $ shippingAddress ->unsCustomerAddressId ();
125
138
}
126
139
127
140
/**
@@ -144,6 +157,11 @@ private function updateBillingAddress(Quote $quote, array $details)
144
157
$ billingAddress ->setFirstname ($ details ['firstName ' ]);
145
158
$ billingAddress ->setLastname ($ details ['lastName ' ]);
146
159
$ billingAddress ->setEmail ($ details ['email ' ]);
160
+
161
+ // PayPal's address supposes not saving against customer account
162
+ $ billingAddress ->setSaveInAddressBook (false );
163
+ $ billingAddress ->setSameAsBilling (false );
164
+ $ billingAddress ->unsCustomerAddressId ();
147
165
}
148
166
149
167
/**
0 commit comments