Ir al contenido

Contabilizar un asiento de diario en NetSuite

Contabilice asientos de diario desde tablas de proyecto de PlaidCloud en NetSuite con el paso Post NetSuite Journal Entry del flujo de trabajo. Esta guía crea un lote a partir de una tabla de encabezados y una tabla de líneas, lo previsualiza sin tocar NetSuite y luego lo contabiliza y lee el resultado.

  • Una Conexión de NetSuite operativa con un rol que pueda crear asientos de diario (acceso Create al registro Journal Entry, además de la configuración REST/OAuth que cubre la guía de lectura).
  • Dos tablas de origen en su proyecto:
    • Una tabla de encabezados con una fila por asiento de diario.
    • Una tabla de líneas con una o más filas de débito/crédito por asiento de diario.

Estructure sus tablas de encabezados y de líneas

Sección titulada «Estructure sus tablas de encabezados y de líneas»
  1. Cree o importe una tabla de encabezados con una fila por asiento de diario. Como mínimo necesita:

    Columna Se asigna a Obligatoria
    Un identificador de asiento ID de asiento Sí
    La subsidiaria de NetSuite Subsidiaria Sí
    La fecha del asiento Fecha de contabilización Sí
    La moneda de NetSuite Moneda No
    Un memo a nivel de asiento Memo No
    Un ID externo proporcionado por quien llama ID externo No
  2. Cree o importe una tabla de líneas con una o más filas por asiento de diario, que compartan el mismo identificador de asiento que su fila de encabezado:

    Columna Se asigna a Obligatoria
    El identificador de asiento ID de asiento Sí
    La cuenta del libro mayor Cuenta Sí
    El importe del débito (0 si no hay) Débito Sí
    El importe del crédito (0 si no hay) Crédito Sí
    Un memo a nivel de línea Memo No
    Departamento, clase, ubicación, entidad Departamento / Clase / Ubicación / Entidad No
  3. Agrupe los importes en estas dos tablas al nivel en que contabilice (un asiento por día, por documento o por lote) mediante sus pasos de tabla habituales (una tabla dinámica, una agregación con agrupación o una combinación). El ID de asiento es lo que vincula un conjunto de líneas con su fila de encabezado, así que créelo como una clave única por asiento de diario y compartida por todas las líneas que le pertenecen.

  1. Agregue un paso Post NetSuite Journal Entry a su flujo de trabajo.

  2. En la pestaña Conexión, establezca Conexión de NetSuite en su conexión de NetSuite y elija un Entorno.

  3. En la pestaña Datos:

    • Establezca Tabla de encabezados de asientos de diario y Tabla de líneas de asientos de diario en las tablas que creó anteriormente.
    • Deje marcada la opción Test Only Mode por ahora; consulte Vista previa y validación.
    • Deje marcada la opción Continue posting remaining entries if one entry fails, a menos que prefiera que un lote se detenga en seco con su primer asiento defectuoso.
    • Deje desactivada la opción Submit Asynchronously, a menos que necesite específicamente la ruta de aceptación asíncrona de NetSuite para un lote de gran volumen; consulte Envío asíncrono más abajo.
    • Establezca Tabla de resultados de la contabilización en una tabla que PlaidCloud pueda crear o sobrescribir. La necesitará en cada ejecución, no solo en la primera; consulte Lea la tabla de resultados.
  4. En la pestaña Asignación de encabezado, asigne las columnas de su tabla de encabezados a ID de asiento, Subsidiaria, Fecha de contabilización y, si las tiene, Moneda, Memo e ID externo. Use Filtros de encabezado si desea contabilizar solo un subconjunto de las filas de encabezado.

  5. En la pestaña Asignación de líneas, asigne las columnas de su tabla de líneas a ID de asiento, Cuenta, Débito, Crédito y, si las tiene, Memo, Departamento, Clase, Ubicación y Entidad. Use Filtros de línea de la misma manera.

Con Test Only Mode marcada, ejecute el paso. PlaidCloud crea cada asiento de diario a partir de sus datos asignados y realiza las mismas comprobaciones que haría antes de contabilizar (débitos y créditos equilibrados, campos obligatorios presentes, fecha de contabilización válida) sin realizar ni una sola llamada a NetSuite. No se contabiliza nada.

  1. Ejecute el paso (consulte Ejecución de un solo paso en un flujo de trabajo).

  2. Abra la tabla de resultados y confirme que cada fila que esperaba contabilizar muestra status = validated. Cualquier fila con error indica el ID de asiento y el problema, que suele ser un asiento descuadrado, una cuenta faltante o una subsidiaria o fecha de contabilización en blanco.

  3. Corrija los datos de origen (o sus asignaciones y filtros) de cada fila con error y vuelva a ejecutar hasta que el lote se valide sin errores.

Cuando un lote se valide sin errores, desmarque Test Only Mode y vuelva a ejecutar el paso. Esta vez PlaidCloud contabiliza realmente cada asiento validado en NetSuite.

Submit Asynchronously envía cada asiento con el encabezado de aceptación asíncrona de NetSuite, en lugar de esperar una creación y lectura de confirmación síncronas. NetSuite pone el asiento en cola y responde de inmediato; PlaidCloud lo registra como pending con una referencia de envío, en lugar de posted o error.

La tabla de resultados contiene una fila por cada asiento de diario intentado, sea cual sea el modo en que se ejecutó el paso:

Columna Descripción
journal_id El ID de asiento de su tabla de encabezados.
external_id El ID externo usado para este intento de contabilización (consulte más abajo).
internal_id El ID interno de NetSuite del asiento creado, o la referencia de envío asíncrono mientras está pending. En blanco en Test Only Mode y en caso de error.
status validated, posted, pending (Submit Asynchronously aceptó el asiento, pero NetSuite no lo ha confirmado) o error.
message Detalle del error en error. En blanco en posted/validated.

Cree los pasos posteriores (una notificación ante cualquier fila error, una combinación con su tabla de encabezados para registrar internal_id) a partir de esta tabla y no del estado de ejecución del propio paso, ya que un asiento defectuoso en un lote grande no hace fallar todo el paso cuando Continue posting remaining entries está activada.

Cada asiento se contabiliza con un ID externo determinista construido a partir de su proyecto, conexión, ID de asiento, Fecha de contabilización y los importes de sus líneas. Al volver a ejecutar el paso sobre un asiento sin cambios, se reutiliza ese mismo ID externo, y el propio manejo de IDs externos de NetSuite evita que se cree un duplicado, de modo que volver a ejecutar un flujo de trabajo tras un fallo transitorio es seguro para los asientos que no cambiaron.