The site that I'm working on right now, has a ticket booking system which is custom coded with contact form 7. The way it works, when some one comes into the site and request for a quote on the ticket, leads go to the database. The admin should be able to send a link to the customer with a link to stripe which they can use to pay. Is there a way we can do this with Woocommerce and Stripe plugin? or what is the best way to approach it?



Woocommerce would be a bit restrictive for this scenario. WC sells premade products, so the workflow would be: visitor requests a quote and goes to database as usual; then admin determines the price, sets up a WC product with the correct name and price, then emails the visitor a link to the product page. Finally, the visitor would open the link, add it to cart, and go through the checkout process.

I think you would have a much easier time using a form add-on that allows you to process payments through a form. Workflow would be: visitor requests a quote through form #1 and goes to database. Admin determines the price, copies and pastes form #2's URL into an email to the visitor and just changes the price portion of the URL to whatever it needs to be. Finally, the visitor would open the link which would immediately display a one-step form to fill out with payment details.

All this requires is to create a dynamically populated field on the payment form so the form knows how much to charge. This setup maximizes the chance of the visitor actually paying because it's a simple one-step deal once they receive their price, as opposed to a multi-step checkout process where they may have to create an account and enter extra details that aren't necessarily required.

It looks like it is possible to create a dynamically populated field in Contact Form 7, and to process Stripe with an add-on. I've personally only used Gravity Forms for this type of scenario and I know that both work there as well, in case you have the option to use a different form plugin.

Gravity Forms dynamically populated fields: https://docs.gravityforms.com/allow-field-to-be-populated-dynamically/

Contact Form 7 dynamically populated fields: https://wordpress.org/plugins/contact-form-7-dynamic-text-extension/

  • Wow! That was a great advice. Thanks @WebElaine. Is there a way we can avoid that form #2 step by sending the customer a link which takes them to stripe's official site (just like we do payments in Paypal) and make the payment? I guess that would be even simpler in this case, if it is possible. What do you think? – Mithun Nath Dec 5 '17 at 19:11
  • I don't believe Stripe acts in that way. It is purely a merchant gateway, meaning that they process your transactions but only in the background, so your visitor never leaves your website. PayPal does offer this type of option, in case you decide to switch merchants - they can do both merchant gateway transactions where the visitor never leaves your site, they just enter payment info directly into your form; and also PayPal-site transactions where the visitor fills a form on your site and then pays on PayPal's site. – WebElaine Dec 6 '17 at 15:51
  • Hi, we just figured out an easy way to do it with Woo-commerce plugin and stripe add-on. Admin creates an order with user's credentials and create the order with send invoice option. That way user get an email from woo-commerce with a pay link which will take them to the stripe payment section. The only downside is that admin needs to create manual order every time to send a payment link. – Mithun Nath Dec 6 '17 at 16:26

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.