I am developing an application to connect to an API and send DTE invoices to a server of the Ministry of Finance, I did the test using POSTMAN and it sends correctly, but when using the same structure in CURL it gives me 403 Forbidden, could you give me an idea of how to solve it or what I am doing wrong please?
I'm using Localhost XAMPP with PHP 7.4.33 on Windows.
This is the response from server:
{
"success": true,
"http_code": 403,
"respuesta": null
}
This is the PHP code:
<?php
// Token
$token = 'Bearer eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiIxMTIzMTQwNDkxMTAyNyIsImF1dGhvcml0aWVzIjpbIlVTRVIiLCJVU0VSX0FQSSIsIlVzdWFyaW8iXSwiY19uaXQiOiIxMTIzMTQwNDkxMTAyNyIsImNfZHVpIjoiMDQ0NDE4NDQ5IiwiaWF0IjoxNzUxMDQ5MDU1LCJleHAiOjE3NTExMzU0NTV9.p8v78GFAdtfxnRMzwO4aijq3CHjGynbtpibBqx5MUBuRh9gN6J0tNlNCmTxNqmGXC8WEvzt5tMdeW32pChDzdQ';
// Documento DTE firmado
$documentoFirmado = 'eyJhbGciOiJSUzUxMiJ9.ewogICJpZGVudGlmaWNhY2lvbiIgOiB7CiAgICAidmVyc2lvbiIgOiAxLAogICAgImFtYmllbnRlIiA6ICIwMCIsCiAgICAidGlwb0R0ZSIgOiAiMDEiLAogICAgIm51bWVyb0NvbnRyb2wiIDogIkRURS0wMS0wMDAwMDAwMS0wMDAwMDAwMDAwMDAwMDciLAogICAgImNvZGlnb0dlbmVyYWNpb24iIDogIjAxM0UyRUU3LTU2RkYtNEE3OS1BNUVDLTY5NUVEQzJBNkE4NSIsCiAgICAidGlwb01vZGVsbyIgOiAxLAogICAgInRpcG9PcGVyYWNpb24iIDogMSwKICAgICJ0aXBvQ29udGluZ2VuY2lhIiA6IG51bGwsCiAgICAibW90aXZvQ29udGluIiA6IG51bGwsCiAgICAiZmVjRW1pIiA6ICIyMDI1LTA2LTI3IiwKICAgICJob3JFbWkiIDogIjAyOjUzOjU2IiwKICAgICJ0aXBvTW9uZWRhIiA6ICJVU0QiCiAgfSwKICAiZG9jdW1lbnRvUmVsYWNpb25hZG8iIDogbnVsbCwKICAiYXBlbmRpY2UiIDogbnVsbCwKICAiZXh0ZW5zaW9uIiA6IHsKICAgICJub21iRW50cmVnYSIgOiBudWxsLAogICAgImRvY3VFbnRyZWdhIiA6IG51bGwsCiAgICAibm9tYlJlY2liZSIgOiBudWxsLAogICAgImRvY3VSZWNpYmUiIDogbnVsbCwKICAgICJwbGFjYVZlaGljdWxvIiA6IG51bGwsCiAgICAib2JzZXJ2YWNpb25lcyIgOiBudWxsCiAgfSwKICAiZW1pc29yIiA6IHsKICAgICJuaXQiIDogIjExMjMxNDA0OTExMDI3IiwKICAgICJucmMiIDogIjI0MTkxMTEiLAogICAgIm5vbWJyZSIgOiAiSm9zZSBBbnRvbmlvIFR1cmRpb3MgUGFyYWRhIiwKICAgICJjb2RBY3RpdmlkYWQiIDogIjYyMDEwIiwKICAgICJkZXNjQWN0aXZpZGFkIiA6ICJQcm9ncmFtYWNpb24gSW5mb3JtYXRpY2EiLAogICAgIm5vbWJyZUNvbWVyY2lhbCIgOiAiNEJ1c2luZXNzIiwKICAgICJ0aXBvRXN0YWJsZWNpbWllbnRvIiA6ICIwMiIsCiAgICAiZGlyZWNjaW9uIiA6IHsKICAgICAgImRlcGFydGFtZW50byIgOiAiMTEiLAogICAgICAibXVuaWNpcGlvIiA6ICIyMyIsCiAgICAgICJjb21wbGVtZW50byIgOiAiM2EgQXYuIFN1ciAjMjEsIEJvLiBDYW5kZWxhcmlhIgogICAgfSwKICAgICJ0ZWxlZm9ubyIgOiAiNzQ3NTA3MTIiLAogICAgImNvcnJlbyIgOiAiNGIuc29sdWNpb25lc2luZm9ybWF0aWNhc0BnbWFpbC5jb20iLAogICAgImNvZEVzdGFibGVNSCIgOiAiMDAwMSIsCiAgICAiY29kRXN0YWJsZSIgOiAiMDAwMSIsCiAgICAiY29kUHVudG9WZW50YU1IIiA6ICIwMDAxIiwKICAgICJjb2RQdW50b1ZlbnRhIiA6ICIwMDAxIgogIH0sCiAgInJlY2VwdG9yIiA6IHsKICAgICJ0aXBvRG9jdW1lbnRvIiA6IG51bGwsCiAgICAibnVtRG9jdW1lbnRvIiA6IG51bGwsCiAgICAibnJjIiA6IG51bGwsCiAgICAibm9tYnJlIiA6ICJKb3PDqSBBbnRvbmlvIFR1cmNpb3MgUGFyYWRhIiwKICAgICJkaXJlY2Npb24iIDogewogICAgICAiZGVwYXJ0YW1lbnRvIiA6ICIwMCIsCiAgICAgICJtdW5pY2lwaW8iIDogIjAwIiwKICAgICAgImNvbXBsZW1lbnRvIiA6ICI3OTQzMjkyMSwgTm8gQXBsaWNhIgogICAgfSwKICAgICJ0ZWxlZm9ubyIgOiBudWxsLAogICAgImNvZEFjdGl2aWRhZCIgOiBudWxsLAogICAgImRlc2NBY3RpdmlkYWQiIDogbnVsbCwKICAgICJjb3JyZW8iIDogbnVsbAogIH0sCiAgIm90cm9zRG9jdW1lbnRvcyIgOiBudWxsLAogICJ2ZW50YVRlcmNlcm8iIDogbnVsbCwKICAiY3VlcnBvRG9jdW1lbnRvIiA6IFsgewogICAgIm51bUl0ZW0iIDogMSwKICAgICJ0aXBvSXRlbSIgOiAxLAogICAgIm51bWVyb0RvY3VtZW50byIgOiBudWxsLAogICAgImNhbnRpZGFkIiA6IDEsCiAgICAiY29kaWdvIiA6ICI4NDAyNzI5MTEzMjciLAogICAgImNvZFRyaWJ1dG8iIDogbnVsbCwKICAgICJ1bmlNZWRpZGEiIDogNTksCiAgICAiZGVzY3JpcGNpb24iIDogIk1JQ1JPRk9OTyBQUk9GRVNJT05BTCBSQVpFUiBTRUlSRU4gVjMgTUlOSSBORUdSTyBSWjE5LTA1MDUwMTAwLVIzVTEiLAogICAgInByZWNpb1VuaSIgOiA2NC45NSwKICAgICJtb250b0Rlc2N1IiA6IDAsCiAgICAidmVudGFOb1N1aiIgOiAwLAogICAgInZlbnRhRXhlbnRhIiA6IDAsCiAgICAidmVudGFHcmF2YWRhIiA6IDY0Ljk1LAogICAgInRyaWJ1dG9zIiA6IG51bGwsCiAgICAicHN2IiA6IDAsCiAgICAibm9HcmF2YWRvIiA6IDAsCiAgICAiaXZhSXRlbSIgOiA3LjQ3MjEyMzg5CiAgfSwgewogICAgIm51bUl0ZW0iIDogMiwKICAgICJ0aXBvSXRlbSIgOiAxLAogICAgIm51bWVyb0RvY3VtZW50byIgOiBudWxsLAogICAgImNhbnRpZGFkIiA6IDEsCiAgICAiY29kaWdvIiA6ICJNQU5URU5JTUlFTlRPIiwKICAgICJjb2RUcmlidXRvIiA6IG51bGwsCiAgICAidW5pTWVkaWRhIiA6IDU5LAogICAgImRlc2NyaXBjaW9uIiA6ICJFTlZJTyBET01JQ0lMSU8iLAogICAgInByZWNpb1VuaSIgOiAyLjk1LAogICAgIm1vbnRvRGVzY3UiIDogMCwKICAgICJ2ZW50YU5vU3VqIiA6IDAsCiAgICAidmVudGFFeGVudGEiIDogMCwKICAgICJ2ZW50YUdyYXZhZGEiIDogMi45NSwKICAgICJ0cmlidXRvcyIgOiBudWxsLAogICAgInBzdiIgOiAwLAogICAgIm5vR3JhdmFkbyIgOiAwLAogICAgIml2YUl0ZW0iIDogMC4zMzkzODA1MwogIH0gXSwKICAicmVzdW1lbiIgOiB7CiAgICAidG90YWxOb1N1aiIgOiAwLAogICAgInRvdGFsRXhlbnRhIiA6IDAsCiAgICAidG90YWxHcmF2YWRhIiA6IDY3LjksCiAgICAic3ViVG90YWxWZW50YXMiIDogNjcuOSwKICAgICJkZXNjdU5vU3VqIiA6IDAsCiAgICAiZGVzY3VFeGVudGEiIDogMCwKICAgICJkZXNjdUdyYXZhZGEiIDogMCwKICAgICJwb3JjZW50YWplRGVzY3VlbnRvIiA6IDAsCiAgICAidG90YWxEZXNjdSIgOiAwLAogICAgInRyaWJ1dG9zIiA6IFsgXSwKICAgICJzdWJUb3RhbCIgOiA2Ny45LAogICAgIml2YVJldGUxIiA6IDAsCiAgICAicmV0ZVJlbnRhIiA6IDAsCiAgICAibW9udG9Ub3RhbE9wZXJhY2lvbiIgOiA2Ny45LAogICAgInRvdGFsTm9HcmF2YWRvIiA6IDAsCiAgICAidG90YWxQYWdhciIgOiA2Ny45LAogICAgInRvdGFsTGV0cmFzIiA6ICJTZXNlbnRhIHkgU2lldGUgOTAvMTAwIERvbGFyZXMgKFVTKS4iLAogICAgInRvdGFsSXZhIiA6IDcuODEsCiAgICAic2FsZG9GYXZvciIgOiAwLAogICAgImNvbmRpY2lvbk9wZXJhY2lvbiIgOiAzLAogICAgIm51bVBhZ29FbGVjdHJvbmljbyIgOiBudWxsLAogICAgInBhZ29zIiA6IFsgewogICAgICAiY29kaWdvIiA6ICIwNSIsCiAgICAgICJwZXJpb2RvIiA6IG51bGwsCiAgICAgICJwbGF6byIgOiBudWxsLAogICAgICAibW9udG9QYWdvIiA6IDY3LjksCiAgICAgICJyZWZlcmVuY2lhIiA6IG51bGwKICAgIH0gXQogIH0KfQ.HF2ZFzbNYNx0nfnjogWBXj4PD4sFB-ALj6xOeKukrvctLksv0CkhcqEGR0vBoy0qe1bxHHFQL0Bch6uwyaCsCdPXE94DGtAqc8aRdtpD1JxRsgjEU5J4SqZ5BRvnyYgPo5XIdKM60TXtHwLv9j1XALk2h69Y8mwYVuOfX9EOL91jugZ7xQFpd1qKXOO-mDa5BEJrTIvJs1avZaEnD1GMBY4PBe36wM46y8Hgts87rU2TyDDjIwlIMZMNm9nP3jdtR31fWuwMvW329VECfeq43DhR06h31Ek6cr_hGvcTGwLG9pXruJJPnyw5k4VfqPMikKSal4aqP5Jw2desvFcvLg';
// Código de generación
$codigoGeneracion = '013E2EE7-56FF-4A79-A5EC-695EDC2A6A85';
// Arreglo de datos
$data = [
"ambiente" => "00",
"idEnvio" => 7,
"version" => 1,
"tipoDte" => "01",
"documento" => $documentoFirmado,
"codigoGeneracion" => $codigoGeneracion
];
// Inicializar cURL
$ch = curl_init('https://apitest.dtes.mh.gob.sv/fesv/recepciondte');
// Configurar opciones
curl_setopt($ch, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Authorization: '.$token,
'Content-Type: application/json'
]);
// Ejecutar
$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
$error = curl_error($ch);
curl_close($ch);
// Mostrar respuesta
header('Content-Type: application/json');
if ($error) {
echo json_encode(["success" => false, "error" => $error]);
} else {
echo json_encode([
"success" => true,
"http_code" => $httpCode,
"respuesta" => json_decode($response, true)
], JSON_PRETTY_PRINT);
}
?>
I've already tried sending to another location to see if the headers and body data are sent, and it seems they are. Here I attach the response from the local file it receives:
{
"success": true,
"http_code": 200,
"respuesta": {
"headers": {
"Host": "localhost",
"Accept": "*\/*",
"Authorization": "Bearer eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiIxMTIzMTQwNDkxMTAyNyIsImF1dGhvcml0aWVzIjpbIlVTRVIiLCJVU0VSX0FQSSIsIlVzdWFyaW8iXSwiY19uaXQiOiIxMTIzMTQwNDkxMTAyNyIsImNfZHVpIjoiMDQ0NDE4NDQ5IiwiaWF0IjoxNzUxMDQ5MDU1LCJleHAiOjE3NTExMzU0NTV9.p8v78GFAdtfxnRMzwO4aijq3CHjGynbtpibBqx5MUBuRh9gN6J0tNlNCmTxNqmGXC8WEvzt5tMdeW32pChDzdQ",
"Content-Type": "application\/json",
"Content-Length": "4903"
},
"body_raw": "{\"ambiente\":\"00\",\"idEnvio\":7,\"version\":1,\"tipoDte\":\"01\",\"documento\":\"eyJhbGciOiJSUzUxMiJ9.ewogICJpZGVudGlmaWNhY2lvbiIgOiB7CiAgICAidmVyc2lvbiIgOiAxLAogICAgImFtYmllbnRlIiA6ICIwMCIsCiAgICAidGlwb0R0ZSIgOiAiMDEiLAogICAgIm51bWVyb0NvbnRyb2wiIDogIkRURS0wMS0wMDAwMDAwMS0wMDAwMDAwMDAwMDAwMDciLAogICAgImNvZGlnb0dlbmVyYWNpb24iIDogIjAxM0UyRUU3LTU2RkYtNEE3OS1BNUVDLTY5NUVEQzJBNkE4NSIsCiAgICAidGlwb01vZGVsbyIgOiAxLAogICAgInRpcG9PcGVyYWNpb24iIDogMSwKICAgICJ0aXBvQ29udGluZ2VuY2lhIiA6IG51bGwsCiAgICAibW90aXZvQ29udGluIiA6IG51bGwsCiAgICAiZmVjRW1pIiA6ICIyMDI1LTA2LTI3IiwKICAgICJob3JFbWkiIDogIjAyOjUzOjU2IiwKICAgICJ0aXBvTW9uZWRhIiA6ICJVU0QiCiAgfSwKICAiZG9jdW1lbnRvUmVsYWNpb25hZG8iIDogbnVsbCwKICAiYXBlbmRpY2UiIDogbnVsbCwKICAiZXh0ZW5zaW9uIiA6IHsKICAgICJub21iRW50cmVnYSIgOiBudWxsLAogICAgImRvY3VFbnRyZWdhIiA6IG51bGwsCiAgICAibm9tYlJlY2liZSIgOiBudWxsLAogICAgImRvY3VSZWNpYmUiIDogbnVsbCwKICAgICJwbGFjYVZlaGljdWxvIiA6IG51bGwsCiAgICAib2JzZXJ2YWNpb25lcyIgOiBudWxsCiAgfSwKICAiZW1pc29yIiA6IHsKICAgICJuaXQiIDogIjExMjMxNDA0OTExMDI3IiwKICAgICJucmMiIDogIjI0MTkxMTEiLAogICAgIm5vbWJyZSIgOiAiSm9zZSBBbnRvbmlvIFR1cmRpb3MgUGFyYWRhIiwKICAgICJjb2RBY3RpdmlkYWQiIDogIjYyMDEwIiwKICAgICJkZXNjQWN0aXZpZGFkIiA6ICJQcm9ncmFtYWNpb24gSW5mb3JtYXRpY2EiLAogICAgIm5vbWJyZUNvbWVyY2lhbCIgOiAiNEJ1c2luZXNzIiwKICAgICJ0aXBvRXN0YWJsZWNpbWllbnRvIiA6ICIwMiIsCiAgICAiZGlyZWNjaW9uIiA6IHsKICAgICAgImRlcGFydGFtZW50byIgOiAiMTEiLAogICAgICAibXVuaWNpcGlvIiA6ICIyMyIsCiAgICAgICJjb21wbGVtZW50byIgOiAiM2EgQXYuIFN1ciAjMjEsIEJvLiBDYW5kZWxhcmlhIgogICAgfSwKICAgICJ0ZWxlZm9ubyIgOiAiNzQ3NTA3MTIiLAogICAgImNvcnJlbyIgOiAiNGIuc29sdWNpb25lc2luZm9ybWF0aWNhc0BnbWFpbC5jb20iLAogICAgImNvZEVzdGFibGVNSCIgOiAiMDAwMSIsCiAgICAiY29kRXN0YWJsZSIgOiAiMDAwMSIsCiAgICAiY29kUHVudG9WZW50YU1IIiA6ICIwMDAxIiwKICAgICJjb2RQdW50b1ZlbnRhIiA6ICIwMDAxIgogIH0sCiAgInJlY2VwdG9yIiA6IHsKICAgICJ0aXBvRG9jdW1lbnRvIiA6IG51bGwsCiAgICAibnVtRG9jdW1lbnRvIiA6IG51bGwsCiAgICAibnJjIiA6IG51bGwsCiAgICAibm9tYnJlIiA6ICJKb3PDqSBBbnRvbmlvIFR1cmNpb3MgUGFyYWRhIiwKICAgICJkaXJlY2Npb24iIDogewogICAgICAiZGVwYXJ0YW1lbnRvIiA6ICIwMCIsCiAgICAgICJtdW5pY2lwaW8iIDogIjAwIiwKICAgICAgImNvbXBsZW1lbnRvIiA6ICI3OTQzMjkyMSwgTm8gQXBsaWNhIgogICAgfSwKICAgICJ0ZWxlZm9ubyIgOiBudWxsLAogICAgImNvZEFjdGl2aWRhZCIgOiBudWxsLAogICAgImRlc2NBY3RpdmlkYWQiIDogbnVsbCwKICAgICJjb3JyZW8iIDogbnVsbAogIH0sCiAgIm90cm9zRG9jdW1lbnRvcyIgOiBudWxsLAogICJ2ZW50YVRlcmNlcm8iIDogbnVsbCwKICAiY3VlcnBvRG9jdW1lbnRvIiA6IFsgewogICAgIm51bUl0ZW0iIDogMSwKICAgICJ0aXBvSXRlbSIgOiAxLAogICAgIm51bWVyb0RvY3VtZW50byIgOiBudWxsLAogICAgImNhbnRpZGFkIiA6IDEsCiAgICAiY29kaWdvIiA6ICI4NDAyNzI5MTEzMjciLAogICAgImNvZFRyaWJ1dG8iIDogbnVsbCwKICAgICJ1bmlNZWRpZGEiIDogNTksCiAgICAiZGVzY3JpcGNpb24iIDogIk1JQ1JPRk9OTyBQUk9GRVNJT05BTCBSQVpFUiBTRUlSRU4gVjMgTUlOSSBORUdSTyBSWjE5LTA1MDUwMTAwLVIzVTEiLAogICAgInByZWNpb1VuaSIgOiA2NC45NSwKICAgICJtb250b0Rlc2N1IiA6IDAsCiAgICAidmVudGFOb1N1aiIgOiAwLAogICAgInZlbnRhRXhlbnRhIiA6IDAsCiAgICAidmVudGFHcmF2YWRhIiA6IDY0Ljk1LAogICAgInRyaWJ1dG9zIiA6IG51bGwsCiAgICAicHN2IiA6IDAsCiAgICAibm9HcmF2YWRvIiA6IDAsCiAgICAiaXZhSXRlbSIgOiA3LjQ3MjEyMzg5CiAgfSwgewogICAgIm51bUl0ZW0iIDogMiwKICAgICJ0aXBvSXRlbSIgOiAxLAogICAgIm51bWVyb0RvY3VtZW50byIgOiBudWxsLAogICAgImNhbnRpZGFkIiA6IDEsCiAgICAiY29kaWdvIiA6ICJNQU5URU5JTUlFTlRPIiwKICAgICJjb2RUcmlidXRvIiA6IG51bGwsCiAgICAidW5pTWVkaWRhIiA6IDU5LAogICAgImRlc2NyaXBjaW9uIiA6ICJFTlZJTyBET01JQ0lMSU8iLAogICAgInByZWNpb1VuaSIgOiAyLjk1LAogICAgIm1vbnRvRGVzY3UiIDogMCwKICAgICJ2ZW50YU5vU3VqIiA6IDAsCiAgICAidmVudGFFeGVudGEiIDogMCwKICAgICJ2ZW50YUdyYXZhZGEiIDogMi45NSwKICAgICJ0cmlidXRvcyIgOiBudWxsLAogICAgInBzdiIgOiAwLAogICAgIm5vR3JhdmFkbyIgOiAwLAogICAgIml2YUl0ZW0iIDogMC4zMzkzODA1MwogIH0gXSwKICAicmVzdW1lbiIgOiB7CiAgICAidG90YWxOb1N1aiIgOiAwLAogICAgInRvdGFsRXhlbnRhIiA6IDAsCiAgICAidG90YWxHcmF2YWRhIiA6IDY3LjksCiAgICAic3ViVG90YWxWZW50YXMiIDogNjcuOSwKICAgICJkZXNjdU5vU3VqIiA6IDAsCiAgICAiZGVzY3VFeGVudGEiIDogMCwKICAgICJkZXNjdUdyYXZhZGEiIDogMCwKICAgICJwb3JjZW50YWplRGVzY3VlbnRvIiA6IDAsCiAgICAidG90YWxEZXNjdSIgOiAwLAogICAgInRyaWJ1dG9zIiA6IFsgXSwKICAgICJzdWJUb3RhbCIgOiA2Ny45LAogICAgIml2YVJldGUxIiA6IDAsCiAgICAicmV0ZVJlbnRhIiA6IDAsCiAgICAibW9udG9Ub3RhbE9wZXJhY2lvbiIgOiA2Ny45LAogICAgInRvdGFsTm9HcmF2YWRvIiA6IDAsCiAgICAidG90YWxQYWdhciIgOiA2Ny45LAogICAgInRvdGFsTGV0cmFzIiA6ICJTZXNlbnRhIHkgU2lldGUgOTAvMTAwIERvbGFyZXMgKFVTKS4iLAogICAgInRvdGFsSXZhIiA6IDcuODEsCiAgICAic2FsZG9GYXZvciIgOiAwLAogICAgImNvbmRpY2lvbk9wZXJhY2lvbiIgOiAzLAogICAgIm51bVBhZ29FbGVjdHJvbmljbyIgOiBudWxsLAogICAgInBhZ29zIiA6IFsgewogICAgICAiY29kaWdvIiA6ICIwNSIsCiAgICAgICJwZXJpb2RvIiA6IG51bGwsCiAgICAgICJwbGF6byIgOiBudWxsLAogICAgICAibW9udG9QYWdvIiA6IDY3LjksCiAgICAgICJyZWZlcmVuY2lhIiA6IG51bGwKICAgIH0gXQogIH0KfQ.HF2ZFzbNYNx0nfnjogWBXj4PD4sFB-ALj6xOeKukrvctLksv0CkhcqEGR0vBoy0qe1bxHHFQL0Bch6uwyaCsCdPXE94DGtAqc8aRdtpD1JxRsgjEU5J4SqZ5BRvnyYgPo5XIdKM60TXtHwLv9j1XALk2h69Y8mwYVuOfX9EOL91jugZ7xQFpd1qKXOO-mDa5BEJrTIvJs1avZaEnD1GMBY4PBe36wM46y8Hgts87rU2TyDDjIwlIMZMNm9nP3jdtR31fWuwMvW329VECfeq43DhR06h31Ek6cr_hGvcTGwLG9pXruJJPnyw5k4VfqPMikKSal4aqP5Jw2desvFcvLg\",\"codigoGeneracion\":\"013E2EE7-56FF-4A79-A5EC-695EDC2A6A85\"}",
"body_decoded": {
"ambiente": "00",
"idEnvio": 7,
"version": 1,
"tipoDte": "01",
"documento": "eyJhbGciOiJSUzUxMiJ9.ewogICJpZGVudGlmaWNhY2lvbiIgOiB7CiAgICAidmVyc2lvbiIgOiAxLAogICAgImFtYmllbnRlIiA6ICIwMCIsCiAgICAidGlwb0R0ZSIgOiAiMDEiLAogICAgIm51bWVyb0NvbnRyb2wiIDogIkRURS0wMS0wMDAwMDAwMS0wMDAwMDAwMDAwMDAwMDciLAogICAgImNvZGlnb0dlbmVyYWNpb24iIDogIjAxM0UyRUU3LTU2RkYtNEE3OS1BNUVDLTY5NUVEQzJBNkE4NSIsCiAgICAidGlwb01vZGVsbyIgOiAxLAogICAgInRpcG9PcGVyYWNpb24iIDogMSwKICAgICJ0aXBvQ29udGluZ2VuY2lhIiA6IG51bGwsCiAgICAibW90aXZvQ29udGluIiA6IG51bGwsCiAgICAiZmVjRW1pIiA6ICIyMDI1LTA2LTI3IiwKICAgICJob3JFbWkiIDogIjAyOjUzOjU2IiwKICAgICJ0aXBvTW9uZWRhIiA6ICJVU0QiCiAgfSwKICAiZG9jdW1lbnRvUmVsYWNpb25hZG8iIDogbnVsbCwKICAiYXBlbmRpY2UiIDogbnVsbCwKICAiZXh0ZW5zaW9uIiA6IHsKICAgICJub21iRW50cmVnYSIgOiBudWxsLAogICAgImRvY3VFbnRyZWdhIiA6IG51bGwsCiAgICAibm9tYlJlY2liZSIgOiBudWxsLAogICAgImRvY3VSZWNpYmUiIDogbnVsbCwKICAgICJwbGFjYVZlaGljdWxvIiA6IG51bGwsCiAgICAib2JzZXJ2YWNpb25lcyIgOiBudWxsCiAgfSwKICAiZW1pc29yIiA6IHsKICAgICJuaXQiIDogIjExMjMxNDA0OTExMDI3IiwKICAgICJucmMiIDogIjI0MTkxMTEiLAogICAgIm5vbWJyZSIgOiAiSm9zZSBBbnRvbmlvIFR1cmRpb3MgUGFyYWRhIiwKICAgICJjb2RBY3RpdmlkYWQiIDogIjYyMDEwIiwKICAgICJkZXNjQWN0aXZpZGFkIiA6ICJQcm9ncmFtYWNpb24gSW5mb3JtYXRpY2EiLAogICAgIm5vbWJyZUNvbWVyY2lhbCIgOiAiNEJ1c2luZXNzIiwKICAgICJ0aXBvRXN0YWJsZWNpbWllbnRvIiA6ICIwMiIsCiAgICAiZGlyZWNjaW9uIiA6IHsKICAgICAgImRlcGFydGFtZW50byIgOiAiMTEiLAogICAgICAibXVuaWNpcGlvIiA6ICIyMyIsCiAgICAgICJjb21wbGVtZW50byIgOiAiM2EgQXYuIFN1ciAjMjEsIEJvLiBDYW5kZWxhcmlhIgogICAgfSwKICAgICJ0ZWxlZm9ubyIgOiAiNzQ3NTA3MTIiLAogICAgImNvcnJlbyIgOiAiNGIuc29sdWNpb25lc2luZm9ybWF0aWNhc0BnbWFpbC5jb20iLAogICAgImNvZEVzdGFibGVNSCIgOiAiMDAwMSIsCiAgICAiY29kRXN0YWJsZSIgOiAiMDAwMSIsCiAgICAiY29kUHVudG9WZW50YU1IIiA6ICIwMDAxIiwKICAgICJjb2RQdW50b1ZlbnRhIiA6ICIwMDAxIgogIH0sCiAgInJlY2VwdG9yIiA6IHsKICAgICJ0aXBvRG9jdW1lbnRvIiA6IG51bGwsCiAgICAibnVtRG9jdW1lbnRvIiA6IG51bGwsCiAgICAibnJjIiA6IG51bGwsCiAgICAibm9tYnJlIiA6ICJKb3PDqSBBbnRvbmlvIFR1cmNpb3MgUGFyYWRhIiwKICAgICJkaXJlY2Npb24iIDogewogICAgICAiZGVwYXJ0YW1lbnRvIiA6ICIwMCIsCiAgICAgICJtdW5pY2lwaW8iIDogIjAwIiwKICAgICAgImNvbXBsZW1lbnRvIiA6ICI3OTQzMjkyMSwgTm8gQXBsaWNhIgogICAgfSwKICAgICJ0ZWxlZm9ubyIgOiBudWxsLAogICAgImNvZEFjdGl2aWRhZCIgOiBudWxsLAogICAgImRlc2NBY3RpdmlkYWQiIDogbnVsbCwKICAgICJjb3JyZW8iIDogbnVsbAogIH0sCiAgIm90cm9zRG9jdW1lbnRvcyIgOiBudWxsLAogICJ2ZW50YVRlcmNlcm8iIDogbnVsbCwKICAiY3VlcnBvRG9jdW1lbnRvIiA6IFsgewogICAgIm51bUl0ZW0iIDogMSwKICAgICJ0aXBvSXRlbSIgOiAxLAogICAgIm51bWVyb0RvY3VtZW50byIgOiBudWxsLAogICAgImNhbnRpZGFkIiA6IDEsCiAgICAiY29kaWdvIiA6ICI4NDAyNzI5MTEzMjciLAogICAgImNvZFRyaWJ1dG8iIDogbnVsbCwKICAgICJ1bmlNZWRpZGEiIDogNTksCiAgICAiZGVzY3JpcGNpb24iIDogIk1JQ1JPRk9OTyBQUk9GRVNJT05BTCBSQVpFUiBTRUlSRU4gVjMgTUlOSSBORUdSTyBSWjE5LTA1MDUwMTAwLVIzVTEiLAogICAgInByZWNpb1VuaSIgOiA2NC45NSwKICAgICJtb250b0Rlc2N1IiA6IDAsCiAgICAidmVudGFOb1N1aiIgOiAwLAogICAgInZlbnRhRXhlbnRhIiA6IDAsCiAgICAidmVudGFHcmF2YWRhIiA6IDY0Ljk1LAogICAgInRyaWJ1dG9zIiA6IG51bGwsCiAgICAicHN2IiA6IDAsCiAgICAibm9HcmF2YWRvIiA6IDAsCiAgICAiaXZhSXRlbSIgOiA3LjQ3MjEyMzg5CiAgfSwgewogICAgIm51bUl0ZW0iIDogMiwKICAgICJ0aXBvSXRlbSIgOiAxLAogICAgIm51bWVyb0RvY3VtZW50byIgOiBudWxsLAogICAgImNhbnRpZGFkIiA6IDEsCiAgICAiY29kaWdvIiA6ICJNQU5URU5JTUlFTlRPIiwKICAgICJjb2RUcmlidXRvIiA6IG51bGwsCiAgICAidW5pTWVkaWRhIiA6IDU5LAogICAgImRlc2NyaXBjaW9uIiA6ICJFTlZJTyBET01JQ0lMSU8iLAogICAgInByZWNpb1VuaSIgOiAyLjk1LAogICAgIm1vbnRvRGVzY3UiIDogMCwKICAgICJ2ZW50YU5vU3VqIiA6IDAsCiAgICAidmVudGFFeGVudGEiIDogMCwKICAgICJ2ZW50YUdyYXZhZGEiIDogMi45NSwKICAgICJ0cmlidXRvcyIgOiBudWxsLAogICAgInBzdiIgOiAwLAogICAgIm5vR3JhdmFkbyIgOiAwLAogICAgIml2YUl0ZW0iIDogMC4zMzkzODA1MwogIH0gXSwKICAicmVzdW1lbiIgOiB7CiAgICAidG90YWxOb1N1aiIgOiAwLAogICAgInRvdGFsRXhlbnRhIiA6IDAsCiAgICAidG90YWxHcmF2YWRhIiA6IDY3LjksCiAgICAic3ViVG90YWxWZW50YXMiIDogNjcuOSwKICAgICJkZXNjdU5vU3VqIiA6IDAsCiAgICAiZGVzY3VFeGVudGEiIDogMCwKICAgICJkZXNjdUdyYXZhZGEiIDogMCwKICAgICJwb3JjZW50YWplRGVzY3VlbnRvIiA6IDAsCiAgICAidG90YWxEZXNjdSIgOiAwLAogICAgInRyaWJ1dG9zIiA6IFsgXSwKICAgICJzdWJUb3RhbCIgOiA2Ny45LAogICAgIml2YVJldGUxIiA6IDAsCiAgICAicmV0ZVJlbnRhIiA6IDAsCiAgICAibW9udG9Ub3RhbE9wZXJhY2lvbiIgOiA2Ny45LAogICAgInRvdGFsTm9HcmF2YWRvIiA6IDAsCiAgICAidG90YWxQYWdhciIgOiA2Ny45LAogICAgInRvdGFsTGV0cmFzIiA6ICJTZXNlbnRhIHkgU2lldGUgOTAvMTAwIERvbGFyZXMgKFVTKS4iLAogICAgInRvdGFsSXZhIiA6IDcuODEsCiAgICAic2FsZG9GYXZvciIgOiAwLAogICAgImNvbmRpY2lvbk9wZXJhY2lvbiIgOiAzLAogICAgIm51bVBhZ29FbGVjdHJvbmljbyIgOiBudWxsLAogICAgInBhZ29zIiA6IFsgewogICAgICAiY29kaWdvIiA6ICIwNSIsCiAgICAgICJwZXJpb2RvIiA6IG51bGwsCiAgICAgICJwbGF6byIgOiBudWxsLAogICAgICAibW9udG9QYWdvIiA6IDY3LjksCiAgICAgICJyZWZlcmVuY2lhIiA6IG51bGwKICAgIH0gXQogIH0KfQ.HF2ZFzbNYNx0nfnjogWBXj4PD4sFB-ALj6xOeKukrvctLksv0CkhcqEGR0vBoy0qe1bxHHFQL0Bch6uwyaCsCdPXE94DGtAqc8aRdtpD1JxRsgjEU5J4SqZ5BRvnyYgPo5XIdKM60TXtHwLv9j1XALk2h69Y8mwYVuOfX9EOL91jugZ7xQFpd1qKXOO-mDa5BEJrTIvJs1avZaEnD1GMBY4PBe36wM46y8Hgts87rU2TyDDjIwlIMZMNm9nP3jdtR31fWuwMvW329VECfeq43DhR06h31Ek6cr_hGvcTGwLG9pXruJJPnyw5k4VfqPMikKSal4aqP5Jw2desvFcvLg",
"codigoGeneracion": "013E2EE7-56FF-4A79-A5EC-695EDC2A6A85"
}
}
}
I tried your code and changed the user agent, and it gave a different response. You can set a user agent of your own, or try an actual browser user agent.
curl_setopt($ch, CURLOPT_USERAGENT, 'php-simulation user agent');