• Resolved nukurt

    (@kurtnuimage)


    Can the plugin handle partial payments for the same order?

    We have some custom functionality on our website where deposits can be paid for products which are available to pre order. (I’m not using an existing plugin for this, it’s a custom built plugin)

    When the product returns to stock, we then send out an email with a payment link to the customer requesting a payment for the outstanding amount, the link takes the customer to the Order Pay Endpoint with updated order totals (e.g. excluding the deposit amount). This all works as expected.

    We’ve had a customer pay the outstanding amount via the Order Pay endpoint using Stripe, but the transaction is missing entirely from the Stripe dashboard, despite the process adding a new note to the order with the information “Order charge successful in Stripe. Charge: XXXXXX. Payment Method: Card ending in XXXX”

    I think i might be missing from the dashboard because it’s using the same Charge ID as the original transaction, i guess this value probably needs to be unique?

    But I’m not too sure how I’d tell your payment gateway it needs a new charge id for this request. Ideally i still want this attached to the same order.

    The page I need help with: [log in to see the link]

Viewing 2 replies - 1 through 2 (of 2 total)
  • Thread Starter nukurt

    (@kurtnuimage)

    Anyone looked at this?

    I understand it’s a bit awkward as I’m using custom functionality, but i suppose my main question is whether Stripe requires a unique Charge ID for each transaction & if so, how i can generate a new Charge ID on an existing order via the Order Pay endpoint. So that the Stripe Payment gateway correctly pushes the transaction into the Stripe Dashboard, rather than it missing entirely.

    Plugin Author Payment Plugins

    (@mrclayton)

    Hi @kurtnuimage

    The plugin has logic that checks if the order has an existing _payment_intent_id. If it does, then it re-uses that payment intent. That logic is in place to ensure duplicate transactions cannot occur for the same order.

    In your custom code, you just need to delete the _payment_intent_id metadata which should allow a new payment to be processed.

    Kind Regards

Viewing 2 replies - 1 through 2 (of 2 total)
  • You must be logged in to reply to this topic.