Я использую драгоценный камень shopify_api
для приложения, которое я создаю. Процесс возврата полностью обрабатывается в приложении, и мне нужно только обновить заказ на Shopify как возмещаемый. Мне не нужно, чтобы Shopify делал что-то кроме регистрации изменения статуса платежа. Я прочитал, что мне нужно сначала использовать Refund.calculate
в геме, чтобы получить родительский идентификатор транзакции, прежде чем фактически выполнить запрос к конечной точке возврата. Моя проблема заключается в том, что при чтении документов я не могу понять, как форматировать аргументы для запроса .calculate
. Вот этот метод из драгоценного камня.
module ShopifyAPI
class Refund < Base
init_prefix :order
def self.calculate(*args)
options = { :refund => args[0] }
params = {}
params = args[1][:params] if args[1] && args[1][:params]
resource = post(:calculate, params, options.to_json)
instantiate_record(format.decode(resource.body), {})
end
end
end
Я пытался Refund.calculate({shipping: { full_refund: true }, currency: 'EUR', refund_line_items: [{line_item_id: 12344556, quantity: 1}, restock: true]}, params: {order_id: 23453245})
Я также пытался restock_type: 'restock'
Я получаю ошибки 406 или 422.