Ofimedic Web Service (1.0.0)

Introducción

Especificaciones de los métodos que permiten interactuar con la información almacenada en las bases de datos de Ofimedic.

Especificaciones

  • La URL para acceder al servicio tendrá la siguiente estructura:
    • https://{URL}/services.asmx/{NombreMétodo}

  • Los parámetros de entrada que son obligatorios están marcados como tal.
    • Hay parámetros de entrada que pueden no estar marcados como obligatorios, pero que lo sean bajo ciertas condiciones, las cuales están indicadas.

  • Si un parámetro es opcional, hay que pasar un espacio en blanco.

  • Todas las llamadas que incluyen los parámetros fechaInicio y fechaFin están limitados a un periodo máximo de un año.

  • Si no se indica como parámetro el identificador único, solo se permiten llamadas entre las 21:00h y las 10:59h.

  • Todos los mensajes de respuesta estarán formateados en JSON.

  • En cada llamada hay que indicar como parámetro un código/token que se obtiene mediante 2FA vía email con la función SetAuth.

  • El token tiene una validez de 2 horas.

  • En todos los métodos de devolución de datos podemos indicar el parámetro fechaModificacion. Si se indica dicha fecha, se devolverán los registros modificados desde esa fecha (incluída) hasta el día actual.

Historial de cambios

Lista actualizada con los cambios realizados. Se indican las fechas y la descripción de los cambios. Se muestra del cambio más reciente al más antiguo.

05/05/2025

  • Modificación en GetDelegaciones: inclusión de todos los campos de Persona Jurídica y el campo textoLOPD

26/02/2025

  • Creación de GetPacienteId y GetPaises
  • Modificación en GetDoctores: inclusión de los campos titulacion, numColegiado, observaciones y fotografia

30/01/2025

  • Modificaciones en GetVisitas: inclusión de los campos observaciones, salaID y consultorioID
  • Modificación en GetPacientes: inclusión del campo observacionesHistoria

18/10/2024

  • Modificación en GetPacientes: inclusión del campo tipoPaciente

08/10/2024

  • Creación de SetLlamada
  • Modificación en GetDoctores

03/10/2024

  • Incorporación del parámetro pacienteID en GetVisitas, GetVentas, GetCobros, GetPresupuestos, GetPresupuestosLineas, GetBonos y GetVentasDirectas

06/08/2024

  • Modificación en GetPacientes: inclusión del campo fechaAlta

29/07/2024

  • Modificación en GetDocumentos: inclusión del campo ext

26/07/2024

  • Creación de GetDocumentos

19/06/2024

  • Ampliación de GetDoctores, GetDelegaciones, GetVisitas, GetPresupuestos y GetTarifas
  • Creación de GetConsultorios y GetPresupuestosLineas

08/05/2024

  • Ampliación de GetVisitas

12/04/2024

  • Ampliación de GetPacientes

26/02/2024

  • Modificación en GetPacientes, incluyendo paginación de resultados

19/02/2024

  • Incorporación del parámetro de entrada fechaModificacion a todos los métodos de devolución de datos

15/02/2024

  • Modificación de fechas

30/01/2024

  • Modificación horario permitido de llamadas
  • Añadido 2FA para todas las llamadas

19/12/2023

  • Creación del documento
Languages
Servers
Test

https://ws.ofimedic.com/ofimedicws/test/services.asmx/

Autenticación

Autenticación con el servidor.

Operations

Obtención de datos

Obtiene las listas con los datos a partir de los valores especificados.

Operations

Series de facturación

Request

Obtiene las series de facturación de Ofimedic.

Query
tokenstringrequired

Código o Token de la sesión.

Example: token=1234
facturaSerieIDstring

Identificador de la serie de facturación.

Example: facturaSerieID=1
showBajasstring

Vacío o “1” para devolver todos los registros. “0” para devolver solo los registros dados de alta.

Example: showBajas=1
fechaModificacionstring(date)

Fecha de modificación.

Example: fechaModificacion=01/01/1970
curl -i -X GET \
  -u <username>:<password> \
  'https://ws.ofimedic.com/ofimedicws/test/services.asmx/GetFacturasSeries?facturaSerieID=1&fechaModificacion=01%2F01%2F1970&showBajas=1&token=1234'

Responses

Relación de series de facturación

Bodyapplication/jsonArray [
idinteger

Identificador de la serie de facturación.

Example: 1
nombrestring

Nombre de la serie de facturación.

Example: "Serie de facturación 1"
clavestring

Clave de la serie de facturación.

Example: "A1"
numeradorinteger

Numerador de la serie de facturación.

Example: 82
delegacionIdinteger

Identificador de la delegación de la serie de facturación.

Example: 1
]
Response
application/json
[ { "id": 1, "nombre": "Serie 1", "clave": "B2", "numerador": 82, "delegacionId": 1 } ]

Servicios y artículos

Request

Obtiene los Servicios/Artículos de Ofimedic.

Query
tokenstringrequired

Código o Token de la sesión.

Example: token=1234
servicioArticuloIDstring

Identificador del Servicio/Artículo.

Example: servicioArticuloID=1
showBajasstring

Vacío o “1” para devolver todos los registros. “0” para devolver solo los registros dados de alta.

Example: showBajas=1
fechaModificacionstring(date)

Fecha de modificación.

Example: fechaModificacion=01/01/1970
curl -i -X GET \
  -u <username>:<password> \
  'https://ws.ofimedic.com/ofimedicws/test/services.asmx/GetServiciosArticulos?fechaModificacion=01%2F01%2F1970&servicioArticuloID=1&showBajas=1&token=1234'

Responses

Relación de Servicios/Artículos

Bodyapplication/jsonArray [
idinteger

Identificador del Servicio/Artículo.

Example: 1
descripcionstring

Descripción del Servicio/Artículo.

Example: "Consulta general"
descripcionFiscalstring

Descripción fiscal del Servicio/Artículo

Example: "Consulta general"
esArticuloboolean

“False” si es servicio, “True” si es material

Example: true
tarifaIdinteger

Identificador de la tarifa del Servicio/Artículo

Example: 1
categoriaIdinteger

Identificador de la categoría del Servicio/Artículo

Example: 1
grupoIdinteger

Identificador del grupo del Servicio/Artículo

Example: 1
subGrupoIdinteger

Identificador del SubGrupo del Servicio/Artículo

Example: 1
subGrupostring

Nombre del SubGrupo del Servicio/Artículo

Example: "Consulta Despacho"
baseImponiblenumber(float)

Base imponible del Servicio/Artículo.
Admite decimales.

Example: 50
tipoIVAIdinteger

Identificador del tipo de IVA del Servicio/Artículo

Example: 5
IVAnumber(float)

Porcentaje de IVA del Servicio/Artículo.
Admite decimales.

Example: 21
importenumber(float)

Importe del Servicio/Artículo.
Admite decimales.

Example: 60.5
precioCostenumber(float)

Precio de coste del Servicio/Artículo.
Admite decimales.

Example: 9.99
otrosCostesnumber(float)

Otros costes del Servicio/Artículo.
Admite decimales.

Example: 6.35
delegacionesArray of objects

Delegaciones disponibles del Servicio/Artículo.

facturaSerieIdinteger

Identificador de la serie de facturación del Servicio/Artículo

Example: 1
especialidadIdinteger

Identificador de la especialidad del Servicio/Artículo

Example: 1
]
Response
application/json
[ { "id": 1, "descripcion": "Consulta general", "descripcionFiscal": "Consulta general", "esArticulo": true, "tarifaId": 1, "categoriaId": 1, "grupoId": 1, "subGrupoId": 1, "subGrupo": "Consulta Despacho", "baseImponible": 50, "tipoIVAId": 5, "IVA": 21, "importe": 60.5, "precioCoste": 9.99, "otrosCostes": 6.35, "delegaciones": [], "facturaSerieId": 1, "especialidadId": 1 } ]

Tarifas

Request

Obtiene las tarifas de Ofimedic.

Query
tokenstringrequired

Código o Token de la sesión.

Example: token=1234
tarifaIDstring

Identificador de la tarifa.

Example: tarifaID=1
showBajasstring

Vacío o “1” para devolver todos los registros. “0” para devolver solo los registros dados de alta.

Example: showBajas=1
fechaModificacionstring(date)

Fecha de modificación.

Example: fechaModificacion=01/01/1970
curl -i -X GET \
  -u <username>:<password> \
  'https://ws.ofimedic.com/ofimedicws/test/services.asmx/GetTarifas?fechaModificacion=01%2F01%2F1970&showBajas=1&tarifaID=1&token=1234'

Responses

Relación de tarifas

Bodyapplication/jsonArray [
idinteger

Identificador de la tarifa.

Example: 1
nombrestring

Nombre de la tarifa.

Example: "Tarifa privada"
tipointeger

“0” significa tarifa privada.
“1” significa que es una compañía externa.

Example: 0
nifstring

NIF de la tarifa.

Example: "A00000000"
direccionstring

Dirección de la tarifa.

Example: "Gran Via 1"
poblacionstring

Población de la tarifa.

Example: "Barcelona"
cpstring

Código postal de la tarifa.

Example: "01234"
provinciastring

Provincia de la tarifa.

Example: "Barcelona"
paisstring

País de la tarifa.

Example: "España"
teléfonostring

Teléfono de la tarifa.

Example: "900000000"
emailstring

Email de la tarifa.

Example: "example@correo.com"
idExternostring

Identificador externo de la tarifa.

Example: "TP012"
delegacionesstring

Delegaciones asociadas a la tarifa.

Example: "Delegación 1, Delegación 4"
bajaboolean

“True” si el registro está dado de baja, “False” si no está dado de baja.

Example: false
]
Response
application/json
[ { "id": 1, "nombre": "Tarifa Privada", "tipo": 0, "nif": "A00000000", "direccion": "Calle Ejemplo 1", "poblacion": "Barcelona", "cp": "04321", "provincia": "Barcelona", "pais": "España", "teléfono": "900000000", "email": "ejemplo@correo.com", "idExterno": "TP012", "delegaciones": "Delegación 1, Delegación 4", "baja": false } ]

Otras acciones

Respuesta de búsqueda de datos a partir de los parámetros y valores especificados.

Operations