#.oleg.d

1 messages · Page 1 of 1 (latest)

soft abyssBOT
remote lava
#

hi!

Now, my question is: How can I identify in Stripe which tickets the user purchased without relying on backend information?
well, you kind of can't I would say. Like you need to have a backend and that is where you would do any order fulfillment or reconcilation. You can't trust any frontend code since it can be edited by the client.

#

sounds like you would use metadata overall to connect a PaymentIntent to your internal database representation of the order, or to store the order details themselves. https://stripe.com/docs/api/metadata

dapper mulch
#

Hello, karllekko, your point is valid. We can't rely on actions taken in the Stripe dashboard. Even if we refrain from manual actions for refunds, when it comes to a partial chargeback of $10, there's still the challenge of automatically determining which ticket the user intends to charge back.

As of now, the only approach I see is to handle these cases manually, rather than relying on an automated solution.

remote lava
#

not sure what you mean by "actions in the Stripe dashboard", I didn't mention that at all.

#

you can have a PaymentIntent for $30 and metadata:{"item_1":"beyonce ticket", "item_2":"taylor swift ticket"} for example and your backend code can read the metadata to understand what the PaymentIntent was charging for; or have metadata:{"order_id":"1234567"} and your backend can check your database 'orders' table for that ID and understand what the PaymentIntent was charging for

dapper mulch
#

I want to clarify that if, for instance, someone refunds the entire transaction amount of $30 through the Stripe dashboard, I can deduce that all tickets were refunded. However, in scenarios where a person refunds only $10 from Stripe dashbpard, it becomes unclear which specific ticket in that order has been refunded. To address situations like the second example, we may need to undertake manual actions. For example, if I refund $10, I might have to navigate to the database or admin panel and manually update item_1, specifying that the Beyoncé ticket was refunded—or, alternatively, consider not executing these actions at all.

remote lava
#

makes sense

#

not much you can do about that really without just not issuing refunds on the Dashboard, or training your staff to carefully also update metadata when they do it; or building your own internal employee dashboard that calls the Refund API and updates metadata and make sure everyone uses that