Marking An Order As Paid In Shopify After We Have Captured Payment Using A Third Party (Dynamics SL)

Shopify Expert
20 0 2

We are transitioning several stores to Shopify for a large client who is deeply ingrained with Microsoft Dynamics SL as an ERP. They require using existing functions they have on SL for capturing payment from their payment provider (Payflow Pro), so we are helping to build an integration for that. The chain of events boils down to:

  • Shopify takes the order and authorizes payment with Payflow Pro
  • Dynamics SL pulls the order from Shopify (including payment authorization key), and captures the payment from Payflow Pro when the order is fulfilled
  • Dynamics SL tells Shopify the order is fulfilled and the order is paid

We're having trouble with the last bold part, marking the order as paid using the Shopify API. Here's what we've tried:

  • We can't change the Order's financial_status directly, as Shopify doesn't allow it since this only gets changed when Transactions are added to the Order
  • If we try to add a Transaction to the order, we get the error "Capture error: A71AAA064AD4 has already been captured" (since we've captured it using Dynamics SL) and the Order does not get marked paid

How can we go about marking an Order as paid that has been captured using a third party?

We basically want to be able to manually Mark As Paid like you can do from the Orders admin page, just using the API. Or otherwise add a Transaction to the Order that will result in the Order being marked paid without needing to attempt to re-capture.

New Member
1 0 0

Were you able to find a solution to this issue? I have pretty much the same problem (different CRM) but same issue as shopify wants to capture the payment.

Any suggestions would be great!