nRF24l01 sends two data ok but only receives 1 data.

I’m using a nano and nRF24l01 to send a moisture value and temperature value to a UNO and another nRF24l01.

The transmitter (nano) reads the moisture sensor and temperature data ok. (confirmed with serial viewer). The receiver (UNO) will receive the temperature value but only states a value of 0.00 for the moisture value. It must be something small but I can’t see it.

Transmitter:

#include <nRF24L01.h>
#include <printf.h>
#include <RF24.h>
#include <RF24_config.h>
#include <DHT.h>

#define DHTPIN 7                // do not connect to pin 0 or pin 1
#define DHTTYPE DHT11           // Define DHT11 module
DHT dht(DHTPIN, DHTTYPE);       //create DHT object called dht

int sensor_pin = A0;            //added the moisture sensor
int output_value ;
float moisture ;

RF24 transmit (9,10);                            //ce=9, csn=10 create RF24 object called transmit
byte address [5] = "00001";                     //set address to 00001

struct package
  {
    float temperature = 0;
    float moisture = 0; 
  };

typedef struct package Package;
Package data;

void setup() {
  dht.begin();
  transmit.begin();
  transmit.openWritingPipe(address);            //open writing pipe to address 00001
  transmit.setPALevel(RF24_PA_MAX);             //set RF power output to maximum
  transmit.setDataRate(RF24_250KBPS);           //set datarate to 250kbps
  transmit.setChannel(100);                     //set frequency to channel 100
  transmit.stopListening();
  }

void loop() {
  
  Serial.begin(9600); 
  data.temperature = dht.readTemperature();
  output_value = analogRead(sensor_pin);
  moisture = map(output_value,1023,450,0,100);

  Serial.println(moisture);
  Serial.println(data.temperature);
  transmit.write(&data,sizeof(data));
  delay(1000);                                 
}

Receiver:

#include <nRF24L01.h>
//#include <printf.h>
#include <RF24.h>
#include <RF24_config.h>

RF24 receive (9,10);                         
byte address [5] = "00001";                
float moisture ;
struct package
  {
    float temperature = 0;
    float moisture = 0;
  };

typedef struct package Package;
Package data;

void setup() {
  
  Serial.begin(9600);
 
  receive.begin();
  receive.openReadingPipe(0,address);      
  receive.setPALevel(RF24_PA_MIN);        
  receive.setDataRate(RF24_250KBPS);      
  receive.setChannel(100);                
  receive.startListening();                
  }

void loop() {

  if (receive.available())                //check when received data available
  {
    receive.read(&data, sizeof(data));
    Serial.println(moisture);
    Serial.print(data.temperature);
    Serial.println("C  ");
       
  }
}
moisture = map(output_value,1023,450,0,100);
Serial.println(moisture);

Does that need to be data.moisture?