Ir al contenido

SaveBill

Introduce una factura de proveedor que ha recibido su empresa, como hace Add Bill en la página Facturas de proveedor: por ejemplo, una factura que su propio sistema ha leído del correo electrónico de un proveedor. La nueva factura de proveedor tiene el estado Received, todavía sin partidas asignadas. Después, su equipo financiero le asigna sus partidas y la valida en TrakIT (consulte Asignar partidas). Para volver a leerla, utilice GetBill; para adjuntar la factura escaneada, utilice UploadDoc con Ref igual a bill; para rellenar sus campos de datos, utilice SaveDataField.

SaveBill lo llama el propio sistema de su empresa, con la sesión iniciada como un usuario de TrakIT con acceso a la API. Para que un proveedor le envíe sus propias facturas desde su sistema, utilice en su lugar la API de facturas de proveedor.

Cómo iniciar sesión y leer la respuesta: Autenticación, Respuestas.

POST /api/v1/SaveBill
Token: your-token
Content-Type: application/json
{
"BillID": 0,
"OfficeID": 3,
"EntID": 2214,
"BillNumber": "INV-2026-0042",
"BillDate": "2026-10-20",
"Received": "2026-10-21",
"DueDate": "2026-11-19",
"CurrCode": "USD",
"BillActual": 1150.00,
"TaxAmount": 150.00,
"ProfitCenter": "TRUCKING",
"Remarks": "Trucking for October"
}
Campo Obligatorio Significado
BillID No 0 u omitido para crear una factura de proveedor. El identificador de una factura de proveedor existente para definir su centro de beneficio: consulte Modificar una factura de proveedor.
OfficeID Sí El identificador de la empresa que recibió la factura de proveedor.
EntID Sí El identificador de la entidad que envió la factura de proveedor, por ejemplo un transportista por carretera. Consulte GetEntity.
EntType No El identificador del tipo de entidad del que procede la factura de proveedor, como Entity Type en la factura de proveedor. Si se omite, es el tipo propio de la entidad.
BillNumber Sí El número impreso en la factura de proveedor, hasta 30 caracteres. TrakIT lo guarda en mayúsculas, sin espacios.
BillDate Sí La fecha impresa en la factura de proveedor, con el formato yyyy-MM-dd.
Received Sí La fecha en que recibió la factura de proveedor, con el formato yyyy-MM-dd.
DueDate No La fecha de vencimiento del pago, con el formato yyyy-MM-dd.
CurrCode Sí La moneda de la factura de proveedor, por ejemplo USD.
BillActual Sí El importe facturado, impuestos incluidos: Total Amount (incl Tax). No puede ser 0, pero puede ser negativo.
TaxAmount No El impuesto de la factura de proveedor: Total Tax Amount.
TaxDeduct No La retención: el impuesto retenido del pago al proveedor, 0 o más.
ProfitCenter No El Code de uno de los centros de beneficio de la empresa. Los espacios y las mayúsculas no importan. null o "" para ninguno. Si se omite, una nueva factura de proveedor toma el Default Profit Center de la entidad si es uno de los de la empresa de la factura de proveedor.
Submitted No true para crear la factura de proveedor con el estado Submitted, de modo que deba aceptarse antes de tramitarse. El valor predeterminado, false, la crea con el estado Received.
Remarks No Observaciones internas.
ExtRemarks No Observaciones externas, que el proveedor ve en el portal.

Los nombres de los campos no distinguen entre mayúsculas y minúsculas, salvo ProfitCenter, que debe escribirse exactamente así. Envíe las fechas con el formato yyyy-MM-dd (consulte Fechas) y los importes como números JSON.

Regla Info si no se cumple
La solicitud tiene un encabezado Token. Token missing in header
El cuerpo es JSON. Incorrect Json syntax or bill missing
Cada campo tiene el tipo correcto, por ejemplo fechas que TrakIT puede leer. El motivo, con Code -1
El token es válido. Token invalid or expired, u otra respuesta indicada en Token de inicio de sesión
El usuario es un administrador del sistema con acceso a la API. API User must be SysAdmin with API Access
Con un BillID, una factura de proveedor tiene ese identificador. Not found
ProfitCenter, si se indica, es el código de un centro de beneficio de la empresa de la factura de proveedor. Profit Center '...' not found for this company
Se indica OfficeID. Company is required
Se indica EntID. Entity is required
BillDate no es posterior a hoy. Bill Date cannot be in the future
BillDate se indica y tiene como máximo 5 años de antigüedad. Bill Date cannot be older than 5 years
La factura de proveedor no está validada. Bill is already validated
Se indica CurrCode. Bill Currency is required
DueDate, si se indica, no es anterior a la fecha de la factura. Bill Due Date must be same or later than Bill Date
Received se indica y no es anterior a la fecha de la factura. Bill Received cannot be earlier than Bill Date
BillActual se indica y no es 0. Billed Amount is required
BillActual tiene como máximo 13 dígitos antes del separador decimal. Billed Amount is too large.
TaxAmount es como máximo la cuarta parte de BillActual. Tax Amount cannot exceed 25% of Billed Amount
TaxAmount tiene el mismo signo que BillActual. Tax Amount and Billed Amount must have the same sign
Remarks y ExtRemarks no contienen HTML: ningún < seguido de una letra, y no empiezan por =, + o @. Internal Remarks has possible html tags or disallowed text, External Remarks has possible html tags or disallowed text
Se indica BillNumber. Bill Number is required
BillNumber no contiene HTML, según la misma regla que las observaciones. Bill Number contains invalid characters
BillNumber tiene como máximo 30 caracteres, sin contar sus espacios. Bill Number cannot exceed 30 characters
Las comprobaciones propias de su empresa para guardar facturas de proveedor, si las tiene (consulte Validaciones y acciones). El mensaje de la comprobación
La entidad no tiene otra factura de proveedor con este número. Bill Number specified already exists for this entity and office
La empresa, la entidad, el tipo de entidad y la moneda existen en TrakIT. Unable to create Bill: ..., con Code -1

Cuando se crea una factura de proveedor, Code es 1 y Identity es el identificador de la nueva factura de proveedor. RetInfo es null: lea la factura de proveedor con GetBill.

{
"Code": 1,
"Info": "",
"RetInfo": null,
"RowsAffected": 0,
"Scalar": null,
"Identity": 109827
}

Cuando se guarda una factura de proveedor existente, Code es 1 y Identity es 0.

Para cambiar el centro de beneficio de una factura de proveedor que no está validada, envíe su BillID con ProfitCenter. SaveBill define el centro de beneficio de la factura de proveedor y deja sus demás detalles como están; aun así, los comprueba con las reglas anteriores. Modifique los demás detalles en la página de la factura de proveedor en TrakIT: consulte Modificar la factura de proveedor.

{
"BillID": 109827,
"ProfitCenter": "TRUCKING"
}
  • Guardar una factura de proveedor hace lo mismo que guardarla en la página: se anota en el registro de acciones de la factura de proveedor, se ejecutan las acciones propias de su empresa para las facturas de proveedor, el tipo de cambio de la factura de proveedor se vuelve a fijar a partir de los tipos de cambio de su empresa, y los campos de datos calculados se vuelven a calcular.
  • Una nueva factura de proveedor envía la notificación Created de las facturas de proveedor a los usuarios suscritos a ella (consulte Notificaciones).
  • Un número de factura solo se puede usar una vez por entidad. Si una solicitud agota el tiempo de espera y no sabe si se ha creado la factura de proveedor, búsquela con GetBillList (DateType Added) antes de volver a enviarla.