Getting Order Total

Topic summary

A user is building a Shopify Flow to identify and tag orders with a $0.00 total but is struggling to find the correct API field that consistently matches the bold Total displayed on the order page.

Initial attempts:

  • Shopify Support suggested order.currentTotalPriceSet, but this field has multiple variations
  • Testing revealed inconsistent results across different orders—some fields show $0.00 while others show dollar amounts for the same order

Fields tested (14 variations):
The user logged numerous fields including:

  • currentTotalDiscountsSet
  • currentTotalPriceSet (both shopMoney and presentmentMoney)
  • totalPriceSet
  • subtotalPriceSet
  • totalOutstandingSet
  • netPaymentSet

Key issue:
Fields #1 (currentTotalDiscountsSet) and #2 (currentTotalPriceSet.presentmentMoney) came closest but showed inconsistent behavior—sometimes one shows $0.00 while the other shows a dollar value, and vice versa.

Resolution:
The user ultimately identified order.originalTotalPriceSet.presentmentMoney.amount as the field that accurately tracks the bold Total value from the order page.

Summarized with AI on October 30. AI used: claude-sonnet-4-5-20250929.

I am trying to create a flow to capture orders at $0.00 so we can tag them a certain way. Which flow code do I need to use? I asked on the Shopify Support Chat and they said to use

order.currentTotalPriceSet

but there are several options with that amount. I setup a Flow to log output, but I am also seeing where some orders will give me $0.00 for

{{fulfillmentOrder.order.currentTotalDiscountsSet.shopMoney.amount}}

but will give me a dollar value for

{{fulfillmentOrder.order.currentTotalPriceSet.presentmentMoney.amount}}

Then sometimes it will be the reverse, where I have a dollar value for the first one and $0.00 for the second.

I am just looking for the Total that is in bold on the order page, which is $0.00

My log is capturing some dollars for that order in one of the totals I’m logging. Another order that looks like the above with $0.00 in the bold Total field has $0.00 in 2,3,4 and recorded some dollars in 1.

The variable {{fulfillmentOrder.order.currentTotalDiscountsSet.shopMoney.amount}} returns the currentTotalDiscountsSet for the order associated with the fulfillmentOrder in shopMoney (the currency used by the shop).

The Admin API documentation for the order object defines:

  • currentTotalDiscountsSet as: “The total amount discounted on the order after returns, in shop and presentment currencies. This includes both order and line level discounts.”

  • currentTotalPriceSet as: “The total price of the order, after returns, in shop and presentment currencies. This includes taxes and discounts.”

Given that, {{order.currentTotalPriceSet.shopMoney.amount}} is probably what you’re looking for but there are a number of other fields that may be relevant depending on your needs so you may want to review the documentation. If you’re pulling this variable from a fulfillmentOrder, then it’d be {{fulfillmentOrder.order.currentTotalPriceSet.shopMoney.amount}}.

I have looked through the documentation; I have NINE (9) separate ‘amount’ lines writing out values in the log to see which is which. The one you’ve mentioned does not work; it reports the total before discounts every time. The one it looked like it would be (fulfillmentOrder.order.totalOutstandingSet.shopMoney.amount) seems to write $0.0 even if the order total is more than $0.0

Which of the amounts is the bold total from here?

I’m not an expert on the Admin API, I’m just reading the documentation. It looks like “totalPriceSet” is the total price of the order, before returns, but including taxes and discounts.

I’m not sure you want totalOutstandingSet as that’s the total amount not yet transacted for the order. A positive value indicates a difference in the merchant’s favor (payment from customer to merchant) and a negative value indicates a difference in the customer’s favor (refund from merchant to customer).

I’m not an expert on the Admin API, I’m just reading the documentation. It looks like “totalPriceSet” is the total price of the order, before returns, but including taxes and discounts.

I’m not sure you want totalOutstandingSet as that’s the total amount not yet transacted for the order. A positive value indicates a difference in the merchant’s favor (payment from customer to merchant) and a negative value indicates a difference in the customer’s favor (refund from merchant to customer).

Thanks for trying to help. Here are all the totals being logged.

1. {{fulfillmentOrder.order.currentTotalDiscountsSet.shopMoney.amount}}
2. {{fulfillmentOrder.order.currentTotalPriceSet.presentmentMoney.amount}}
3. {{fulfillmentOrder.order.currentTotalPriceSet.shopMoney.amount}}
4. {{fulfillmentOrder.order.totalPriceSet.presentmentMoney.amount}}
5. {{fulfillmentOrder.order.totalPriceSet.shopMoney.amount}}
6. {{fulfillmentOrder.order.subtotalPriceSet.presentmentMoney.amount}}
7. {{fulfillmentOrder.order.subtotalPriceSet.shopMoney.amount}}
8. {% for fulfillments_item in fulfillmentOrder.fulfillments %}
  {{fulfillments_item.order.currentTotalPriceSet.shopMoney.amount}}
{% endfor %}
9. {{fulfillmentOrder.order.totalOutstandingSet.shopMoney.amount}}
10. {% for availableChannelApps_item in shop.availableChannelApps %}
  {% for oneTimePurchases_item in availableChannelApps_item.installation.oneTimePurchases %}
  {{oneTimePurchases_item.price.amount}}
{% endfor %}
{% endfor %}
--
11. {{fulfillmentOrder.order.netPaymentSet.presentmentMoney.amount}}
12. {{fulfillmentOrder.order.totalPriceSet.presentmentMoney.amount}}
--
13. {% for availableChannelApps_item in shop.availableChannelApps %}
  {% for oneTimePurchases_item in availableChannelApps_item.installation.oneTimePurchases %}
  {{oneTimePurchases_item.price.amount}}
{% endfor %}
{% endfor %}
14. {{fulfillmentOrder.order.currentSubtotalPriceSet.shopMoney.amount}}

I am recording several different iterations of totalPriceSet (looks like I ended up with some duplication).

The closest I’ve gotten is from either #1 or #2. The problem is, sometimes the $0 orders will record $0 in #1, then a dollar amount in #2. Other times, it records a dollar amount in #1 then a dollar amount in #2. So I can’t use either because it is inconsistent.

The field we are tracking to manage this is

‘order.originalTotalPriceSet.presentmentMoney.amount’