Before we get to DDD, if we consider simple data normalization, you already get to a point where you start identifying the needs for a shared root identity: the product.
On the premise that not every product has a 1-1 relationship with every department, it already leads to a three table solution:

In simple database terms: you create a product, which in turn generates an identity (PK) for that product, and then both Sales and Procurement can reference (FK) that product (PK). The product table contains all product-specific (shared) information, the other two tables contain the information that is relevant only to that department.
It is possible that your application does not reveal the product on its own. You could, if you were so inclined, create the UX in a way that the Sales and Procurement teams on their own pages are given the option to reference an existing product or trigger a new product to be created.
The question on what data you would want to store on the product to help identify them and assist teams in finding existing products is an exercise left to the reader.
In DDD terms, this creates a third bounded context: the product. As I mentioned before, whether or not the product is exposed as a separate bounded context to the outside world is a separate consideration. I would personally default to creating a dedicated Product CRUD API, but this can be avoided if there are valid justifications for doing so.
Sidenote:
In a world where you hide the product creation into the Sales/Procurement bounded contexts, I would prepare for scenarios where both departments ended up creating different identities for what they (retroactively) understand should have been the same product, and provide some kind of tooling to help identify and merge these scenarios.
We can't guarantee Sales database and Procurement database would generate the same Id for the same physical entity.
You shouldn't at the same time acknowledge that a product is the same identity and then plan to store it in a distributed fashion across two otherwise unrelated databases. For the same reason that you are splitting the sales and procurement data store, the product should be upheld by its own data stores.
If your concern is that of a hard FK constraint in the database, that is something you have to let go of when you separate your data stores (pretty much by definition of stores being separate). In a microservice/separate bounded context world, FK "verification" (i.e. checking referential integrity) should be done service-to-service, not table-to-table.