# How Subscriptions Work

Mavenseed integrates with two different eCommerce vendors; Stripe, and PayPal (via Braintree currently). Each vendor is very different in how they support subscriptions, but we've worked to bridge the gaps where we can, with regards to varying feature sets.

### The Process

#### Select Plan

Your customer visits yoursite.mavenseed.com/subscribe and is presented with any  that you have created, and who's status is set to active.

![](/files/un8lvj6Sy8mb9SkU7Bvz)

#### Create Account

When your customer selects a plan, the page is reloaded, but this time with a form to create an account.

![](/files/GFgjgjO1ObVvWEvkYucg)

After your customer submits the form, a couple of different things happen:

**A customer is created in your site, and on Stripe. Why?**

* Stripe [requires](https://stripe.com/docs/billing/subscriptions/build-subscriptions?ui=elements#create-customer) this step be completed prior to payment
* Stripe is the default payment provider
* PayPal is an optional PRO plugin
* At this point in the process we don't know how the customer will pay
* a subscription is created with a status of pending

**A subscription is created in your site with a status of Pending.**

The subscription is only created on your site, not on Stripe. The actual subscription creation on Stripe (or PayPal) happens with the following screen (prompting for payment).

* Stripe [requires](https://stripe.com/docs/billing/subscriptions/build-subscriptions?ui=elements#create-subscription) this step to be completed prior to payment

{% hint style="info" %}
**Nerd Alert!**

The Create Account and Payment used to be in one form. But we found that, especially during times of peak traffic, for the form submission would take just a split second longer than it should to finish completing. Because of this delay, the webhook notification for the payment being received by Stripe would arrive before that process finishes.

We surmise this is why [Stripe advises](https://stripe.com/docs/billing/subscriptions/build-subscriptions) collecting payment on a 2nd step, after the subscription and customer are already created.
{% endhint %}

#### Pay for Subscription

After creating an account, the customer is presented with the payment screen. From here they can select PayPal (if you have purchased this PRO plugin), and/or supply a coupon code for the subscription.

![](/files/rhbzUm5hsL9vBXjhrtR5)

If your customer doesn't complete this step, then the subscription will show with a status of pending within your site.&#x20;


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.mavenseed.com/admin/subscriptions/how-subscriptions-work.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
