Skip to content
Gallery
Taxaroo Documentation
Share
Explore
Stripe Documentation

icon picker
Thrive Cart Stripe Connection

Video documentation


Metadata

Each price needs to have the following metadata:
plan_name
description

Sister Plans

Thrive Cart cannot create tiered plans, so a “Sister” tiered plan should be created inside Stripe for every plan created by Thrive Cart.

Important Notes:

When editing the price on thrive cart. It does not actually edit it in stripe, it creates a new product. This means that a sister plan needs to be created even after editing a product on Thrive Cart.

Avoid duplicate sign ups

To avoid legacy users or existing beta users from signing up from our thrive cart page, we add the following script to a custom html block inside the Thrive Cart builder.

info
Note: Post migration, we can remove api call on legacy

image.png
<script>
document.addEventListener('DOMContentLoaded', function() {
const form = document.querySelector('.pure-form');
const emailInput = document.querySelector('#field-customer-email');
const submitButton = document.querySelector('.button');
// select data-widget-id="internal-core_panes"
const panes = document.querySelector('[data-widget-id="internal-core_panes"]');
const firstPane = panes.children[0];
const secondPane = panes.children[1];
submitButton.addEventListener('click', function(event) {
// make API call to legacy Taxaroo API
fetch('https://app.taxaroo.com/login', {
method: 'POST',
body: JSON.stringify({ email: emailInput.value, password: '' }),
headers: { 'Content-Type': 'application/json' },
})
.then(response => response.json())
.then(data => {
if (data?.pageErrors?.[0]?.msg === 'Incorrect password') { // if user exists
// if the API indicates the email is already in use, show an error message
firstPane.classList.add('checkout-pane-active');
secondPane.classList.remove('checkout-pane-active');
alert('This email is already in use. Please contact support@taxaroo.com for support.');
}
})
.catch(error => {
console.error('Error:', error);
});
// make API call to beta Taxaroo API
const betaAPIURL = 'https://3v3qd22r2u.us-east-1.awsapprunner.com/account/validEmail'; // prod
// const betaAPIURL = 'https://38vmkghmhd.us-east-1.awsapprunner.com'; // develop
fetch(betaAPIURL, {
method: 'POST',
body: JSON.stringify({ email: emailInput.value }),
headers: { 'Content-Type': 'application/json' },
})
.then(response => response.json())
.then(data => {
console.log('data:', data)
if (!data) { // if user exists
// if the API indicates the email is already in use, show an error message
firstPane.classList.add('checkout-pane-active');
secondPane.classList.remove('checkout-pane-active');
alert('This email is already in use. Please login at https://beta.taxaroo.com.');
}
})
.catch(error => {
console.error('Error:', error);
});
});
});
</script>


Expected behavior:
existing email.gif
Want to print your doc?
This is not the way.
Try clicking the ⋯ next to your doc name or using a keyboard shortcut (
CtrlP
) instead.