Skip to content

Commit 86c6763

Browse files
committed
Update changelog
1 parent 03094be commit 86c6763

4 files changed

Lines changed: 47 additions & 47 deletions

File tree

changelog.txt

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,32 +1,32 @@
11
*** Changelog ***
22

33
= 4.1.0 - XXXX-XX-XX =
4-
* Enhancement - Vault Management Component #4421
5-
* Enhancement - PUI - Extract + Block Checkout #4405
6-
* Enhancement - OXXO - Extract + Block Checkout #4381
7-
* Enhancement - Show account or card last digits in payment method #4427
8-
* Enhancement - Disable legacy WC PayPal Standard gateway on PPCP merchant connect #4463
9-
* Fix - Vaulting subscription - Unsuccessfully payment with acdc from block checkout #4437
10-
* Fix - Free trial vaulting subscription - Unsuccessfully payment with acdc and PayPal #4439
11-
* Fix - PartnersEndpoint::seller_status() floods PayPal merchant-integrations endpoint with 403s #4430
4+
* Enhancement - New Vault Management Component for buyers with saved PayPal accounts to update funding instrument #4421
5+
* Enhancement - Pay upon Invoice support for Block Checkout #4405
6+
* Enhancement - OXXO support for Block Checkout #4381
7+
* Enhancement - Show PayPal account or last card digits in payment method on order confirmation page & emails #4427
8+
* Enhancement - Disable legacy "PayPal Standard" gateway when merchant account is connected to PayPal Payments #4463
9+
* Fix - Third-party plugin gift cards not calculated on PayPal payment modal #4422
1210
* Fix - Fix PayPal amount mismatch from inclusive-tax rounding #4425
11+
* Fix - Negative fee calculation may result in a mismatch PayPal between the WooCommerce order total and the total amount paid via PayPal #4409
12+
* Fix - Unsuccessful payment for vaulting subscription with ACDC from Block Checkout #4437
13+
* Fix - Unsuccessful payment for vaulting subscriptions with 100% discount coupons (CANNOT_BE_ZERO_OR_NEGATIVE) #4452
14+
* Fix - Unsuccessful payment for free trial vaulting subscription with acdc and PayPal #4439
1315
* Fix - Vaulted ACDC saved-card checkout stuck in "payment pending" #4431
14-
* Fix - Negative fee on manually created order influence on wrong total amount on PayPal side #4409
16+
* Fix - PartnersEndpoint::seller_status() floods PayPal merchant-integrations endpoint with 403s #4430
1517
* Fix - Avoid spamming OAuth requests when auth fails #4414
16-
* Fix - Gift cards ignored on paypal payment page #4422
1718
* Fix - Google Pay not rendered on variable product page #4433
18-
* Fix - Simplify manual client ID validation #4397
19+
* Fix - Simplify manual client ID validation to accommodate new Client ID format #4397
1920
* Fix - Mismatch line item not delivered to PayPal overview transaction page #4426
20-
* Fix - APM-S - Transaction link open paypal.com instead of sandbox.paypal.com #4418
21+
* Fix - APM transaction links open paypal.com instead of sandbox.paypal.com in Sandbox mode #4418
2122
* Fix - Coerce stored values in typed-bool getters and vault_enabled migration #4393
2223
* Fix - Fix type casting for customer unique ID in session MD5 hash #4333
23-
* Fix - Apple pay fails on single product page when no shipping option is available #4375
24-
* Fix - Settings notifications #4034
25-
* Fix - Add "Show logos of supported cards" setting #4380
26-
* Fix - Null phone_number->national_number check #4448
27-
* Fix - Vaulting subscriptions fail with 100% discount coupons (CANNOT_BE_ZERO_OR_NEGATIVE) #4452
28-
* Fix - Bug in continuation mode #4457
29-
* Fix - Vaulted card payments #4450
24+
* Fix - Apple Pay fails on single product page when no shipping option is available #4375
25+
* Fix - Settings notifications do not display on the PayPal Payments settings pages #4034
26+
* Fix - Add missing "Show logos of supported cards" setting in the ACDC options #4380
27+
* Fix - Phone number verification may fail #4448
28+
* Fix - Saved payment methods display in continuation mode #4457
29+
* Fix - Card payments with saved cards may fail in certain cases #4450
3030

3131
= 4.0.4 - 2026-05-19 =
3232
* Enhancement - WooCommerce Blueprints integration to import & export the PayPal Payments configuration #4363

readme.txt

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -162,32 +162,32 @@ If you encounter issues with the PayPal buttons not appearing after an update, p
162162
== Changelog ==
163163

164164
= 4.1.0 - XXXX-XX-XX =
165-
* Enhancement - Vault Management Component #4421
166-
* Enhancement - PUI - Extract + Block Checkout #4405
167-
* Enhancement - OXXO - Extract + Block Checkout #4381
168-
* Enhancement - Show account or card last digits in payment method #4427
169-
* Enhancement - Disable legacy WC PayPal Standard gateway on PPCP merchant connect #4463
170-
* Fix - Vaulting subscription - Unsuccessfully payment with acdc from block checkout #4437
171-
* Fix - Free trial vaulting subscription - Unsuccessfully payment with acdc and PayPal #4439
172-
* Fix - PartnersEndpoint::seller_status() floods PayPal merchant-integrations endpoint with 403s #4430
165+
* Enhancement - New Vault Management Component for buyers with saved PayPal accounts to update funding instrument #4421
166+
* Enhancement - Pay upon Invoice support for Block Checkout #4405
167+
* Enhancement - OXXO support for Block Checkout #4381
168+
* Enhancement - Show PayPal account or last card digits in payment method on order confirmation page & emails #4427
169+
* Enhancement - Disable legacy "PayPal Standard" gateway when merchant account is connected to PayPal Payments #4463
170+
* Fix - Third-party plugin gift cards not calculated on PayPal payment modal #4422
173171
* Fix - Fix PayPal amount mismatch from inclusive-tax rounding #4425
172+
* Fix - Negative fee calculation may result in a mismatch PayPal between the WooCommerce order total and the total amount paid via PayPal #4409
173+
* Fix - Unsuccessful payment for vaulting subscription with ACDC from Block Checkout #4437
174+
* Fix - Unsuccessful payment for vaulting subscriptions with 100% discount coupons (CANNOT_BE_ZERO_OR_NEGATIVE) #4452
175+
* Fix - Unsuccessful payment for free trial vaulting subscription with acdc and PayPal #4439
174176
* Fix - Vaulted ACDC saved-card checkout stuck in "payment pending" #4431
175-
* Fix - Negative fee on manually created order influence on wrong total amount on PayPal side #4409
177+
* Fix - PartnersEndpoint::seller_status() floods PayPal merchant-integrations endpoint with 403s #4430
176178
* Fix - Avoid spamming OAuth requests when auth fails #4414
177-
* Fix - Gift cards ignored on paypal payment page #4422
178179
* Fix - Google Pay not rendered on variable product page #4433
179-
* Fix - Simplify manual client ID validation #4397
180+
* Fix - Simplify manual client ID validation to accommodate new Client ID format #4397
180181
* Fix - Mismatch line item not delivered to PayPal overview transaction page #4426
181-
* Fix - APM-S - Transaction link open paypal.com instead of sandbox.paypal.com #4418
182+
* Fix - APM transaction links open paypal.com instead of sandbox.paypal.com in Sandbox mode #4418
182183
* Fix - Coerce stored values in typed-bool getters and vault_enabled migration #4393
183184
* Fix - Fix type casting for customer unique ID in session MD5 hash #4333
184-
* Fix - Apple pay fails on single product page when no shipping option is available #4375
185-
* Fix - Settings notifications #4034
186-
* Fix - Add "Show logos of supported cards" setting #4380
187-
* Fix - Null phone_number->national_number check #4448
188-
* Fix - Vaulting subscriptions fail with 100% discount coupons (CANNOT_BE_ZERO_OR_NEGATIVE) #4452
189-
* Fix - Bug in continuation mode #4457
190-
* Fix - Vaulted card payments #4450
185+
* Fix - Apple Pay fails on single product page when no shipping option is available #4375
186+
* Fix - Settings notifications do not display on the PayPal Payments settings pages #4034
187+
* Fix - Add missing "Show logos of supported cards" setting in the ACDC options #4380
188+
* Fix - Phone number verification may fail #4448
189+
* Fix - Saved payment methods display in continuation mode #4457
190+
* Fix - Card payments with saved cards may fail in certain cases #4450
191191

192192
= 4.0.4 - 2026-05-19 =
193193
* Enhancement - WooCommerce Blueprints integration to import & export the PayPal Payments configuration #4363

tests/PHPUnit/Axo/Gateway/AxoGatewayTest.php

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -128,12 +128,12 @@ public function test_returns_failure_when_custom_id_does_not_match_wc_order_id()
128128
$wc_order->shouldReceive( 'get_currency' )->andReturn( 'USD' );
129129

130130
$paypal_order = $this->create_completed_paypal_order( '999', '100.00', 'USD' );
131-
$this->order_endpoint->shouldReceive( 'order' )->with( 'attacker-token' )->andReturn( $paypal_order );
131+
$this->order_endpoint->shouldReceive( 'order' )->with( 'token' )->andReturn( $paypal_order );
132132
$this->order_processor->shouldReceive( 'process_captured_and_authorized' )->never();
133133
$this->logger->shouldReceive( 'error' )->once();
134134

135135
// When
136-
$result = $this->sut->process_3ds_return_exposed( $wc_order, 'attacker-token' );
136+
$result = $this->sut->process_3ds_return_exposed( $wc_order, 'token' );
137137

138138
// Then
139139
$this->assertSame( 'failure', $result['result'] );
@@ -261,7 +261,7 @@ public function test_logs_rejection_details_when_validation_fails(): void
261261
$wc_order->shouldReceive( 'get_currency' )->andReturn( 'USD' );
262262

263263
$paypal_order = $this->create_completed_paypal_order( '999', '100.00', 'USD' );
264-
$this->order_endpoint->shouldReceive( 'order' )->with( 'attacker-token' )->andReturn( $paypal_order );
264+
$this->order_endpoint->shouldReceive( 'order' )->with( 'token' )->andReturn( $paypal_order );
265265
$this->order_processor->shouldReceive( 'process_captured_and_authorized' )->never();
266266

267267
$this->logger
@@ -272,13 +272,13 @@ public function test_logs_rejection_details_when_validation_fails(): void
272272
static function ( string $message ): bool {
273273
return strpos( $message, '999' ) !== false
274274
&& strpos( $message, '1' ) !== false
275-
&& strpos( $message, 'attacker-token' ) !== false;
275+
&& strpos( $message, 'token' ) !== false;
276276
}
277277
)
278278
);
279279

280280
// When
281-
$this->sut->process_3ds_return_exposed( $wc_order, 'attacker-token' );
281+
$this->sut->process_3ds_return_exposed( $wc_order, 'token' );
282282

283283
// Then — Mockery verifies logger->error() call in tearDown(); count it as an assertion
284284
$this->addToAssertionCount( 1 );

tests/PHPUnit/Button/Endpoint/ApproveOrderEndpointTest.php

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -136,8 +136,8 @@ public function test_mismatched_session_id_raises_exception_and_blocks_state_cha
136136

137137
$this->request_data->shouldReceive( 'read_request' )
138138
->with( ApproveOrderEndpoint::nonce() )
139-
->andReturn( array( 'order_id' => 'ATTACKER-ORDER', 'funding_source' => null, 'should_create_wc_order' => false ) );
140-
$this->api_endpoint->shouldReceive( 'order' )->with( 'ATTACKER-ORDER' )->andReturn( $order );
139+
->andReturn( array( 'order_id' => 'ORDER', 'funding_source' => null, 'should_create_wc_order' => false ) );
140+
$this->api_endpoint->shouldReceive( 'order' )->with( 'ORDER' )->andReturn( $order );
141141
$this->session_handler->shouldReceive( 'replace_order' )->never();
142142
$this->gateway->shouldReceive( 'process_payment' )->never();
143143
$this->logger->shouldReceive( 'error' )->once();
@@ -171,8 +171,8 @@ public function test_mismatched_session_response_reveals_no_order_ownership(): v
171171

172172
$this->request_data->shouldReceive( 'read_request' )
173173
->with( ApproveOrderEndpoint::nonce() )
174-
->andReturn( array( 'order_id' => 'ATTACKER-ORDER', 'funding_source' => null, 'should_create_wc_order' => false ) );
175-
$this->api_endpoint->shouldReceive( 'order' )->with( 'ATTACKER-ORDER' )->andReturn( $order );
174+
->andReturn( array( 'order_id' => 'ORDER', 'funding_source' => null, 'should_create_wc_order' => false ) );
175+
$this->api_endpoint->shouldReceive( 'order' )->with( 'ORDER' )->andReturn( $order );
176176
$this->logger->shouldReceive( 'error' )->once();
177177

178178
$wc_session = Mockery::mock( \WC_Session_Handler::class );

0 commit comments

Comments
 (0)