Development discussions around Shopify APIs
Hi there,
I want to create a return against an order using API, so Shopify will reflect an item has been returned, however I don't want to issue a refund for this item. Is this possible?
I have read the documentation and it is not clear if this is possible
Cheers
@ShanCom wrote:Hi there,
I want to create a return against an order so Shopify will reflect that an item has been returned, however I don't want to issue a refund for this item. Is this possible?
I have read the documentation and it is not clear if this is possible
Cheers
Possible on our app Atomic Returns. We have a rules engine that lets you set options for every return which then gets passed thru Shopify. You can set rules based on order or customer attributes.
Lmk if you want to connect.
Hey @ShanCom
Yep, you can use the Refund API without specifying any transactions. This will return an item without refunding. For example:
POST /admin/api/2021-04/orders/{order_id}/refunds.json
{
"refund": {
"notify": false,
"note": "wrong size",
"shipping": {
"amount": 0
},
"refund_line_items": [
{
"line_item_id": {line_item_id},
"quantity": 1,
"restock_type": "return",
"location_id": {location_id}
}
]
}
}
Scott | Developer Support @ Shopify
- Was my reply helpful? Click Like to let me know!
- Was your question answered? Mark it as an Accepted Solution
- To learn more visit Shopify.dev or the Shopify Web Design and Development Blog
Hello @SBD_
In the case where the Item was Returned and a Refund had already been processed "offline" in a third party system outside of Shopify, is there any way through the API to update the Order indicating the Item that was Returned *and* the amount which was Refunded (without having Shopify think that it needs to process the Refund).
Lets say the Order contained 3 items, one item for $5, one item for $7 and one item for $9. To keep it simple, we'll say there are no taxes or shipping fees. The Order was Fulfilled in Shopify and Payment was Captured for a total of $21. Now the customer returns the $7 item through another channel (like walking into a store that runs a third party POS), and the $7 Refund is provided to that customer but the transaction is processed entirely outside of Shopify.
If we call the Refund API without any Transaction info, my assumption is the Order will appear to have that $7 Item "Returned" and we could Restock that unit, but the Order will show $21 Paid and an imbalance due to a Missing Refund of $7. Do we have an option to tell Shopify that $7 was already *externally* Refunded, and that no new Transaction needs to be processed?
Thanks in advance for your assistance!
Hey @michaelholland
I just ran some tests and can't find a good way to solve that. Let me know if you end up coming up with a solution!
Scott | Developer Support @ Shopify
- Was my reply helpful? Click Like to let me know!
- Was your question answered? Mark it as an Accepted Solution
- To learn more visit Shopify.dev or the Shopify Web Design and Development Blog
I'm badly looking for a similar solution.
Working on connecting Shopify with a 3rd party ERP system. The refunds happen outside of Shopify. The transactions of these refunds as well. If I try to reflect these refunds in Shopify, Shopify will attempt a refund on their own causing double refunds. If I create these refunds without transactions, Shopify does not change the financial_status of order lines and the order itself. Also, there is no indication of a refund at all. The order items remain "fulfilled" even though they were refunded. But the total order paid does get deducted. And the line item gets removed from the total line items in the order overview.
@SBD_can you please advise further on what to do? This is creating a lot of friction.
We are also having this problem. Here's the most basic use-case: A return policy that issues refunds as store credit. How would one implement said policy in Shopify without skewing one's metrics by overstating sales?
We have been using this method, and have an issue when we update the order with the returned item, an additional line item (which is blank) is added to the order with the same value of the returned item, thus cancelling out the returned item and over stating sales.
Example below
@SBD_ if you could help us with this that would be amazing
Connect your PayPal account to allow your customers to checkout using the PayPal gateway a...
ByYour online store speed can enhance your store’s discoverability, boost conversion rates a...
ByShopping is at our fingertips with mobile devices. Is your theme optimized to be user-frie...
By