Cart Transform Price Update Violates Explicit Customer Consent Rule?

I’ve been using the cart transform function within my app and many merchant’s find it useful to update the price of line items.

However upon an app review today it’s been noted that this is against the Shopify app store rules:

5.6.5. Get explicit customer consent prior to making any changes that affect the order total in any way. Apps can’t automatically add or pre-select optional charges to a buyer’s cart that increase the total checkout price. Apps can only add optional charges to carts or at checkout after displaying the additional cost in a manner that is clear to the buyer, and upon obtaining explicit buyer consent.

While testing the app, we found a function that changes a product’s price at checkout. This does not align with Shopify’s requirements, as it can cause confusion and mislead customers. Remove this feature to make sure your application stays compliant. See this screencast for details

I understand this for the case of upsells and cross sells within checkout, however does this also apply to the cart transform function when updating prices?

The function seems designed specifically to support this kind of feature and I’m not sure how to address this issue as it is simply a function that cannot add UI to the checkout to obtain explicit buyer consent.

Hi @kyle,

Good question. Custom apps that use the lineUpdate.price operation aren’t subject to the same compliance requirements as public apps.

Since your app is public, you can collect consent in a Checkout UI extension, store it in a cart metafield or attribute, and have your Cart Transform Function check for that before applying any price change.