Creación de VEPs para entidades externas (WSCREATEVEP)


Solicitud
import 'package:http/http.dart' as http;
import 'dart:convert';

// Creamos un cliente HTTP para llamar a la API
var headersWS = { 'Content-Type': 'application/json' };
var requestWS = http.Request('POST', Uri.parse('https://app.afipsdk.com/api/v1/afip/requests'));

// 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.
requestWS.body = json.encode({
    "environment": "prod",
    "method": "createVEP",
    "wsid": "setipagob2b_createvep",
    "params": {
        "token": "string",
        "sign": "string",
        "entidadDePago": 1,
        "vep": {
            "nroVEP": 1,
            "fechaHoraCreacion": "string",
            "fechaExpiracion": "string",
            "fechaVencimiento": "string",
            "nroFormulario": 1,
            "orgRecaudDesc": "string",
            "codTipoPago": 1,
            "pagoDesc": "string",
            "pagoDescExtracto": "string",
            "usuarioCUIT": 1,
            "autorizanteCUIT": 1,
            "contribuyenteCUIT": 1,
            "establecimiento": 1,
            "concepto": 1,
            "conceptoDesc": "string",
            "subConcepto": 1,
            "subConceptoDesc": "string",
            "periodoFiscal": 1,
            "anticipoCuota": 1,
            "importe": 1.5,
            "ownerCuit": 1,
            "ownerTransactionId": 1,
            "Detalles": {
                "Detalle": [
                    {
                        "campo": 1,
                        "campoTipo": "string",
                        "campoDesc": "string",
                        "contenido": "string",
                        "contenidoDesc": "string"
                    }
                ]
            },
            "Obligaciones": {
                "Obligacion": [
                    {
                        "impuesto": 1,
                        "impuestoDesc": "string",
                        "importe": 1.5
                    }
                ]
            }
        }
    }
});

// Reemplazar con tu access_token obtenido de https://app.afipsdk.com
var accessToken = "TU_TOKEN_AQUI";
headersWS['Authorization'] = "Bearer " + accessToken; 

// Realizamos la llamada a la API
requestWS.headers.addAll(headersWS);
http.StreamedResponse responseWS = await requestWS.send();

// En caso de error lo mostramos por consola
if (responseWS.statusCode != 200) {
    print(await responseWS.stream.bytesToString());

    throw new Error();
}

// Convertimos la respuesta en un objeto
var response = json.decode(await responseWS.stream.bytesToString());

// Mostramos la respuesta por consola
print(response);
Respuesta
{
    "createVEPReturn": "long"
}