diff --git a/src/MNH/goto_model_wrapper.f90 b/src/MNH/goto_model_wrapper.f90
index bf39783dbadc7e7c7426fbf894ee198b3b77ffc4..9317532ee9ae9e1f405d8157700b7595257e7e52 100644
--- a/src/MNH/goto_model_wrapper.f90
+++ b/src/MNH/goto_model_wrapper.f90
@@ -16,6 +16,7 @@
 !!      2016  (Leriche) Add MODD_CH_ICE Suppress MODD_CH_DEP_n
 !!      Modification    01/2016  (JP Pinty) Add LIMA
 !!  10/2016     (F Brosse) Add prod/loss terms computation for chemistry  
+!!                      07/2017 (M.Leriche) Add DIAG chimical surface fluxes
 !-----------------------------------------------------------------
 MODULE MODI_GOTO_MODEL_WRAPPER
 
@@ -32,6 +33,7 @@ SUBROUTINE GOTO_MODEL_WRAPPER(KFROM, KTO)
 USE MODD_ADV_n
 USE MODD_BIKHARDT_n
 USE MODD_CH_AERO_n
+USE MODD_CH_FLX_n
 USE MODD_CH_JVALUES_n
 USE MODD_CH_MNHC_n
 USE MODD_CH_SOLVER_n
@@ -122,6 +124,7 @@ INTEGER,INTENT(IN) :: KFROM, KTO
 CALL ADV_GOTO_MODEL(KFROM, KTO)
 CALL BIKHARDT_GOTO_MODEL(KFROM, KTO)
 CALL CH_AERO_GOTO_MODEL(KFROM,KTO)
+CALL CH_FLX_GOTO_MODEL(KFROM, KTO)
 CALL CH_JVALUES_GOTO_MODEL(KFROM, KTO)
 CALL CH_MNHC_GOTO_MODEL(KFROM, KTO)
 CALL CH_SOLVER_GOTO_MODEL(KFROM, KTO)
diff --git a/src/MNH/ground_paramn.f90 b/src/MNH/ground_paramn.f90
index 0aba42873940d02b0667520e57521da23a6ad318..6ef8cbf4ecaaa7b2a119ab7583398f61a9964e0c 100644
--- a/src/MNH/ground_paramn.f90
+++ b/src/MNH/ground_paramn.f90
@@ -107,6 +107,7 @@ END MODULE MODI_GROUND_PARAM_n
 !!  06/2016     (G.Delautier) phasage surfex 8
 !!     (B.Vie)                2016 LIMA
 !!      (M.Leriche)            24/03/16 remove flag for chemical surface fluxes
+!!      (M.Leriche)           01/07/2017 Add DIAG chimical surface fluxes
 !-------------------------------------------------------------------------------
 !
 !*       0.     DECLARATIONS
@@ -141,6 +142,8 @@ USE MODD_SALT,       ONLY : LSALT
 USE MODD_CH_AEROSOL, ONLY : LORILAM
 USE MODD_CSTS_DUST,  ONLY : XMOLARWEIGHT_DUST
 USE MODD_CSTS_SALT,  ONLY : XMOLARWEIGHT_SALT
+USE MODD_CH_FLX_n, ONLY : XCHFLX
+USE MODD_DIAG_FLAG, ONLY : LCHEMDIAG
 !
 USE MODI_NORMAL_INTERPOL
 USE MODI_ROTATE_WIND
@@ -598,6 +601,7 @@ END IF
 IF (LUSECHEM) THEN
   DO JSV=NSV_CHEMBEG,NSV_CHEMEND
     PSFSV(:,:,JSV) = ZSFTS(:,:,JSV) * XMD / ( XAVOGADRO * XRHODREF(:,:,IKB)) 
+    IF ((LCHEMDIAG).AND.(CPROGRAM == 'DIAG  ')) XCHFLX(:,:,JSV) = PSFSV(:,:,JSV)
   END DO
 ELSE
   PSFSV(:,:,NSV_CHEMBEG:NSV_CHEMEND) = 0.
diff --git a/src/MNH/ini_modeln.f90 b/src/MNH/ini_modeln.f90
index 46cb888c3842ae85a202508353934ff5e893a48b..c9aa1051eaa15125e938ed54592739c971f1a9dd 100644
--- a/src/MNH/ini_modeln.f90
+++ b/src/MNH/ini_modeln.f90
@@ -273,6 +273,7 @@ END MODULE MODI_INI_MODEL_n
 !!       F. Brosse   Oct.  2016 add prod/loss terms computation for chemistry       
 !!                   M.Leriche 2016 Chemistry
 !!                   M.Leriche 10/02/17 prevent negative values in LBX(Y)SVS 
+!!                   M.Leriche 01/07/2017 Add DIAG chimical surface fluxes
 !---------------------------------------------------------------------------------
 !
 !*       0.    DECLARATIONS
@@ -328,6 +329,7 @@ USE MODD_CH_MNHC_n, ONLY : LUSECHEM, LUSECHAQ, LUSECHIC, LCH_INIT_FIELD, &
 USE MODD_CH_PH_n
 USE MODD_CH_AEROSOL, ONLY : LORILAM
 USE MODD_CH_AERO_n,  ONLY : XSOLORG,XMI
+USE MODD_CH_FLX_n,  ONLY : XCHFLX
 USE MODD_PARAM_KAFR_n
 USE MODD_PARAM_MFSHALL_n
 USE MODD_DEEP_CONVECTION_n
@@ -1505,6 +1507,10 @@ IF (LUSECHAQ.AND.(CPROGRAM == 'DIAG  '.OR.CPROGRAM == 'MESONH')) THEN
     XACPRAQ(:,:,:) = 0.
   ENDIF
 ENDIF
+IF ((LUSECHEM).AND.(CPROGRAM == 'DIAG  ')) THEN
+  ALLOCATE(XCHFLX(IIU,IJU,NSV_CHEM))
+  XCHFLX(:,:,:) = 0.
+END IF
 !
 !-------------------------------------------------------------------------------
 !
diff --git a/src/MNH/write_lfifm1_for_diag_supp.f90 b/src/MNH/write_lfifm1_for_diag_supp.f90
index d5c384c116767d298387fe4c75e032e15266daba..8c5db78a99a052d30f4f72a76268f36fac0c5fee 100644
--- a/src/MNH/write_lfifm1_for_diag_supp.f90
+++ b/src/MNH/write_lfifm1_for_diag_supp.f90
@@ -85,6 +85,7 @@ END MODULE MODI_WRITE_LFIFM1_FOR_DIAG_SUPP
 !!      J.-P. Chaboureau 07/03/2016 fix the dimensions of local arrays
 !!      J.-P. Chaboureau 31/10/2016 add the call to RTTOV11
 !!      F. Brosse 10/2016 add chemical production destruction terms outputs
+!!      M.Leriche 01/07/2017 Add DIAG chimical surface fluxes
 !-------------------------------------------------------------------------------
 !
 !*       0.    DECLARATIONS
@@ -122,6 +123,7 @@ USE MODD_CH_AEROSOL,      ONLY: LORILAM
 USE MODD_CH_MNHC_n
 USE MODD_CH_BUDGET_n
 USE MODD_CH_PRODLOSSTOT_n
+USE MODD_CH_FLX_n,          ONLY: XCHFLX
 USE MODD_RAD_TRANSF
 USE MODD_DIAG_IN_RUN, ONLY: XCURRENT_ZON10M,XCURRENT_MER10M,           &
                             XCURRENT_SFCO2, XCURRENT_SW, XCURRENT_LW
@@ -700,6 +702,22 @@ IF (NRAD_3D >= 1) THEN
 END IF
 !
 !-------------------------------------------------------------------------------
+! Net surface gaseous fluxes
+!print*,'LCHEMDIAG, NSV_CHEMBEG, NSV_CHEMEND=',&
+!LCHEMDIAG, NSV_CHEMBEG, NSV_CHEMEND
+
+IF (LCHEMDIAG) THEN
+    DO JSV = NSV_CHEMBEG, NSV_CHEMEND
+      YRECFM = 'FLX_'//TRIM(CNAMES(JSV-NSV_CHEMBEG+1))
+      WRITE(YCOMMENT,'(A6,A,A26)')'X_Y_Z_',TRIM(CNAMES(JSV-NSV_CHEMBEG+1)), &
+                                  ' Net chemical flux ppb.m/s'
+      ILENCH = LEN(YCOMMENT)
+      ZWORK21(:,:) = XCHFLX(:,:,JSV-NSV_CHEMBEG+1) * 1E9
+      CALL FMWRIT(HFMFILE,YRECFM,CLUOUT,'XY', ZWORK21(:,:),           &
+                  IGRID,ILENCH,YCOMMENT,IRESP)
+    END DO
+END IF
+!-------------------------------------------------------------------------------
 !
 !* Brightness temperatures from the radiatif transfer code (Morcrette, 1991)
 !