Rest assured: when the app is responsible for saving a capture to your computer, it watches the save as a capture transaction. The transaction is not considered complete just because the shutter fired or a movie recording stopped. The app also has to prove that the expected computer-side file reached its final Path destination correctly.

This matters most during high-volume or critical sessions, such as school portraits, product batches, evidence work, medical documentation, copy stands, and other shoots where a missed save could affect many later decisions.

What a transaction protects

A capture transaction protects the computer-side save.

If your save mode expects an image or movie file on the computer, the app monitors the SDK transfer, the final Path save, and the final file proof before treating the capture as successful. If the capture is card-only, the app does not expect a final computer Path file for that capture.

The goal is simple: avoid the dangerous situation where the camera took a shot, but the file you expected on the computer is missing, incomplete, or not where the workflow expects it.

Legacy Remote SDK captures

In Legacy Remote SDK mode, the app receives media data from the Nikon SDK and saves it through the final Path pipeline.

For a computer-side still-image or movie save, the transaction checks that:

  • The SDK delivered the expected media data.
  • The final Path location was selected.
  • The app wrote the data to a temporary pre-publish .ttctmp file.
  • The temporary file was renamed to the final image or movie extension.
  • The final file exists.
  • The final file size matches the SDK-received data.
  • The read-only file attribute was applied when that setting is enabled.

The .ttctmp file is a temporary pre-publish file. It keeps folder watchers, antivirus scanners, scripts, and image browsers from reacting to a partly written final file. The final renamed file is the proof that matters to the capture transaction.

Unified Z SDK v2 captures

In Unified Z SDK v2 mode, Nikon first writes computer-side still images into a capture-specific staging folder. The app then audits the staged originals and copies them through the normal Path rules to your final destination.

For computer-side still-image saves, the transaction checks that:

  • A capture-specific GUID staging folder was created.
  • Nikon's StartShooting request succeeded.
  • Shooting status reached a terminal state.
  • Staged files were found inside the expected staging folder.
  • The staged file sizes stabilized before final copy.
  • The app copied each staged original to a temporary final Path file.
  • The temporary file was renamed to the final extension.
  • The final file exists and matches the staged original size.
  • The capture manifest records the audit result.

The staged originals are retained for recovery and support. The app does not automatically delete Nikon-produced staged originals after the final Path copy.

What happens if proof fails

If the app cannot prove that a required computer-side capture was saved correctly, it treats that as a critical capture save failure.

When this happens:

  • A Guidance error alert appears at the top of the app.
  • The Log records the SDK mode, body, save mode, failed phase, relevant paths, and byte counts when available.
  • Pending capture workflow commands are cancelled so a sequence does not keep shooting into the same failure.
  • Normal Ready or progress messages should not hide the failure alert.
  • If enabled, the app disconnects the body after the alert is raised.

Read the Guidance alert first. Then open the Log if you need the detailed diagnostic information.

Disconnect after critical capture save error

Settings > Body > Transactions includes Disconnect after critical capture save error.

Enable this when continuing after a failed save would be worse than stopping the session. For critical production work, disconnecting is often the safer choice because it makes the problem obvious and prevents more captures from entering the same failed save path.

Leave it disabled if you want the camera to remain connected while you read the alert and decide what to do next. The app still raises the Guidance error alert and writes the Log details when the setting is off.

Testing the failure path

Settings > Body > Transactions also includes SDK-specific debug capture test flags. These flags deliberately force capture transaction failures so you can confirm that the alert, Log, workflow cancellation, and optional disconnect behavior are visible before relying on the workflow in production.

Use these only during a test session. Leave them disabled for normal shooting.

Legacy debug capture test flags:

  • Force legacy SDK capture error
  • Force legacy transfer error
  • Force final PATH save failure
  • Force final PATH size mismatch

v2 debug capture test flags:

  • Force v2 SDK capture error
  • Force v2 staging audit failure
  • Force final PATH save failure
  • Force final PATH size mismatch
  • Force unexpected SDK saved path

After a forced failure, confirm that you saw the Guidance error alert, that the Log contains a DEBUG TEST entry, and that the body disconnected if Disconnect after critical capture save error was enabled. Then disable the test flag before continuing normal capture work.

What to send support

If you contact support after a capture transaction failure, include:

  • The Guidance alert title and message.
  • The Log file.
  • The active Nikon SDK mode.
  • The connected body model.
  • The capture save mode.
  • The final Path folder you expected.
  • The v2 staging folder or capture manifest when Unified Z SDK v2 was used.

This evidence usually makes the failure reconstructable without guessing.