diff --git a/rpc/api/parsing.go b/rpc/api/parsing.go
index 4209ea7e3ff73c9df4731a20b1f9fcff0340eee5..8e25ffffbae029bca2b4352cd9e7e29152f28985 100644
--- a/rpc/api/parsing.go
+++ b/rpc/api/parsing.go
@@ -404,14 +404,14 @@ func NewUncleRes(h *types.Header) *UncleRes {
 // }
 
 type ReceiptRes struct {
-	TransactionHash   *hexdata       `json:transactionHash`
-	TransactionIndex  *hexnum        `json:transactionIndex`
-	BlockNumber       *hexnum        `json:blockNumber`
-	BlockHash         *hexdata       `json:blockHash`
-	CumulativeGasUsed *hexnum        `json:cumulativeGasUsed`
-	GasUsed           *hexnum        `json:gasUsed`
-	ContractAddress   *hexdata       `json:contractAddress`
-	Logs              *[]interface{} `json:logs`
+	TransactionHash   *hexdata       `json:"transactionHash"`
+	TransactionIndex  *hexnum        `json:"transactionIndex"`
+	BlockNumber       *hexnum        `json:"blockNumber"`
+	BlockHash         *hexdata       `json:"blockHash"`
+	CumulativeGasUsed *hexnum        `json:"cumulativeGasUsed"`
+	GasUsed           *hexnum        `json:"gasUsed"`
+	ContractAddress   *hexdata       `json:"contractAddress"`
+	Logs              *[]interface{} `json:"logs"`
 }
 
 func NewReceiptRes(rec *types.Receipt) *ReceiptRes {
@@ -430,7 +430,12 @@ func NewReceiptRes(rec *types.Receipt) *ReceiptRes {
 	if bytes.Compare(rec.ContractAddress.Bytes(), bytes.Repeat([]byte{0}, 20)) != 0 {
 		v.ContractAddress = newHexData(rec.ContractAddress)
 	}
-	// v.Logs = rec.Logs()
+
+	logs := make([]interface{}, len(rec.Logs()))
+	for i, log := range rec.Logs() {
+		logs[i] = NewLogRes(log)
+	}
+	v.Logs = &logs
 
 	return v
 }
diff --git a/xeth/xeth.go b/xeth/xeth.go
index 4bd18a2f63d5da8583df26af0567ab26274d69f9..f2295e6e157da07c261e3f99958b767921ebb5c9 100644
--- a/xeth/xeth.go
+++ b/xeth/xeth.go
@@ -973,7 +973,7 @@ func (self *XEth) Transact(fromStr, toStr, nonceStr, valueStr, gasStr, gasPriceS
 		glog.V(logger.Info).Infof("Tx(%x) to: %x\n", tx.Hash(), tx.To())
 	}
 
-	return tx.Hash().Hex(), nil
+	return signed.Hash().Hex(), nil
 }
 
 func (self *XEth) sign(tx *types.Transaction, from common.Address, didUnlock bool) (*types.Transaction, error) {