Multiple field search is not working in field having array of object in Elasticsearch 6

You can use wildcards to query multiple child fields, like this: party.contacts.*.

The full query would look like this:

{
  "query": {
    "multi_match": {
      "query": "ram",
      "fields": [
        "invoice_number",
        "status",
        "party.display_name",
        "party.contacts.*"
      ]
    }
  },
  "sort": {
    "created_at": "desc"
  }
}