fsBuilds in Offloading WooCommerce Subscriptions and Checkout to (Video) (Video)
Transfer the complexity of payment Management, Subscriptions and Payment Management to
Job to be done: You want to utilize WooCommerce and WordPress as a CMS however, you would like to use a Merchant of Record to manage the payment process, subscriptions as well as subscription management.
This time, we're featuring a build by Topher DeRosia showing how you can easily use the javascript library with the webhooks of's in order to make subscriptions active when a purchase is made, or disable subscription access when a payment fails while still using WooCommerce as a CMS.
Resources
Interested in trying the build your own way? Here are all the resources used in the video to assist you on your route.
Add a Subscription to your Cart
PHP and Javascript is_purchasable() && ( ! is_user_logged_in() || 'no' === wcs_get_product_limitation( $product ) ) ) return; $user_id = get_current_user_id(); echo wp_kses_post( wc_get_stock_html( $product ) ); if ( $product->is_in_stock() ) : ?> var QueryString = function () // This function is anonymous, is executed immediately and // the return value is assigned to QueryString! var query_string = ; var query = window.location.search.substring(1); var vars = query.split("&"); for (var i=0;i<vars.length;i++) var pair = vars[i].split("="); // If first entry with this name if (typeof query_string[pair[0]] === "undefined") query_string[pair[0]] = decodeURIComponent(pair[1]); // If second entry with this name else if (typeof query_string[pair[0]] === "string") var arr = [ query_string[pair[0]],decodeURIComponent(pair[1]) ]; query_string[pair[0]] = arr; // If third or later entry with this name else query_string[pair[0]].push(decodeURIComponent(pair[1])); return query_string; (); jQuery( document ).ready(function() var s = ; if(QueryString.product) s = 'products' : [ 'path':QueryString.product, 'quantity':1 ] if(QueryString.email && QueryString.fname && QueryString.lname) s.paymentContact = ; s.paymentContact.email = QueryString.email; s.paymentContact.firstName = QueryString.fname; s.paymentContact.lastName = QueryString.lname; if(QueryString.coupon) s.coupon = QueryString.coupon; if (s) .builder.push(s); ); Subscribe Now With Expand
Subscription Creation through Webhook
PHP and Javascript Expand