use this object, very simple:
https://github.com/hgourvest/superobject
Ex:
Function ...
var
jsonPedido : ISuperObject;
begin
jsonPedido := SO(aPedido);
if jsonPedido.Count > 0 then
begin
idPedido := jsonPedido.S['codigo'];
merchanId := IntToStr(jsonPedido.I['idLoja']);
totalPrice := jsonPedido.F['valorCorrigido'];
pedidoCreatAt := jsonPedido.D['data'];
idContato := IntToStr(jsonPedido.O['cliente'].I['id']);
end;
end;