Как указывало @ icza , вы не можете использовать сокращенную запись дважды в одном блоке, например:
licenceAsBytes, _ := APIstub.GetState(args[0]);
...
licenceAsBytes, _ := json.Marshal(result)
Второй должен читать:
licenceAsBytes, _ = json.Marshal(result)
Аналогично, следующее недействительно:
result.Status := args[1]
, поскольку он не определяет новую переменную (он присваивает значение структурному полю).
Хотя это и не ошибка, для всего, что может появиться в работе, вы, вероятно, не хотите игнорировать ошибки в молчании (как делает ваш текущий фрагмент кода, 3x).