Hi,
I use SoftR with an Airtable base.
I give users the opportunity to create a product.
I would like to be able to give the possibility of adding information to the product thanks to a paid service via Stripe.
Can I carry out the following sequence: consultation of my product → click on button to add additional fields → payment for the service via Stripe → following successful payment on Stripe, redirection to the product and addition of additional fields.
To my knowledge, once I am on Stripe, I’m losing the reference to my product and I therefore cannot present it after payment.
If this sequence is not possible, is there another way?
Thanks
I would try the following.
Quickly numbering your steps to make it easy to follow along.
- consultation of my product
- click on button to add additional fields
- payment for the service via Stripe
- following successful payment on Stripe, redirection to the product and addition of additional fields.
Sounds like you’ll need to link the user entered data to the product. This can be a one to many relationship. eg a “Product” table, a “Custom Product” table and a link between them. There can be 1 product to many customer configurations. To get this to work right in step 4, you can also add lookup fields to your Custom Product table to show the product properly with the additional fields since you cannot connect data to 2 tables in one item details block.
So…
A. During step 1 - 2, when the user is selecting or entering the data, enter that into your Custom Product table along with a hidden field and the user_id or customer id. (If you do B.b. below, then also add a hidden field in your form to a single select database field named “status”. Set that value to a something like “pending”.)
B. User continues to step 3, (I have not used Stripe, but I am sure there is a way to know that a user has paid for something by storing the data in a payments table with a user_id)
a. A simple approach which might work is to create a formula field called hasPaid in your Custom Product table which looks up the paid state from Stripe payment table via the user_id and then changes the value to hasPaid=True.
b. If that doesn’t work, you can create an Automation to then check the Stripe status and change the “status” value from “pending” to “paid”.
C. Then in step 4, on the finished product details page you are simply checking the status of the field status or hasPaid (whichever approach you choose), then rendering the product via the Custom Product table with all the relevant lookup fields being displayed from the Product table > Custom Product link.