Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: cancelled subscriptions sync #3466

Merged
merged 3 commits into from
Oct 8, 2024
Merged

Conversation

leogermani
Copy link
Contributor

All Submissions:

Changes proposed in this Pull Request:

Fixes how Cancelled subscriptions are synced to the ESP.

It does tow things.

First, when we fetch the most recent cancelled subscription, we only consider subscriptions that have a at least one successful payment. So subscriptions that were never active are disregarded.

Second, it does not check if the current order is active to add the "Last payment" info. Even for cancelled subscriptions, we want to add this info.

For reference, the check was added in this PR. At that time, get_last_order could return a failed order. We no longer have this issue and this PR makes sure we get subscriptions with at least one successful order.

How to test the changes in this Pull Request:

  1. Make a one time donation
  2. Confirm sync works fine with the one time donation info
  3. Make a recurring donation using this test card: 4000000000000341
  4. Confirm that the synced contact still have the one time donation info (on trunk, you will see data from the failing subscription)
  5. Now make a susccesful subscription and confirm the data is synced
  6. Cancel the subscription and confirm the "ex-donor" info includes the "last payment" data

Other information:

  • Have you added an explanation of what your changes do and why you'd like us to include them?
  • Have you written new tests for your changes, as applicable?
  • Have you successfully ran tests with your changes locally?

@leogermani leogermani added the [Status] Needs Review The issue or pull request needs to be reviewed label Oct 8, 2024
@leogermani leogermani self-assigned this Oct 8, 2024
@leogermani leogermani requested a review from a team as a code owner October 8, 2024 15:21
@github-actions github-actions bot added [Status] Approved The pull request has been reviewed and is ready to merge and removed [Status] Needs Review The issue or pull request needs to be reviewed labels Oct 8, 2024
@dkoo dkoo merged commit 6cad50a into trunk Oct 8, 2024
7 checks passed
@dkoo dkoo deleted the fix/cancelled-subscriptions-sync branch October 8, 2024 18:05
dkoo added a commit that referenced this pull request Oct 8, 2024
* fix: cancelled subscriptions sync

* fix: sync dates with date + time

* test: update tests with new date format

---------

Co-authored-by: dkoo <[email protected]>
matticbot pushed a commit that referenced this pull request Oct 8, 2024
# [5.5.0-alpha.3](v5.5.0-alpha.2...v5.5.0-alpha.3) (2024-10-08)

### Bug Fixes

* cancelled subscriptions sync ([#3466](#3466)) ([b605a7f](b605a7f))
matticbot pushed a commit that referenced this pull request Oct 8, 2024
# [5.5.0](v5.4.1...v5.5.0) (2024-10-08)

### Bug Fixes

* cancelled subscriptions sync ([#3466](#3466)) ([b605a7f](b605a7f))
* change the current product criteria for sync ([#3416](#3416)) ([28a84bc](28a84bc))
* **esp-meta:** handle state of the 'Woo Team' meta ([#3352](#3352)) ([ba5ea1e](ba5ea1e))
* **esp-sync:** sync Connected Account field ([#3414](#3414)) ([61c02bc](61c02bc))
* **esp-wc-metadata:** last payment date & amount handling ([#3363](#3363)) ([d1abbfe](d1abbfe))
* **guest-author:** enqueue the guest author admin script selectively ([0bf37af](0bf37af))
* hide My Account links if not relevant ([#3394](#3394)) ([0d039d8](0d039d8))
* make email template fetching deterministic ([#3341](#3341)) ([ace91aa](ace91aa))
* **phpcs:** specify path in custom ruleset ref ([#3384](#3384)) ([b143e74](b143e74))
* prevent PHP notice while checking my-account page ([#3435](#3435)) ([146a26f](146a26f))
* **ras-sync:** deprecate redundant Signup_Page meta field ([#3439](#3439)) ([61d6de8](61d6de8))
* **reader-registration-block:** fix initial newsletter checkbox state ([1890efe](1890efe))
* replace `newspack_image_credits_placeholder` default value ([#3433](#3433)) ([c754fc2](c754fc2))
* **sync:** method name for `membership_saved` handler ([#3399](#3399)) ([2c0bf26](2c0bf26))
* **sync:** place esp sync admin features behind a constant ([#3438](#3438)) ([20a0970](20a0970))
* **sync:** remove localized number format ([#3434](#3434)) ([2243a5d](2243a5d))
* wizards - update type check conditional for `custom_logo` ([#3442](#3442)) ([125f756](125f756))
* woocommerce connection tests ([#3372](#3372)) ([5cea128](5cea128))
* **woocommerce-connection:** handle explicit UTM meta fields meta ([#3371](#3371)) ([bf9e997](bf9e997))

### Features

* add a new action to when a ras setting is updated ([#3357](#3357)) ([35d3492](35d3492))
* **esp-sync:** sync membership data regardless of subscription ([#3353](#3353)) ([9f7d1de](9f7d1de))
* **ga4:** detect gate interaction blocks ([#3408](#3408)) ([e14913c](e14913c))
* **ga:** disable tracking for editors regardless of RA status ([81323c3](81323c3))
* media kit page handling ([#3358](#3358)) ([4454850](4454850))
* **memberships:** add memberships-related body classes ([b56b9d8](b56b9d8))
* **ras:** esp sync tools ([#3359](#3359)) ([d7dd754](d7dd754))
* **ras:** helper method for ESP master list ([#3355](#3355)) ([ec56d5b](ec56d5b))
* **ras:** sync class ([#3362](#3362)) ([88acbee](88acbee))
* **ras:** unify ESP connector strategy for data events ([#3360](#3360)) ([7080864](7080864))
* **reader-activation:** ESP-related tweaks ([#3381](#3381)) ([ac68b67](ac68b67))
* remove Woo Membersip sync fields ([#3411](#3411)) ([28052e8](28052e8))
* **sync:** add ESP sync notice to RAS wizard ([#3400](#3400)) ([f9acd56](f9acd56))
matticbot pushed a commit that referenced this pull request Oct 14, 2024
# [5.6.0-alpha.1](v5.5.1...v5.6.0-alpha.1) (2024-10-14)

### Bug Fixes

* cancelled subscriptions sync ([#3466](#3466)) ([6cad50a](6cad50a))
* **woocommerce:** update how order meta are updated ([#2711](#2711)) ([ae75548](ae75548))

### Features

* **metering:** dispatch RAS activity on content restriction ([#3437](#3437)) ([4e1c262](4e1c262))
@matticbot
Copy link
Contributor

🎉 This PR is included in version 5.6.0-alpha.1 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

matticbot pushed a commit that referenced this pull request Oct 28, 2024
# [5.6.0](v5.5.2...v5.6.0) (2024-10-28)

### Bug Fixes

* cancelled subscriptions sync ([#3466](#3466)) ([6cad50a](6cad50a))
* **woocommerce:** update how order meta are updated ([#2711](#2711)) ([ae75548](ae75548))

### Features

* add user name to woocommerce data events ([#3473](#3473)) ([2b57d27](2b57d27))
* command to initialize cron job to slowly backfill CAP term data ([#3425](#3425)) ([0b0d79a](0b0d79a))
* **metering:** dispatch RAS activity on content restriction ([#3437](#3437)) ([4e1c262](4e1c262))
@matticbot
Copy link
Contributor

🎉 This PR is included in version 5.6.0 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
released on @alpha released [Status] Approved The pull request has been reviewed and is ready to merge
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants