Stripe Mobile App Integration
Application Type
Mobile

Hi I plan to integrate Stripe into my mobile application. I am following the documentation here (https://stripe.com/docs/payments/save-and-reuse#add-elements-to-your-page) and I will need to include HTML/JS in my mobile application interface. Is this supported by outsystems?

mvp_badge
MVP

Hi Nur,


Have you considered to use one of the existing Forge components for integrating with Stripe like STRIPE - Strong Customer Authenticantion (SCA) forge component?


There's also demos (for Mobile as well) on how to use it:


You just need to search for Stripe on the Forge.


Hope it helps.


Regards,
João

The use case provided in STRIPE - Strong Customer Authenticantion (SCA) is insufficent as it only supports the Payment Intent API. We will need to make payment to the application users as well. 

mvp_badge
MVP

Ok, got it.

Answering your original question, then, you can include HTML in an OutSystems screen dragging to the screen the HTML Element widget:

For Javascript, you can see this step-by-step documentation with screenshots on how to use it in OutSystems.


Regards,
João

I am having issues loading the Js file from js.stripe.com. Is there any way of loading it directly as I tried importing it as a Js File, but it is giving me error.



I also tried adding <script> in the HTML element but outsystems is telling me that script is not a valid tag.

Hi Nur,

I'm also implementing stripe on a mobile app using JS version and also had that error. As you can see in the message you need to load stripe from stripe domain.

You can do that by loading the script using Outsystems "System/RequireScript" action.

After this stripe will work, well, at least on dev mode. 

Stripe now is showing a warning with this message if you inspect the mobile app "You may test your Stripe.js integration over HTTP. However, live Stripe.js integrations must use HTTPS."

In production, the code will not work. I believe the reason is because inside the app the URL does not have anymore HTTPS, instead of that it has outsystems://

From what I found on this link stripe allow also file://, ionic://, and httpsionic:// but not outsystems://


I believe this issue can be a problem in another kind of javascript integrations that force you to have HTTPS.

Can anyone help with this?

Community GuidelinesBe kind and respectful, give credit to the original source of content, and search for duplicates before posting.