Returns a list of customers that purchased a specified item.
-- Contributor: Tim Dietrich (timdietrich@me.com) -- Additional Info: https://timdietrich.me/blog/netsuite-suiteql-customers-by-address-and-purchase-history/ SELECT DISTINCT Customer.LastName, Customer.FirstName, Customer.Email, EntityAddress.Addr1, EntityAddress.Addr2, EntityAddress.Addr3, EntityAddress.City, EntityAddress.State, EntityAddress.Zip FROM Transaction INNER JOIN TransactionLine ON ( TransactionLine.Transaction = Transaction.ID ) INNER JOIN Customer ON ( Customer.ID = Transaction.Entity ) INNER JOIN EntityAddress ON ( EntityAddress.nKey = Customer.DefaultShippingAddress ) WHERE ( Transaction.Type = 'SalesOrd' ) AND ( TransactionLine.Item = 8919 ) AND ( Customer.IsInactive = 'F' )
Click here to return to the list of available queries.
Hello, I’m Tim Dietrich. I design and build custom software for businesses running on NetSuite — from mobile apps and Web portals to Web APIs and integrations.
I’ve created several widely used open-source solutions for the NetSuite community, including the SuiteQL Query Tool and SuiteAPI, which help developers and businesses get more out of their systems.
I’m also the founder of SuiteStep, a NetSuite development studio focused on pushing the boundaries of what’s possible on the platform. Through SuiteStep, I deliver custom software and AI-driven solutions that make NetSuite more powerful, accessible, and future-ready.
Copyright © 2025 Tim Dietrich.