Creación de VEPs para entidades externas (WSCREATEVEP)
createVEP
Creación de VEPs para entidades externas (WSCREATEVEP)
Solicitud
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.google.gson.JsonElement;
import com.google.gson.JsonObject;
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.time.Duration;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import java.util.ArrayList;
// Deben cambiar los datos de "params" por los que correspondan.
// Esta request de ejemplo incluye todos posibles valores para
// llamar al metodo createVEP, puede que algun valor sea opcional.
Map<String, Object> data = new LinkedHashMap<>();
data.put("environment", "prod");
data.put("method", "createVEP");
data.put("wsid", "setipagob2b_createvep");
Map<String, Object> params = new LinkedHashMap<>();
data.put("params", params);
params.put("token", "string");
params.put("sign", "string");
params.put("entidadDePago", 1);
Map<String, Object> vep = new LinkedHashMap<>();
params.put("vep", vep);
vep.put("nroVEP", 1);
vep.put("fechaHoraCreacion", "string");
vep.put("fechaExpiracion", "string");
vep.put("fechaVencimiento", "string");
vep.put("nroFormulario", 1);
vep.put("orgRecaudDesc", "string");
vep.put("codTipoPago", 1);
vep.put("pagoDesc", "string");
vep.put("pagoDescExtracto", "string");
vep.put("usuarioCUIT", 1);
vep.put("autorizanteCUIT", 1);
vep.put("contribuyenteCUIT", 1);
vep.put("establecimiento", 1);
vep.put("concepto", 1);
vep.put("conceptoDesc", "string");
vep.put("subConcepto", 1);
vep.put("subConceptoDesc", "string");
vep.put("periodoFiscal", 1);
vep.put("anticipoCuota", 1);
vep.put("importe", 1.5);
vep.put("ownerCuit", 1);
vep.put("ownerTransactionId", 1);
Map<String, Object> Detalles = new LinkedHashMap<>();
vep.put("Detalles", Detalles);
List<Object> Detalle = new ArrayList<Object>();
Detalles.put("Detalle", Detalle);
Map<String, Object> Detalle0 = new LinkedHashMap<>();
Detalle.add(Detalle0);
Detalle0.put("campo", 1);
Detalle0.put("campoTipo", "string");
Detalle0.put("campoDesc", "string");
Detalle0.put("contenido", "string");
Detalle0.put("contenidoDesc", "string");
Map<String, Object> Obligaciones = new LinkedHashMap<>();
vep.put("Obligaciones", Obligaciones);
List<Object> Obligacion = new ArrayList<Object>();
Obligaciones.put("Obligacion", Obligacion);
Map<String, Object> Obligacion0 = new LinkedHashMap<>();
Obligacion.add(Obligacion0);
Obligacion0.put("impuesto", 1);
Obligacion0.put("impuestoDesc", "string");
Obligacion0.put("importe", 1.5);
// Creamos un cliente HTTP para llamar a la API
HttpClient client = HttpClient.newBuilder()
.connectTimeout(Duration.ofSeconds(20))
.build();
// Realizamos la llamada a la API
Gson gson = new GsonBuilder().setPrettyPrinting().create();
String dataJSON = gson.toJson(data);
HttpRequest.Builder request = HttpRequest.newBuilder()
.uri(new URI("https://app.afipsdk.com/api/v1/afip/requests"))
.header("Content-Type", "application/json")
.POST(HttpRequest.BodyPublishers.ofString(dataJSON));
// Reemplazar con tu access_token obtenido de https://app.afipsdk.com
String accessToken = "TU_TOKEN_AQUI";
request.header("Authorization", "Bearer "+ accessToken);
HttpResponse<String> requestResponse = client.send(request.build(), HttpResponse.BodyHandlers.ofString());
// En caso de error lo mostramos por consola
if (requestResponse.statusCode() >= 400) {
JsonElement errorResponse = gson.fromJson(requestResponse.body(), JsonElement.class);
System.out.println("Error en la request: " + gson.toJson(errorResponse));
return;
}
// Convertimos la respuesta en un objeto
JsonObject jsonObject = gson.fromJson(requestResponse.body(), JsonElement.class).getAsJsonObject();
// Mostramos la respuesta por consola
System.out.println(gson.toJson(jsonObject));Respuesta
{
"createVEPReturn": "long"
}