Creación de VEPs para entidades externas (WSCREATEVEP)


Solicitud
using System.Net.Http;
using System.Text;
using Newtonsoft.Json;

// Deben cambiar los datos de "params" por los que correspondan. 
// Esta request de ejemplo incluye todos posibles valores para 
// llamar al metodo findMyVEPByNroVEP, puede que algun valor sea opcional.
var data = new Dictionary<string, object> {
    ["environment"] = "dev",
    ["method"] = "findMyVEPByNroVEP",
    ["wsid"] = "setipagob2b_createvep",
    ["params"] = new Dictionary<string, object> {
        ["token"] = "string",
        ["sign"] = "string",
        ["owner"] = 1,
        ["nroVep"] = 1
    }
};

// Creamos un cliente HTTP para llamar a la API
var requestClient = new HttpClient();
var requestUrl = "https://app.afipsdk.com/api/v1/afip/requests";

// Reemplazar con tu access_token obtenido de https://app.afipsdk.com
var accessToken = "TU_TOKEN_AQUI";
requestClient.DefaultRequestHeaders.Add("Authorization", $"Bearer {accessToken}"); 

// Realizamos la llamada a la API
var dataJSON = new StringContent(JsonConvert.SerializeObject(data), Encoding.UTF8, "application/json");
var requestResponse = await requestClient.PostAsync(requestUrl, dataJSON);

// En caso de error lo mostramos por consola
if (!requestResponse.IsSuccessStatusCode) {
    Console.WriteLine($"Error en la request: {requestResponse.StatusCode}");
    var errorResponse = JsonConvert.DeserializeObject(await requestResponse.Content.ReadAsStringAsync());
    Console.WriteLine(errorResponse);

    return;
}

// Obtenemos la respuesta
var requestResponseBody = await requestResponse.Content.ReadAsStringAsync();

// Convertimos la respuesta en un objeto
dynamic response = JsonConvert.DeserializeObject(requestResponseBody);

// Mostramos la respuesta por consola
Console.WriteLine(response);
Respuesta
{
    "findMyVEPByNroVEPReturn": {
        "VEP": {
            "nroVEP": "long",
            "fechaHoraCreacion": "string",
            "fechaExpiracion": "string",
            "fechaVencimiento": "string",
            "nroFormulario": "integer",
            "orgRecaudDesc": "string",
            "codTipoPago": "integer",
            "pagoDesc": "string",
            "pagoDescExtracto": "string",
            "usuarioCUIT": "long",
            "autorizanteCUIT": "long",
            "contribuyenteCUIT": "long",
            "establecimiento": "integer",
            "concepto": "integer",
            "conceptoDesc": "string",
            "subConcepto": "integer",
            "subConceptoDesc": "string",
            "periodoFiscal": "integer",
            "anticipoCuota": "integer",
            "importe": "decimal",
            "ownerCuit": "long",
            "ownerTransactionId": "long",
            "Detalles": {
                "Detalle": [
                    {
                        "campo": "integer",
                        "campoTipo": "string",
                        "campoDesc": "string",
                        "contenido": "string",
                        "contenidoDesc": "string"
                    }
                ]
            },
            "Obligaciones": {
                "Obligacion": [
                    {
                        "impuesto": "integer",
                        "impuestoDesc": "string",
                        "importe": "decimal"
                    }
                ]
            }
        },
        "CP": {
            "cpId": "long",
            "nroVEP": "long",
            "contribuyenteCUIT": "long",
            "importe": "decimal",
            "sucursal": "integer",
            "tipoSucursal": "integer",
            "terminal": "string",
            "operador": "string",
            "formaPago": "integer",
            "moneda": "integer",
            "bancoPagador": "integer",
            "entidadDePago": "integer",
            "codControl": "string",
            "nroTransaccion": "long",
            "nroTarjeta": "decimal",
            "posEstablecimiento": "long",
            "posNombre": "string",
            "cbu": "decimal",
            "codTipoPago": "integer",
            "codRechazoDebDir": "integer",
            "fechaHoraPago": "string",
            "fechaAnulacion": "string",
            "fechaPosting": "string"
        }
    }
}