• Resolved bogdanarizancu

    (@bogdanarizancu)


    Hi, we are running a recurring subscription based news site, and we are currently accepting SEPA payments. One scenario we would like to modify is:

    1. A customer purchases a subscription using SEPA payments, we made it so the subscription is immediately active.
    2. The customer cancels their subscription shortly after, but the payment in on the way.
    3. The subscription status is immediately set to ‘cancelled’, and the customer is not able to access paid content anymore.

    The desired outcome would be the subscription status to be set to ‘pending-cancel’ instead of ‘cancelled’, so that the customer would still have access to paid content, since we are assuming the payment will be completed a few days later. For this we need the SEPA payment method to support ‘subscription_cancellation’.

Viewing 9 replies - 1 through 9 (of 9 total)
  • Hello,

    May I ask how are you managing the subscriptions, is this made via plugin?

    To take a better look, could you please share a copy of your site’s System Status? You can find it via WooCommerce > Status. Select “Get system report” and then “Copy for support”. 

    Let us know, thanks.

    This is happening with the WooCommerce Subscriptions plugin.

    It seems like the Stripe plugin supports the subscription cancellation, but only for the credit card method thus far. The SEPA / direct debit method does not seem to use the trait for subscriptions.

    https://github.com/woocommerce/woocommerce-gateway-stripe/search?q=subscription_cancellation

    Wondering whether you would just need to add the trait to the direct debit class in the Stripe plugin?

    • This reply was modified 2 years, 5 months ago by sun. Reason: Added technical details
    Thread Starter bogdanarizancu

    (@bogdanarizancu)

    Please find the System Status below:

    ### WordPress Environment ###

    WordPress address (URL): https://service.bnn.de
    Site address (URL): https://service.bnn.de
    WC Version: 5.8.0
    REST API Version: ✔ 5.8.0
    WC Blocks Version: ✔ 5.9.1
    Action Scheduler Version: ✔ 3.3.0
    WC Admin Version: ✔ 2.7.2
    Log Directory Writable: ✔
    WP Version: ❌ 5.8.1 – There is a newer version of WordPress available (5.9)
    WP Multisite: –
    WP Memory Limit: 1 GB
    WP Debug Mode: –
    WP Cron: –
    Language: de_DE_formal
    External object cache: –

    ### Server Environment ###

    Server Info: Apache
    PHP Version: 7.4.27
    PHP Post Max Size: 512 MB
    PHP Time Limit: 300
    PHP Max Input Vars: 10000
    cURL Version: 7.68.0
    OpenSSL/1.1.1f

    SUHOSIN Installed: –
    MySQL Version: 5.7.37
    Max Upload Size: 512 MB
    Default Timezone is UTC: ✔
    fsockopen/cURL: ✔
    SoapClient: ✔
    DOMDocument: ✔
    GZip: ✔
    Multibyte String: ✔
    Remote Post: ✔
    Remote Get: ✔

    ### Database ###

    WC Database Version: 5.6.0
    WC Database Prefix: wp_
    Total Database Size: 1071.20MB
    Database Data Size: 648.00MB
    Database Index Size: 423.20MB
    wp_woocommerce_sessions: Data: 2.06MB + Index: 0.06MB + Engine InnoDB
    wp_woocommerce_api_keys: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
    wp_woocommerce_attribute_taxonomies: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
    wp_woocommerce_downloadable_product_permissions: Data: 0.02MB + Index: 0.06MB + Engine InnoDB
    wp_woocommerce_order_items: Data: 3.52MB + Index: 1.52MB + Engine InnoDB
    wp_woocommerce_order_itemmeta: Data: 31.56MB + Index: 21.06MB + Engine InnoDB
    wp_woocommerce_tax_rates: Data: 0.02MB + Index: 0.06MB + Engine InnoDB
    wp_woocommerce_tax_rate_locations: Data: 0.02MB + Index: 0.05MB + Engine InnoDB
    wp_woocommerce_shipping_zones: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
    wp_woocommerce_shipping_zone_locations: Data: 0.02MB + Index: 0.05MB + Engine InnoDB
    wp_woocommerce_shipping_zone_methods: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
    wp_woocommerce_payment_tokens: Data: 0.06MB + Index: 0.02MB + Engine InnoDB
    wp_woocommerce_payment_tokenmeta: Data: 0.09MB + Index: 0.09MB + Engine InnoDB
    wp_woocommerce_log: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
    wp_actionscheduler_actions: Data: 6.06MB + Index: 8.31MB + Engine InnoDB
    wp_actionscheduler_claims: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
    wp_actionscheduler_groups: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
    wp_actionscheduler_logs: Data: 4.52MB + Index: 3.03MB + Engine InnoDB
    wp_commentmeta: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
    wp_comments: Data: 11.52MB + Index: 10.09MB + Engine InnoDB
    wp_email_customizer_plus_templates: Data: 1.52MB + Index: 0.00MB + Engine InnoDB
    wp_gf_addon_feed: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
    wp_gf_draft_submissions: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
    wp_gf_entry: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
    wp_gf_entry_meta: Data: 0.02MB + Index: 0.05MB + Engine InnoDB
    wp_gf_entry_notes: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
    wp_gf_form: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
    wp_gf_form_meta: Data: 4.52MB + Index: 0.00MB + Engine InnoDB
    wp_gf_form_revisions: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
    wp_gf_form_view: Data: 1.52MB + Index: 0.36MB + Engine InnoDB
    wp_gf_rest_api_keys: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
    wp_links: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
    wp_mailchimp_carts: Data: 0.05MB + Index: 0.00MB + Engine InnoDB
    wp_mailchimp_jobs: Data: 0.09MB + Index: 0.00MB + Engine InnoDB
    wp_options: Data: 20.41MB + Index: 0.27MB + Engine InnoDB
    wp_postexpirator_debug: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
    wp_postmeta: Data: 110.64MB + Index: 119.78MB + Engine InnoDB
    wp_posts: Data: 182.58MB + Index: 16.61MB + Engine InnoDB
    wp_realmedialibrary: Data: 0.02MB + Index: 0.05MB + Engine InnoDB
    wp_realmedialibrary_debug: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
    wp_realmedialibrary_meta: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
    wp_realmedialibrary_order: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
    wp_realmedialibrary_posts: Data: 0.05MB + Index: 0.03MB + Engine InnoDB
    wp_realmedialibrary_resetnames: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
    wp_realmedialibrary_tmp: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
    wp_termmeta: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
    wp_terms: Data: 0.30MB + Index: 0.28MB + Engine InnoDB
    wp_term_relationships: Data: 0.11MB + Index: 0.06MB + Engine InnoDB
    wp_term_taxonomy: Data: 0.27MB + Index: 0.28MB + Engine InnoDB
    wp_usermeta: Data: 221.75MB + Index: 214.02MB + Engine InnoDB
    wp_users: Data: 7.52MB + Index: 7.55MB + Engine InnoDB
    wp_wcs_payment_retries: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
    wp_wc_admin_notes: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
    wp_wc_admin_note_actions: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
    wp_wc_category_lookup: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
    wp_wc_customer_lookup: Data: 0.47MB + Index: 0.28MB + Engine InnoDB
    wp_wc_cvo_cache: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
    wp_wc_download_log: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
    wp_wc_order_coupon_lookup: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
    wp_wc_order_product_lookup: Data: 0.50MB + Index: 0.48MB + Engine InnoDB
    wp_wc_order_stats: Data: 0.44MB + Index: 0.41MB + Engine InnoDB
    wp_wc_order_tax_lookup: Data: 0.16MB + Index: 0.16MB + Engine InnoDB
    wp_wc_product_meta_lookup: Data: 0.02MB + Index: 0.09MB + Engine InnoDB
    wp_wc_reserved_stock: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
    wp_wc_tax_rate_classes: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
    wp_wc_webhooks: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
    wp_woocommerce_exported_csv_items: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
    wp_wpmelon_advbedit_temp: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
    wp_yoast_indexable: Data: 33.56MB + Index: 16.58MB + Engine InnoDB
    wp_yoast_indexable_hierarchy: Data: 0.36MB + Index: 0.42MB + Engine InnoDB
    wp_yoast_migrations: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
    wp_yoast_primary_term: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
    wp_yoast_prominent_words: Data: 0.08MB + Index: 0.16MB + Engine InnoDB
    wp_yoast_seo_links: Data: 0.42MB + Index: 0.27MB + Engine InnoDB
    wp_yoast_seo_meta: Data: 0.41MB + Index: 0.00MB + Engine InnoDB

    ### Post Type Counts ###

    attachment: 502
    nav_menu_item: 6
    notification: 22
    oembed_cache: 15
    page: 433
    placement: 1
    post: 4
    product: 55
    revision: 13560
    saswp: 1
    shop_coupon: 53
    shop_order: 11036
    shop_order_refund: 76
    shop_subscription: 22149
    wp_block: 48
    wprss_feed: 3

    ### Security ###

    Secure connection (HTTPS): ✔
    Hide errors from visitors: ✔

    ### Active Plugins (47) ###

    Gravity Perks: by Gravity Wiz – 2.2.7
    Gravity Forms: by Gravity Forms – 2.5.12
    Advanced Custom Fields: Restrict Color Picker Options: by Vital – 1.3.1
    Advanced Custom Fields PRO: by Delicious Brains – 5.10.2
    Card Grid: by netzstrategen – 1.0.0
    CoCo | netzstrategen cookie consent and cookie notice plugin: by netzstrategen – 1.2.0
    Core Standards: by netzstrategen – 2.3.0
    Custom: by Daniel F. Kudwien (sun) – 1.0.0
    Disable Emojis (GDPR friendly): by Ryan Hellyer – 1.7.3
    Email Verification for WooCommerce Pro: by WPFactory – 2.2.1
    Enable Media Replace: by ShortPixel – 3.6.0
    Envato Market: by Envato – 2.0.6
    Gravity Forms – Uploads as Attachments: by Elegant Modules – 1.3.0
    Gravity Forms All Fields Template: by Gravity Wiz – 0.9.8
    GP Disable Entry Creation: by Gravity Wiz
    Richard Wawrzyniak – 2.0

    GP Limit Dates: by Gravity Wiz – 1.1.6
    Gravity Forms Event Tracking: by Ronald Huereca – 2.4.10
    Gravity Forms IBAN: by Admium and Jeroen Schmit
    Slim & Dapper – 1.0

    Gravity Forms Mailchimp Add-On: by Gravity Forms – 5.0
    GP Conditional Logic Dates: by Gravity Wiz – 1.1
    Language Fallback: by Bernhard Kau – 1.0.5
    Mailchimp for WooCommerce: by Mailchimp – 2.5.3
    Map Block for Google Maps: by WebFactory Ltd – 1.32
    Optimus: by KeyCDN – 1.6.1
    Post Expirator: by PublishPress – 2.6.0
    Post Snippets: by Postsnippets – 3.1.3
    Publishing Importer: by Daniel F. Kudwien (sun) – 1.3.2
    Real Media Library: by devowl.io – 4.16.1
    Schema & Structured Data for WP & AMP: by Magazine3 – 1.9.85
    Shop Analytics: by netzstrategen – 1.11.5
    Timber: by Jared Novack + Upstatement – 1.19.0
    Two Factor Authentication (Premium): by David Anderson
    original plugin by Oskar Hane and enhanced by Dee Nutbourne – 1.10.4

    User Role Editor: by Vladimir Garagulya – 4.60.2
    Varnish Cache: by netzstrategen – 1.0.0
    WooCommerce Catalog Visibility Options: by Lucas Stark – 3.2.17
    WooCommerce Email Customizer Plus: by Flycart – 1.2.4
    Woocoomerce Extra Price Fields: by Webholics – 2.0
    WooCommerce Stripe Gateway: by WooCommerce – 5.6.2
    WooCommerce Permalink Structure: by Daniel F. Kudwien (sun) – 1.1.3
    WooCommerce Product Archive Customiser: by jameskoster – 1.0.5
    WooCommerce Sequential Order Numbers Pro: by SkyVerge – 1.18.0 (update to version 1.18.1 is available)
    WooCommerce Sequential Subscription Numbers: by SkyVerge / netzstrategen – 1.17.0
    WooCommerce Subscriptions: by WooCommerce – 3.1.6 (update to version 4.0.2 is available)
    WooCommerce: by Automattic – 5.8.0 (update to version 6.2.0 is available)
    Yoast SEO Premium: by Team Yoast – 17.3
    Yoast SEO: by Team Yoast – 17.3
    WP User Avatar: by ProfilePress – 2.2.11

    ### Inactive Plugins (1) ###

    PayPal Plus for WooCommerce: by Angell EYE – 1.2.8

    ### Must Use Plugins (6) ###

    bnn.de Proxy Request Port Handler: by netzstrategen – 1.0.0
    Disable external emails: by netzstrategen –
    Disable __trashed slug suffix: by netzstrategen – 1.0.0
    Ensure parent page options: by netzstrategen – 1.0.0
    MailChimp audience by environment: by netzstrategen – 1.0.0
    Notify customer service on customer email address change: by netzstrategen – 1.0.0

    ### Settings ###

    API Enabled: ✔
    Force SSL: –
    Currency: EUR (€)
    Currency Position: right_space
    Thousand Separator: .
    Decimal Separator: ,
    Number of Decimals: 2
    Taxonomies: Product Types: external (external)
    grouped (grouped)
    simple (simple)
    subscription (subscription)
    variable (variable)
    variables abonnement (variables-abonnement)

    Taxonomies: Product Visibility: exclude-from-catalog (exclude-from-catalog)
    exclude-from-search (exclude-from-search)
    featured (featured)
    outofstock (outofstock)
    rated-1 (rated-1)
    rated-2 (rated-2)
    rated-3 (rated-3)
    rated-4 (rated-4)
    rated-5 (rated-5)
    rated-5 (rated-5-2)

    Connected to WooCommerce.com: ✔

    ### WC Pages ###

    Shop base: #649847 – /abo
    Cart: ❌ Page not set
    Checkout: #610868 – /kasse
    My account: #593428 – /user
    Terms and conditions: #607701 – /agb-bnnplus

    ### Theme ###

    Name: BNN Shop
    Version: 1.0.0 (update to version 1.02 is available)
    Author URL:
    Child Theme: ❌ – If you are modifying WooCommerce on a parent theme that you did not build personally we recommend using a child theme. See: How to create a child theme
    WooCommerce Support: ✔

    ### Templates ###

    Archive Template: Your theme has a woocommerce.php file
    you will not be able to override the woocommerce/archive-product.php custom template since woocommerce.php has priority over archive-product.php. This is intended to prevent display issues.

    Overrides: shop/woocommerce/myaccount/dashboard.php
    shop/woocommerce/myaccount/form-edit-account.php
    shop/woocommerce/myaccount/form-login.php
    shop/woocommerce/myaccount/form-lost-password.php
    shop/woocommerce/myaccount/form-reset-password.php
    shop/woocommerce/myaccount/lost-password-confirmation.php
    shop/woocommerce/notices/error.php
    shop/woocommerce/notices/notice.php
    shop/woocommerce/notices/success.php

    ### Subscriptions ###

    WCS_DEBUG: ✔ No
    Subscriptions Mode: ✔ Live
    Subscriptions Live URL: https://service.bnn.de
    Subscriptions Template Theme Overrides: shop/woocommerce/myaccount/my-subscriptions.php
    Subscription Statuses: wc-active: 12290
    wc-expired: 125
    wc-pending-cancel: 81
    wc-pending: 131
    wc-on-hold: 69
    wc-cancelled: 9453

    WooCommerce Account Connected: ✔ Yes
    Active Product Key: ✔ Yes
    Custom Retry Rules: ✔ No
    Custom Retry Rule Class: ✔ No
    Custom Raw Retry Rule: ✔ No
    Custom Retry Rule: ✔ No
    Retries Migration Status: ✔ Completed
    Report Cache Enabled: ✔ Yes
    Cache Update Failures: ✔ 0 failure

    ### Store Setup ###

    Country / State: Germany

    ### Subscriptions by Payment Gateway ###

    PayPal Standard: wc-active: 624
    wc-cancelled: 931
    wc-expired: 69
    wc-on-hold: 12
    wc-pending: 131
    wc-pending-cancel: 51

    Stripe: wc-active: 189
    wc-cancelled: 112
    wc-expired: 25
    wc-on-hold: 3
    wc-pending-cancel: 14

    Stripe SEPA Direct Debit: wc-active: 255
    wc-cancelled: 275
    wc-expired: 29
    wc-on-hold: 54
    wc-pending-cancel: 16

    ### Payment Gateway Support ###

    PayPal Standard: subscriptions
    gateway_scheduled_payments
    subscription_payment_method_change_customer
    subscription_cancellation
    subscription_suspension
    subscription_reactivation
    products
    refunds

    PayPal Reference Transactions Enabled: ❌ No
    Stripe: products
    refunds
    tokenization
    add_payment_method
    pre-orders
    subscriptions
    subscription_cancellation
    subscription_suspension
    subscription_reactivation
    subscription_amount_changes
    subscription_date_changes
    subscription_payment_method_change
    subscription_payment_method_change_customer
    subscription_payment_method_change_admin
    multiple_subscriptions

    Stripe SEPA Direct Debit: products
    refunds
    tokenization
    add_payment_method
    pre-orders
    subscriptions
    subscription_cancellation
    subscription_suspension
    subscription_reactivation
    subscription_amount_changes
    subscription_date_changes
    subscription_payment_method_change
    subscription_payment_method_change_customer
    subscription_payment_method_change_admin
    multiple_subscriptions

    ### Action Scheduler ###

    Complete: 15,399
    Oldest: 2022-01-18 07:55:01 +0100
    Newest: 2022-02-16 08:56:32 +0100

    Failed: 1
    Oldest: 2021-03-29 08:39:10 +0200
    Newest: 2021-03-29 08:39:10 +0200

    Pending: 1,516
    Oldest: 2022-02-16 08:59:49 +0100
    Newest: 2023-02-09 18:03:24 +0100

    ### Status report information ###

    Generated at: 2022-02-16 08:59:54 +01:00

    Thread Starter bogdanarizancu

    (@bogdanarizancu)

    Plugin Support Paul J a11n

    (@pauljacobson)

    Hello @bogdanarizancu

    `Hi, we are running a recurring subscription based news site, and we are currently accepting SEPA payments. One scenario we would like to modify is:

    A customer purchases a subscription using SEPA payments, we made it so the subscription is immediately active.
    The customer cancels their subscription shortly after, but the payment in on the way.
    The subscription status is immediately set to ‘cancelled’, and the customer is not able to access paid content anymore.

    The desired outcome would be the subscription status to be set to ‘pending-cancel’ instead of ‘cancelled’, so that the customer would still have access to paid content, since we are assuming the payment will be completed a few days later. For this we need the SEPA payment method to support ‘subscription_cancellation’.`

    Thank you for sharing your System Status Report. I noticed that your site is running outdated versions of WooCommerce and WooCommerce Subscriptions, so you may want to update your site.

    Regarding the status of the subscription when a customer cancels the subscription, the subscription status should actually be set to Pending Cancellation by default. Take a look here: https://woocommerce.com/document/subscriptions/statuses/#section-5

    Your question implies that you’ve made some customizations to how subscriptions are handled. Could those modifications have changed the default behavior?

    Thread Starter bogdanarizancu

    (@bogdanarizancu)

    Thank you for your reply, we will update and get back with the result.

    Sounds like a plan. Let us know how it goes.

    The problem still exists after updating all plugins to the latest versions.

    A subscription paid with SEPA / direct debit is immediately moved to cancelled instead of pending-cancellation.

    Plugin Support nathvi V. a11n

    (@nathvi)

    Hello @tha_sun and @bogdanarizancu

    Thanks for the update.

    Can you please open a ticket using our ticket system here to investigate this further?

    https://woocommerce.com/my-account/create-a-ticket/

    Please include a link to this thread so we can know what steps where taken.

Viewing 9 replies - 1 through 9 (of 9 total)
  • The topic ‘Subscriptions with SEPA payments’ is closed to new replies.