protected virtual void WriteTrackChargeJson(JsonWriter writer, PersonTransactionEvent personEvent)
        {
            // https://mixpanel.com/docs/people-analytics/people-http-specification-insert-data
            //{
            //    "$append": {
            //        "$transactions": {
            //            "$time": "2013-01-03T00:58:05",
            //            "$amount": 25.34
            //        }
            //    },
            //    "$token": "36ada5b10da39a1347559321baf13063",
            //    "$distinct_id": "13793"
            //}

            writer.WriteStartObject();
            writer.WritePropertyName("$append");
            writer.WriteStartObject();
            writer.WritePropertyName("$transactions");
            writer.WriteStartObject();
            writer.WritePropertyName("$time");
            writer.CastAndWriteValue(personEvent.TransactionDateTime);
            writer.WritePropertyName("$amount");
            writer.WriteValue(personEvent.TransactionAmount);
            writer.WriteEnd();
            writer.WriteEnd();

            this.WriteCommonPersonValues(writer, personEvent);

            writer.WriteEnd();
        }