Venta

Ultima actualización: Mayo 22, 2020

General

La venta es un documento que demuestra la venta de servicios o productos, la cual no tiene efectos fiscales.

Para realizar los procesos es necesario enviar los datos necesarios para cada uno al sitio de servicios web. Los datos para el envío son los siguentes:

Metodo: POST
Url: http://localhost/wservices/ *
Content-Type: application/json
*La URL puede variar

Los datos se pueden enviar de dos maneras, por medio de parametros o formulario en un campo con nombre data o por medio de archivos JSON.

A continuación te listamos las operaciones que puedes realizar para los Ventas con los servicios web del WServices.

Metodos

AddVenta

Para agregar un venta se debe enviar la esctructura que a continuación te presentamos la cual debe ser en JSON.


{
    "apikey": "YOUR_APIKEY",
    "provider": "Venta",
    "action": "AddVenta",
    "data": {
         "fecha": "2021-05-03",
         "comentario": "String con un comentario maximo 50 caracteres",
         "moneda": "MXN",
         "tipo_cambio": "1",
         "referencia": "1234567890",
         "sucursal": "0001",
         "almacen": "0001",
         "cliente": {
					 "clave":"0000000001"
				 },
         "vendedor": "0000000000",
      "productos": [
         {
            "clave": "0000000001",
					 "descripcion": "Descripción del producto que se imprimirá en el pedido, maximo 100 caracteres",
            "talla": "00",
            "color": "00",
            "cantidad": "1",
            "unidad": "PZ",
            "precio": "13.5"
         },
         {
            "clave": "0000000003",
            "talla": "00",
            "color": "00",
            "descripcion": "Descripción del producto que se imprimirá en el pedido, maximo 100 caracteres",
            "cantidad": "1",
            "unidad": "PZ",
            "precio": "13.5"
         }
      ]
	}
}
Respuesta del servicio

Si el Venta se pudo procesar con existo se te devolvera una respuesta como la siguiente:

{
  "type": "info",
  "code": "200",
  "message": "Venta generada: 01-0000001",
  "data": {
    "Venta": {
      "folio": "01-0000001",
      "operador": ""
    }
  }
}

Si ocurrio algún error el servicio respondera con el código y detalle del error:

{
    "type": "error",
    "code": "404",
    "message": "Detalle del mensaje de error"
}

Para editar o actualizar la información de una Venta ya agregada, debes de enviar el folio de la Venta en el campo folio del objeto JSON. El wServices cancela el folio enviado y genera un nuevo folio.

GetVenta

Para consultar los valores de una Venta en específico deberás colocar el folio en el campo folio como en la siguiente estructura.

Obtener Venta
{
    "apikey": "YOUR_APIKEY",
    "provider": "Venta",
    "action": "GetVenta",
    "data": {
         "folio": "01-000002"
		}
}
Respuesta del servicio

Si la búsqueda se pudo procesar con existo se te devolvera una respuesta como la siguiente:

{
  "type": "info",
  "code": "200",
  "message": "Consulta realizada correctamente",
  "data": {
    "Venta": {
      "folio": "01-0000002",
      "fecha": "2021-05-03",
      "sucursal": "0001",
      "almacen": "0001",
      "cliente": "0000000001",
      "vendedor": "0000000000",
      "comentario": "String con un comentario maximo 50 caracteres",
      "condicion_venta": "",
      "referencia": "1234567890",
      "moneda": "MXN",
      "tipo_cambio": "1",
      "estatus": "AC",
      "tabla": "",
      "documento": "",
      "productos": [
        {
          "clave": "0000000002",
          "descripcion": "Descripción del producto que se imprimirá en el pedido, maximo 100 caracteres",
          "tipo": "",
		  "numero_parte": "",
          "talla": "00",
          "color": "00",
		  "serie": "",
		  "lote": "",
          "cantidad": "1",
          "unidad": "PZ",
          "cantidad_control_1": "1",
          "unidad_control_1": "PZ",
          "cantidad_control_2": "1",
          "unidad_control_2": "PZ",
          "precio": "13.5",
          "precio_importe": "13.5",
          "descuento_factor": "0",
          "descuento_importe": "0",
          "precio_descontado": "13.5",
          "precio_descontado_importe": "13.5",
          "impuesto_factor": "0",
          "impuesto_importe": "0",
          "precio_neto": "13.5",
          "precio_neto_importe": "13.5",
          "partida": "1",
          "partida_descripcion": "Partida",
          "descripcion_ampleada": ""
        },
        {
          "clave": "0000000003",
          "descripcion": "Descripción del producto que se imprimirá en el pedido, maximo 100 caracteres",
          "tipo": "",
		  "numero_parte": "",
          "talla": "00",
          "color": "00",
		  "serie": "",
		  "lote": "",
          "cantidad": "1",
          "unidad": "PZ",
          "cantidad_control_1": "1",
          "unidad_control_1": "PZ",
          "cantidad_control_2": "1",
          "unidad_control_2": "PZ",
          "precio": "13.5",
          "precio_importe": "13.5",
          "descuento_factor": "0",
          "descuento_importe": "0",
          "precio_descontado": "13.5",
          "precio_descontado_importe": "13.5",
          "impuesto_factor": "0",
          "impuesto_importe": "0",
          "precio_neto": "13.5",
          "precio_neto_importe": "13.5",
          "partida": "1",
          "partida_descripcion": "Partida",
          "descripcion_ampleada": ""
        }
      ]
    },
    "fto_imp": "VN01TK"
  }
}

Si ocurrio algún error el servicio respondera con el código y detalle del error:

{
        "type": "error",
        "code": "405",
        "message": "Detalle del mensaje de error"
}

DelVenta

Este método se ocupa para cancelar una Venta previamente realizada.

En el campo folio se coloca el folio de la Venta que se desea cancelar.

Cancelar
{
    "apikey": "YOUR_APIKEY",
    "provider": "Venta",
    "action": "DelVenta",
    "data": {
         "folio": "01-0000001"
		}
}
Respuesta del servicio

Si la acción se pudo procesar con existo se te devolvera una respuesta como la siguiente:

{
  "type": "info",
  "code": "200",
  "message": "Venta cancelada: 01-0000001",
  "data": {
    "Venta": {
      "folio": "01-0000001",
      "operador": ""
    }
  }
}

Si ocurrio algún error el servicio respondera con el código y detalle del error:

{
    "type": "error",
    "code": "404",
    "message": "Detalle del mensaje de error"
}

GetVentaLista

Devuelve una lista con las ventas segun los criterios consultados.

Se puede realizar un filtro de busqueda por:

  • folio
  • sucursal
  • almacen
  • cliente
  • vendedor
  • grupo_comercial
  • fecha_inicio
  • fecha_final
  • estado
Obtener Lista de Ventas
{
    "apikey":"YOUR_APIKEY",
    "provider":"venta",
    "action":"GetVentaLista",
    "data":{
        "registros":10,
        "grupo_comercial":"0000000001"
    }
}
Respuesta del servicio

Si la búsqueda se pudo procesar con existo se te devolvera una respuesta como la siguiente:

{
    "type": "info",
    "code": "200",
    "message": "Consulta realizada correctamente",
    "data": {
        "venta": [
            {
                "folio": "01-0000001",
                "fecha": "11/02/2021",
                "tabla": "",
                "documento": "",
                "referencia": "",
                "comentario": "Pruebas",
                "sucursal": {
                    "clave": "0001",
                    "descripcion": "Central"
                },
                "almacen": {
                    "clave": "0001",
                    "descripcion": "Almacen general"
                },
                "cliente": {
                    "clave": "0000000001",
                    "descripcion": "Publico general"
                },
                "vendedor": {
                    "clave": "0000000001",
                    "descripcion": "Vendedor General"
                },
                "condicion_venta": {
                    "clave": "CONT",
                    "descripcion": "CONTADO"
                },
                "moneda": "MXN",
                "tipo_cambio": 1,
                "totales": {
                    "precio": 422.4138,
                    "descuento": 0,
                    "subtotal": 422.4138,
                    "impuesto": 67.586208,
                    "total": 490.000008
                },
                "productos": [
                    {
                        "id": "0001",
                        "clave": "0000000001",
                        "descripcion": "Desarrollo por hora",
                        "talla": {
                            "clave": "00",
                            "descripcion": "SIN TALLA"
                        },
                        "color": {
                            "clave": "00",
                            "descripcion": "SIN COLOR"
                        },
                        "tipo": "99",
                        "serie": [],
                        "lote": [],
                        "cantidad": 1,
                        "unidad": "SR",
                        "cantidad_control_1": 1,
                        "unidad_control_1": "SR",
                        "cantidad_control_2": 1,
                        "unidad_control_2": "SR",
                        "factor_U1C1": 1,
                        "factor_C1C2": 1,
                        "precio": 215.51724,
                        "precio_importe": 215.51724,
                        "descuento": 0,
                        "subtotal": 215.51724,
                        "impuesto": 34.482758,
                        "total": 249.999998,
                        "comentarios": ""
                    },
                    {
                        "id": "0002",
                        "clave": "0000000003",
                        "descripcion": "Memoria USB Kingston 32 gb 100 G3",
                        "talla": {
                            "clave": "00",
                            "descripcion": "SIN TALLA"
                        },
                        "color": {
                            "clave": "00",
                            "descripcion": "SIN COLOR"
                        },
                        "tipo": "01",
                        "serie": [],
                        "lote": [],
                        "cantidad": 1,
                        "unidad": "PZ",
                        "cantidad_control_1": 1,
                        "unidad_control_1": "PZ",
                        "cantidad_control_2": 1,
                        "unidad_control_2": "PZ",
                        "factor_U1C1": 1,
                        "factor_C1C2": 1,
                        "precio": 155.17241,
                        "precio_importe": 155.17241,
                        "descuento": 0,
                        "subtotal": 155.17241,
                        "impuesto": 24.827586,
                        "total": 179.999996,
                        "comentarios": ""
                    },
                    {
                        "id": "0003",
                        "clave": "0000000005",
                        "descripcion": "Galletas Animalitos 250g",
                        "talla": {
                            "clave": "00",
                            "descripcion": "SIN TALLA"
                        },
                        "color": {
                            "clave": "00",
                            "descripcion": "SIN COLOR"
                        },
                        "tipo": "02",
                        "serie": [],
                        "lote": [
                            {
                                "id": "0001",
                                "lote": "000001",
                                "cantidad_control_1": 5,
                                "cantidad_control_2": 5
                            }
                        ],
                        "cantidad": 5,
                        "unidad": "PZ",
                        "cantidad_control_1": 5,
                        "unidad_control_1": "PZ",
                        "cantidad_control_2": 5,
                        "unidad_control_2": "PZ",
                        "factor_U1C1": 1,
                        "factor_C1C2": 1,
                        "precio": 10.34483,
                        "precio_importe": 51.72415,
                        "descuento": 0,
                        "subtotal": 51.72415,
                        "impuesto": 8.275864,
                        "total": 60.000014,
                        "comentarios": ""
                    }
                ],
                "estatus": "FA"
            },
            {
                "folio": "01-0000002",
                "fecha": "11/02/2021",
                "tabla": "",
                "documento": "",
                ...
            }
        ],
        "registros": 2
    }
}

Si ocurrio algún error el servicio respondera con el código y detalle del error:

{
    "type": "error",
    "code": "405",
    "message": "Detalle del mensaje de error"
}

Otros

Por el momento no hay mas métodos disponibles, estos se estarán actualizando con el tiempo. Si consideras que hace falta algún método, envía un mensaje a dev@mproerp.com y se analizará la posibilidad de agregarlo al servicio web.