We’re looking for some clarification on requirement 5.6.8 for an app that supports a quote/request workflow.
The use case is that a customer submits a quote request through a form in the storefront. The merchant first needs to review the request before it can proceed to an order and payment through Shopify.
During App Review, our implementation was flagged because personal customer data (PCD) is collected outside Shopify Checkout.
Our current flow is:
Customer form → external middleware/ERP → Shopify Draft Order
We believe the issue may be that the customer data is sent to an external system before it has been stored in Shopify.
We are therefore considering changing the architecture to:
Customer form → Shopify app backend → Shopify Draft Order → Shopify webhook → external middleware/ERP
With this approach:
The form submits the data to the Shopify app backend.
The app first creates a Draft Order in Shopify.
No customer data is sent to the external middleware/ERP before the Draft Order exists in Shopify.
After the Draft Order has been created, Shopify sends the data to the external system through the existing webhook, similar to a regular Shopify order integration.
The customer can later complete payment through Shopify Checkout.
We are trying to clarify two things before implementing this change:
1. Would this architecture comply with requirement 5.6.8?
2. Can the quote form in this flow collect the customer information needed to create the Draft Order, such as name, email, phone number, shipping address and billing address? Or are these fields not allowed to be collected before Shopify Checkout, regardless of whether they are first stored in a Shopify Draft Order?
We’ve seen several quote request apps in the Shopify App Store collecting similar customer information, which makes us think this type of form is supported. However, we’d like to understand the correct Shopify-supported implementation rather than make assumptions based on other apps.
Any guidance would be greatly appreciated. We mainly want to make sure we’re implementing the correct architecture before resubmitting the app for review.
Hey @Dion_Nedfinity - requirement 5.6.8 applies specifically to Checkout UI extensions collecting information already captured by standard checkout fields. It doesn’t broadly prohibit a storefront quote form from collecting the details needed for a quote, though.
Your revised flow is directionally sound, but creating the Draft Order before forwarding data externally isn’t the only consideration. The applicable customer fields should also be synced to Shopify’s Customer object, with the quote visible as a Draft Order. Once approved, the Draft Order invoice can take the customer through Shopify Checkout for payment.
Could you share the exact review feedback and confirm whether the form is a storefront/theme extension or a Checkout UI extension? That’ll help confirm which requirement applies here. Let me know if you’d prefer to chat over DM and I can set one up