The external system
Not us
A file, a table, a call. That ERP’s name is not in the code. Nesso is not that system.
The record
The first close asks for confirmation. The record stays, with its history. It is not a deletion and it is not a forget.
Espo on one side
A row that is gone is not deleted in secret.
The key is the integration id plus the external value. If that key is already on Espo, the run updates. If it is not, it creates. If the hash is identical, it does not call Espo.
A record created by Nesso carries the team. Visibility is a rule: this row belongs to the Sales team, assigned to this person. It is not a permission invented outside Espo.
If the row is no longer in the file, the record on Espo is closed. The history stays. The first time a run would close records, it asks for confirmation: a whole list is not closed because of a truncated file, without someone seeing it.
Closing does not delete. It is not the forget function. A closed record can be reopened if the row comes back.
Write-back stays off until it is turned on. Once on, it writes only the named columns. It does not rewrite the whole file and it does not invent columns.
The outbound cursor is not this write. The cursor sends the mapped fields to an HTTP endpoint. Write-back writes on the source the row came from.
The passage
Nesso stands in the middle. It reads the channel, applies the mapping, and writes through Espo’s API. It does not open the CRM tables.
Not us
A file, a table, a call. That ERP’s name is not in the code. Nesso is not that system.
This is us
Channel, sheet, fields. If the write switch is off, it does not write. If the field belongs to Espo, it does not clear it.
The sheet
The record, if it is born, is born there. CRM mail stays in Espo. The Advanced Pack is not rewritten.
Nesso always has Espo on one side. It is not a bridge between any two systems.
The trial is the public repository. It starts an empty Espo. It does not import a production dump.
How the trial works