Thanks @jakesing! Again, much appreciated. I’ve made some good progress and ended up getting deep into the Stripe docs, although there is a gap between what Stripe needs to work (based on actual coding languages) and applying this to Bubble logic, I think I’ve straddled this enough to get to the next step. However, it looks like I need to work on my “Payment Intent” logic next - @jaredg looks like you’re getting on well with splitting the payment and we have a similar one-off payment use case… Any advice or JSON body you can share please?
In case anyone else finds the initial setup useful, I’ve screenshotted my API call to create the Checkout Session (I’ve hidden my keys and data - if you spot something I shouldn’t be sharing, please tell me):
Don’t forget to add "Bearer " before your key (No need for quote marks but you do need the space).
In order to initialise the call, you will need to put values in. I’ve put grey blocks over these to hide my data but you can enter your own to initialise and then set these dynamically later in your app.
My code snippet is here for easy copy and pasting which I created based on Stripe documentation, here: Accept a payment | Stripe Documentation. NOTE: I’ve configured this call to create the PRODUCT and the PRICE in-line with the session creation rather than creating them in advance within Stripe. I’ve also not been able to test this fully (see issue at the bottom) but it at least gets your far enough to initilise a call and use in your workflow before continuing to use Jake’s plugin:
success_url=<success_url>&payment_method_types[0]=card&cancel_url=<cancel_url>&mode=&client_reference_id=<client_reference_id>&line_items[0][price_data][currency]=&line_items[0][price_data][product_data][name]=&line_items[0][price_data][unit_amount]=<unit_amount>&line_items[0][quantity]=
However, I’m now having the same issue as @jaredg:
To help debug / check if it’s the plugin or user error, here is my other setup:
In the workflow I’m only passing in the ID of the result from Step 1 as per your screenshot. Step 1 is my own API call to get the Checkout Session.
I also tried to mitigate this further by ignoring everything else in the response apart from the ID, when I initialised the call (I don’t know if was correct or not):
However, I’m now unable to proceed past this point now. Can anyone help or suggest what I’ve done wrong please?