google-schemasgoogle-now

Google Now ParcelDelivery orderStatus creating two cards


I'm trying to simulate the scenario where you, as a customer, have ordered a product from an online web shop and want to track the package.

So I am currently creating 3 marked up emails (as it probably would in a real life scenario) where the first email is the order confirmation, the second email is "order on the way" and the third email is "delivered". Pretty much everything is the same in all three emails. The differences in these emails are the orderStatus that will show on the card:

"orderStatus": "[...]/OrderProcessing"

"orderStatus": "[...]/OrderInTransit"

"orderStatus": "[...]/OrderDelivered" (can't post more than 2 links..)

Here's my confirmation email markup atm:

<!DOCTYPE html>
<html>
  <head>
    <script type="application/ld+json">
{
  "@context": "http://schema.org",
  "@type": "ParcelDelivery",
  "deliveryAddress": {
    "@type": "PostalAddress",
    "name": "Firstname Lastname",
    "streetAddress": "2nd Street",
    "addressLocality": "City",
    "addressRegion": "State",
    "addressCountry": "Country",
    "postalCode": "12345"
  },
  "expectedArrivalUntil": "2016-08-03T12:00-24:00",
  "carrier": {
    "@type": "Organization",
    "name": "Shipping Company"
  },  
   "itemShipped": {
    "@type": "Product",
    "name": "Test Product"
  },
  "trackingNumber": "1234567890",
  "trackingUrl": "some url",
  "partOfOrder": {
    "@type": "Order",
    "orderNumber": "555555",
    "merchant": {
      "@type": "Organization",
      "name": "Some web shop"
    },
    "orderStatus": "http://schema.org/OrderProcessing"
  }
}
</script>

  </head>
  <body>
    <p>
      Confirmation email
    </p>
  </body>
</html>

I'm trying to achieve that these three emails should just update the order status of the first card that shows up. But instead, after I've sent the confirmation email, another card shows up when I send the "order on the way" email. Is it possible to override this somehow? I mean, as a user, it can be confusing that you have 2 cards when you only ordered 1 product.

Image after the first email is sent

Image after the second email is sent

Sorry for the swedish language in the screenshots, but you can probably understand what I mean anyway.

Edit: For some reason, when I now use the itemShipped.name = Test Product, I get a really cool jacket as an image.


Solution

  • I solved this problem by having the first mail tagged as

    "@type": "Order"

    instead of

    "@type": "ParcelDelivery"

    I figured since the first email is just a reciept of your order, it can't be tagged as ParcelDelivery since Google probably recognizes this as two different parcels. I also used the same orderNumber in all three mails. This resulted in one single card, on which the status was updated. I don't know if this is how it's meant to be used but it works for now atleast.