Often the footprint I need is not in the existing libraries and I need to make my own. For example one of the dozens of micro USB footprints.
When I make a footprint and then send for assembly at JLCPCB for example the center point I have chosen often does not match what they expect and they give the error "The pad centroid is different from component centroid".
It is easy when the datasheet shows the center, or when the part has obvious symmetry on both axes. But with the example of the USB connector there is no obvious vertical center point and no center is specified in the datasheet.
If I get this center point wrong the part will be rejected or not placed correctly.
What is the correct way to determine the center point of a part?