Stripe · Platform

Completion

The group is finished when succeeded shares on the merchant’s Stripe account cover the order. The browser return is not that proof.

  1. PayShare session

    The group is paying their shares

  2. Merchant’s Stripe

    Each share succeeds on their account

  3. Your server

    You read payment_intent.succeeded

  4. Your platform

    Succeeded shares cover the order, so you complete the booking

SCREENSHOT NEEDED

Completed PayShare session. Your platform still confirms from Stripe.

Confirm orders from Stripe

Shares are PaymentIntents on the merchant’s Stripe account. If you receive events for your merchants’ accounts, handle payment_intent.succeeded the same way a merchant does: use payshare_session_id, payshare_participant_id and payshare_order_ref to find the booking, and mark it paid when one session’s succeeded shares cover the total.

The return to successReturnUrl is for display only. See Confirm the order from Stripe.

Refunds

  • The merchant can refund a whole booking or one person’s share from PayShare in their Stripe Dashboard.
  • Your server can refund a whole session with the refundToken from the start-split response. See server refunds.

Disconnections

EventResultWhat to do
The merchant turns PayShare off in your settingYou send property_status with enabled: false. The connection stays, and new splits stop.Hide the button.
The merchant removes PayShare from StripeThe connection closes and open codes stop working. connection_status returns connected: false.Hide the button and show the property as not connected.
The merchant moves to a new Stripe accountThey install PayShare there and connect with a new code. The old connection closes.Update the Stripe account you store for the property.
You delete your platform in PayShareEvery merchant connection closes.Remove PayShare from your checkout.

Check connection_status before you render the button if your stored state could be stale.

Next: Test your integration →