I was testing D8.2.2 REST API with Commerce 2-beta3.
When I simply GET a Commerce Order, I receive an error in the Drupal log:
Symfony\Component\Routing\Exception\RouteNotFoundException: Route "entity.commerce_order_item.canonical" does not exist. in Drupal\Core\Routing\RouteProvider->getRouteByName() (line 187 of /var/www/html/core/lib/Drupal/Core/Routing/RouteProvider.php).
This is because Commerce Order Item Entity doesn't have a canonical path nor it is going to have one.
We need to add support for entities which don't have canonical path.
I had a discussion with on IRC, he suggested the bug is somewhere near:
\Drupal\rest\Plugin\Deriver\EntityDeriver::getDerivativeDefinitions
and
\Drupal\rest\Routing\ResourceRoutes::getRoutesForResourceConfig