Objeto Informe de Gastos

Puedes hacer uso de la API para solicitar la información de uno o más informes de gastos de tu empresa. Por ahora sólo se permite leer información, no crear informes o actualizar la información de los informes creados.

Método: getExpenseReports

Método para obtener una lista de informes de la empresa según parámetros definidos.

Parámetro Descripción
Método GET
URL https://api.rindegastos.com/v1/getExpenseReports<params>
Params Parámetros que pueden ser agregados a la solicitud para discriminar qué informes se desea obtener. Los parametros posibles son:
Since * date Fecha desde cuándo contar los informes de gastos en formato YYYY-MM-DD.
Until date Fecha hasta cuándo contar los informes de gastos en formato YYYY-MM-DD.
TypeDateFilter integer Indica en base a cuál fecha vamos a filtrar usando Since y Until donde: 1 = CloseDate (por defecto) y 2 = SendDate.
Currency string(3) Código ISO de la moneda que se desea filtrar. Por ejemplo USD para dólar americano.
Status integer Estado en que se encuentran los informes en donde: 0 = Abierto o En proceso; 1 = Cerrado. Si se deja en blanco se toman informes en ambos estados.
ExpensePolicyId integer Identificador interno de Rindegastos de la política bajo la cual se ha creado el informe de gastos.
IntegrationStatus integer Buscar informes por estado de integración: 1 = Integrados o 0 = No integrados. Si se envía blanco no se agrega al filtro de busqueda.
IntegrationCode String(255) Buscar informes integrados, filtrando por el código de respuesta asignado posterior al proceso de integración.
IntegrationDate Date Buscar informes integrados, filtrando por fecha de integración en formato YYYY-MM-DD.
UserId integer Identificador interno de Rindegastos del usuario que envió el informe de gastos.
OrderBy integer Permite indicar bajo cual parametro vamos a ordenar la lista de informes obtenida donde: 1 = CloseDate, 2 = SendDate, 3 = Id. Por defecto se ordena en base a la fecha de envío (SendDate).
Order string "ASC" o "DESC" (default).
ResultsPerPage integer Número de Resultados por página.
Page integer Página de resultados. Por defecto = 1

Importante: el campo since es obligatorio y debe tener como maximo con un año de rango a la fecha o al until

A continuación se muestra un ejemplo usando el método getExpenseReports de la API de Rindegastos. Este método permite consultar los informes de gastos de la empresa.

https://api.rindegastos.com/v1/getExpenseReports?Currency=GBP&ResultsPerPage=2
METHOD GET
Authorization: Bearer <token>

El resultado ejemplo para esta llamada se muestra a continuación:

{
  "Records": {
    "TotalRecords": 1,
    "Reports": 1,
    "Page": 1,
    "Pages": 1
  },
  "ExpenseReports": [
    {
      "Id": 1,
      "Title": "New Expense Report",
      "ReportNumber": "1",
      "SendDate": "2017-06-27",
      "CloseDate": "2017-06-29",
      "EmployeeId": 2,
      "EmployeeName": "John Lemon",
      "EmployeeIdentification": "",
      "ApproverId": 4,
      "ApproverName": "Apple MacCartney",
      "PolicyId": 6,
      "PolicyName": "East Devon",
      "Status": 1,
      "CustomStatus": "",
      "FundId": 0,
      "FundName": "",
      "ReportTotal": 36.99,
      "ReportTotalApproved": 36.99,
      "Currency": "GBP",
      "Note": "Check",
      "Integrated": "",
      "IntegrationDate": "",
      "IntegrationExternalCode": "",
      "IntegrationInternalCode": "",
      "NbrExpenses": 3,
      "NbrApprovedExpenses": 3,
      "NbrRejectedExpenses": 0,
      "ExtraFields": [
        {
          "Name": "Costing Code",
          "Value": "London",
          "Code": "0101"
        },
        {
          "Name": "Due Date",
          "Value": "2017-06-20",
          "Code": ""
        }
      ],
      "Files": [
        
      ]
    }
  ]
}

Método: getExpenseReport

Método para obtener un informe de gastos con toda su información.

Parámetro Descripción
Método GET
URL https://api.rindegastos.com/v1/getExpenseReport?Id=<id>
Params Para usar este servicio se debe definir el Id del informe de gastos y enviarlo como parámetro.
Id int Id único del informe de gastos que se desea obtener.

A continuaciónse muestra un ejemplo usando el método getExpenseReport de la API de Rindegastos. Este método permite consultar un informe de gastos específico de la empresa.

https://api.rindegastos.com/v1/getExpense?Id=1
METHOD GET
Authorization: Bearer <token>

El resultado ejemplo para esta llamada se muestra a continuación:

{
  "Id": 1,
  "Title": "New Expense Report",
  "ReportNumber": "1",
  "SendDate": "2017-06-27",
  "CloseDate": "2017-06-29",
  "EmployeeId": 2,
  "EmployeeName": "John Lemon",
  "EmployeeIdentification": "",
  "ApproverId": 4,
  "ApproverName": "Apple MacCartney",
  "PolicyId": 6,
  "PolicyName": "East Devon",
  "Status": 1,
  "CustomStatus": "",
  "FundId": 0,
  "FundName": "",
  "ReportTotal": 36.99,
  "ReportTotalApproved": 36.99,
  "Currency": "GBP",
  "Note": "Check",
  "IntegrationDate": "",
  "IntegrationExternalCode": "",
  "NbrExpenses": 3,
  "NbrApprovedExpenses": 3,
  "NbrRejectedExpenses": 0,
  "ExtraFields": [
    {
      "Name": "Costing Code",
      "Value": "London",
      "Code": "0101"
    },
    {
      "Name": "Due Date",
      "Value": "2017-06-20",
      "Code": ""
    }
  ],
  "Files": [
    
  ]
}

Método: setExpenseReportIntegration

Método para marcar como integrado o no integrado una rendición de gastos específica.

Parámetro Descripción
Método PUT
URL https://api.rindegastos.com/v1/setExpenseReportIntegration
Post Params Parámetros que pueden ser agregados a la solicitud para discriminar qué reportes se marcaraán como integrados o no integrados.
Id int Id único del reporte que se desea marcar como integrado o no integrado.
IntegrationStatus int Estado Integrado = 1 o bien No Integrado = 0.
IntegrationCode string(255) Permite comunicar un código de comprobante contable para enlazar información de la integración con la rendición en Rindegastos.
IntegrationDate DateTime Fecha/hora de integración YYYY-MM-DD H:i:s, por defecto si el valor del atributo IntegrationStatus es igual a cero, este valor será vacio.

A continuación se muestra un ejemplo usando el método setExpenseReportIntegration de la API de Rindegastos. Este método permite marcar o desmarcar el estado Integrado un gasto específico de la empresa.

curl 'https://api.rindegastos.com/v1/setExpenseReportIntegration' -X PUT
-d '{"Id":1,"IntegrationStatus":1,"IntegrationCode":"0303456","IntegrationDate":"2017-08-01 12:00:00"}'
-H 'authorization: Bearer <token> ' -H 'Content-Type: application/json'

{
    "Id": 1,
    "Title": "dsfsdfsd",
    "ReportNumber": "1",
    "IntegrationStatus": 1,
    "IntegrationCode": "0303456",
    "IntegrationDate": "2017-08-01 12:00:00"
}

Método: setExpenseReportCustomStatus

Método para actualizar el estado personalizado de una rendición de gastos específica.

Parámetro Descripción
Método PUT
URL https://api.rindegastos.com/v1/setExpenseReportCustomStatus
Post Params Parámetros que pueden ser agregados a la solicitud.
Id int Id único del reporte al cual queremos asignar un estado personalizado.
IdAdmin int Id único del usuario con rol getión bajo el cual vamos a asignar un estado personalizado. (debe tener definido permiso para gestionar). (Obligatorio)
CustomStatus string(20) Es el texto del estado personalizado que deseamos asignar a la rendición específica.
CustomMessage string(255) Es un texto descriptivo de la acción que estamos relizando. Este texto acompañara a la acción de cambio de estado en el timeline de mensajes & eventos de la rendición.

A continuación se muestra un ejemplo usando el método setExpenseReportCustomStatus de la API de Rindegastos.

curl 'https://api.rindegastos.com/v1/setExpenseReportCustomStatus' -X POST
-d '{"Id":4,"IdAdmin":5,"CustomStatus":"Waiting for payment","CustomMessage":"Payment By George Clinton"}'
-H 'authorization: Bearer <token> ' -H 'Content-Type: application/json'

{
    "Id": 1,
    "Title": "dsfsdfsd",
    "ReportNumber": "1",
    "CustomStatus": "Waiting for payment"
}

Importante: El método setExpenseReportCustomStatus no permite crear estados personalizados en políticas de gasto, solo asigna un estado a una rendición; es recomendable crear el o los estados personalizados en la políticas correspondientes antes de utilizar este método.

2024-10-30 23:33:30