Criação do XML de recepcao NFE4 SP?

Bom dia , amigos.

Estou tentando enviar uma nota no ambiente de homologação no estado de SP,na questão de web service sou bem leigo , vi bastante assunto na internet mais ainda estou boando , já que trabalho con APIs.Abaixo xmp de envio para estado de SP , gostaria de ajuda de vcs para saber se estou no caminho certo, estou fazendo em java.Gerei xml , assinei agora estou tentando montar o envio , mas primeiro criei xml soap.

agradeço desde de já

<?xml version="1.0" encoding="UTF-8"?>
<soap12:Envelope
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns:xsd="http://www.w3.org/2001/XMLSchema"
	xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
	<soap12:Header>
		<nfeCabecMsg
			xmlns="https://homologacao.nfe.fazenda.sp.gov.br/ws/nfeautorizacao4.asmx">
			<versaoDados>4.00</versaoDados>
			<cUF>35</cUF>
		</nfeCabecMsg>
	</soap12:Header>
	<soap12:Body>
		<nfeDadosMsg
			xmlns="https://homologacao.nfe.fazenda.sp.gov.br/ws/nfeautorizacao4.asmx">
			<?xml version="1.0" encoding="UTF-8"?>
			<NFe
				xmlns="http://www.portalfiscal.inf.br/nfe">
				<infNFe Id="NFe9999999999999999999999999999" versao="4.00">
					<ide>
						<cUF>35</cUF>
						<cNF>9999999</cNF>
						<natOp>VENDAS P. DO ESTABELECIMENTO</natOp>
						<mod>55</mod>
						<serie>1</serie>
						<nNF>999999</nNF>
						<dhEmi>2023-06-14T13:42:35-03:00</dhEmi>
						<dhSaiEnt>2023-06-14T13:42:35-03:00</dhSaiEnt>
						<tpNF>1</tpNF>
						<idDest>1</idDest>
						<cMunFG>3511102</cMunFG>
						<tpImp>2</tpImp>
						<tpEmis>1</tpEmis>
						<cDV>1</cDV>
						<tpAmb>2</tpAmb>
						<finNFe>1</finNFe>
						<indFinal>0</indFinal>
						<indPres>0</indPres>
						<procEmi>0</procEmi>
						<verProc>1</verProc>
					</ide>
					<emit>
						<CNPJ>999999999999</CNPJ>
						<xNome>XXXXXXXXXXXXXXXXXXXXXXXX</xNome>
						<xFant>XXXXXXXXXXXXXXXXX</xFant>
						<enderEmit>
							<xLgr>XXXXXXXXXXXXXXXX, S/N</xLgr>
							<nro>SN</nro>
							<xCpl>KM 7</xCpl>
							<xBairro>XXXXXXXXXXX</xBairro>
							<cMun>999999</cMun>
							<xMun>XXXXXXXXXXXXXX</xMun>
							<UF>SP</UF>
							<CEP>999999998</CEP>
							<cPais>1058</cPais>
							<xPais>BRASIL</xPais>
							<fone>9999999999</fone>
						</enderEmit>
						<IE>9999999999</IE>
						<CRT>3</CRT>
					</emit>
					<dest>
						<CNPJ>999999999999</CNPJ>
						<xNome>XXXXXXXXXXXXXXXXXX</xNome>
						<enderDest>
							<xLgr>XXXXXXXXXXXXXX, S/N</xLgr>
							<nro>SN</nro>
							<xCpl>S/N</xCpl>
							<xBairro>XXXXXXXXXXXXXXX</xBairro>
							<cMun>9999999</cMun>
							<xMun>XXXXXXXXXXX</xMun>
							<CEP>9999999999</CEP>
							<UF>SP</UF>
							<xPais>BRASIL</xPais>
						</enderDest>
						<indIEDest>1</indIEDest>
						<IE>99999999999999</IE>
						<email>XXXXXXXXXXXXXX</email>
					</dest>
					<det nItem="1">
						<prod>
							<cProd>11</cProd>
							<cEAN>SEM GTIN</cEAN>
							<xProd>XXXXXXXXXXX</xProd>
							<NCM>23032000</NCM>
							<CFOP>5101</CFOP>
							<uCom>KG</uCom>
							<qCom>35000</qCom>
							<vUnCom>0.32</vUnCom>
							<vProd>11200</vProd>
							<cEANTrib>SEM GTIN</cEANTrib>
							<uTrib>KG</uTrib>
							<qTrib>35000</qTrib>
							<vUnTrib>0.32</vUnTrib>
							<indTot>1</indTot>
							<xPed>005</xPed>
							<nItemPed>1</nItemPed>
						</prod>
						<imposto>
							<vTotTrib>2865.52</vTotTrib>
							<ICMS>
								<ICMS00>
									<orig>0</orig>
									<CST>00</CST>
									<modBC>3</modBC>
									<vBC>11200.0</vBC>
									<pICMS>18.0</pICMS>
									<vICMS>2016.0</vICMS>
								</ICMS00>
							</ICMS>
							<IPI>
								<cEnq>999</cEnq>
								<IPINT>
									<CST>53</CST>
								</IPINT>
							</IPI>
							<PIS>
								<PISAliq>
									<CST>01</CST>
									<vBC>9184</vBC>
									<pPIS>1.65</pPIS>
									<vPIS>151.54</vPIS>
								</PISAliq>
							</PIS>
							<COFINS>
								<COFINSAliq>
									<CST>01</CST>
									<vBC>9184</vBC>
									<pPIS>7.6</pPIS>
									<vPIS>697.98</vPIS>
								</COFINSAliq>
							</COFINS>
						</imposto>
					</det>
					<total>
						<ICMSTot>
							<vBC>11200</vBC>
							<vICMS>2016</vICMS>
							<vICMSDeson>0.00</vICMSDeson>
							<vFCP>0.00</vFCP>
							<vBCST>0.00</vBCST>
							<vST>0.00</vST>
							<vFCPST>0.00</vFCPST>
							<vFCPSTRet>0.00</vFCPSTRet>
							<vProd>11200</vProd>
							<vFrete>0</vFrete>
							<vSeg>0</vSeg>
							<vDesc>0</vDesc>
							<vII>0.00</vII>
							<vIPI>0</vIPI>
							<vIPIDevol>0.00</vIPIDevol>
							<vPIS>151.54</vPIS>
							<vCOFINS>697.98</vCOFINS>
							<vOutro>0.00</vOutro>
							<vNF>11200</vNF>
							<vTotTrib>2865.52</vTotTrib>
						</ICMSTot>
					</total>
					<transp>
						<modFrete>1</modFrete>
						<transporta>
							<CNPJ>9999999999999</CNPJ>
							<xNome>XXXXXXXXXXXXXXXX</xNome>
							<IE>99999999999</IE>
							<xEnder>XXXXXXXXXXXXXXX, S/NR. - XXXXXXXXXXXXXXXXXX 999</xEnder>
							<xMun>XXXXXXXXXXXXXXX</xMun>
							<UF>SP</UF>
						</transporta>
						<veicTransp>
							<placa>XXXXXX</placa>
							<uf>SP</uf>
						</veicTransp>
						<vol>
							<qVol>35000</qVol>
							<esp>KG</esp>
							<pesoL>35000</pesoL>
							<pesoB>35000</pesoB>
						</vol>
					</transp>
					<cobr>
						<fat>
							<nFat>999999</nFat>
							<vOrig>11200</vOrig>
							<vDesc>0</vDesc>
							<vLiq>11200</vLiq>
						</fat>
						<dup>
							<nDup>001</nDup>
							<dVenc>2023-07-05</dVenc>
							<vDup>11200</vDup>
						</dup>
					</cobr>
					<pag>
						<detPag>
							<tPag>16</tPag>
							<vPag>11200</vPag>
						</detPag>
					</pag>
					<infAdic>
						<infCpl>
							XXXXXXXXXXXXXXXXXXXXXXXXX</infCpl>
						</infCpl>
					</infAdic>
					<compra>
						<xPed>005</xPed>
					</compra>
					<infRespTec>
						<CNPJ>XXXXXXXXXXX</CNPJ>
						<xContato>XXXXXXXXXXXX</xContato>
						<email>XXXXXXXXXXXXXXXXXXXXXXXXXX</email>
						<fone>XXXXXXXXXXXXXXXXXXXXXX</fone>
					</infRespTec>
				</infNFe>
				<Signature
					xmlns="http://www.w3.org/2000/09/xmldsig#">
					<SignedInfo>
						<CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/>
						<SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1"/>
						<Reference URI="#NFe99999999999999999999999">
							<Transforms>
								<Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/>
								<Transform Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/>
							</Transforms>
							<DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>
							<DigestValue>/tNvdn399v2ywuu9OaUhK1lM6so=</DigestValue>
						</Reference>
					</SignedInfo>
					<SignatureValue>X</SignatureValue>
					<KeyInfo>
						<X509Data>
							<X509Certificate>X</X509Certificate>
						</X509Data>
					</KeyInfo>
				</Signature>
			</NFe>
		</nfeDadosMsg>
	</soap12:Body>
</soap12:Envelope>

Só para completar , mesmo assunto :
Boa tarde amigos.

Gostaria de trocar uma ideia sobre envio ambiente de homologação da nfe em java.

Fiz alguns projetos usando APis , como por exemplo envio e xml assinado usando restTemplate do java,gero xml assino e mando e pego retorno em forma de xml. Fiz projeto SPED REINF, a pergunta é consigo usar a mesma logica para envio da NFE em homologação, fiz alguns reajuste na assinatura reinf sped para nfe e peguei um xml original e ficou identico as assinatura.

segue exemplo abaixo tentando mandar uma nfe.



			KeyStore clientStore = KeyStore.getInstance("PKCS12");
			clientStore.load(new FileInputStream("/discos/teste.pfx"), "99999".toCharArray());
			SSLContextBuilder sslContextBuilder = new SSLContextBuilder();
			//sslContextBuilder.useProtocol("TLS");
			sslContextBuilder.loadKeyMaterial(clientStore, "999999".toCharArray());
			sslContextBuilder.loadTrustMaterial(new TrustSelfSignedStrategy());
			SSLConnectionSocketFactory sslConnectionSocketFactory = new SSLConnectionSocketFactory(
					sslContextBuilder.build());
			CloseableHttpClient httpClient = HttpClients.custom().setSSLSocketFactory(sslConnectionSocketFactory)
					.build();

			HttpComponentsClientHttpRequestFactory requestFactory = new HttpComponentsClientHttpRequestFactory(
					httpClient);
			requestFactory.setConnectTimeout(10000); // 10 seconds
			requestFactory.setReadTimeout(10000); // 10 seconds

			RestTemplate restTemplate = new RestTemplate(requestFactory);

			XMLSignatureFactory fac = XMLSignatureFactory.getInstance("DOM");

			DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
			Document document = dbf.newDocumentBuilder().parse(new FileInputStream("/nfe/" + "A-196749.xml"));

			String arquivoXML = converter(document);
			
			Envelopar envelopar = new Envelopar();
			
			String arquivoXML2 = envelopar.EnveloparXML();
			
			System.out.println("1");

			String resourceUrl = "https://homologacao.nfe.fazenda.sp.gov.br/ws/nfeautorizacao4";
			//String resourceUrl = "https://reinf.receita.economia.gov.br/recepcao/lotes";
			
			String retornoEnvio = "";

			HttpHeaders headers = new HttpHeaders();
			headers.add("Content-Type", "application/xml; charset=utf-8");

			try {
 				
				HttpEntity<String> entity = new HttpEntity<String>(arquivoXML2, headers);

				ResponseEntity<String> response = restTemplate.exchange(resourceUrl, HttpMethod.POST, entity,
						String.class);