What PI1.4 system outputs asks for in a SOC 2 audit
PI1.4 asks the organization to make system output available, or deliver it, completely, accurately and on time in line with its specifications, and to show that the output reaches only the people it was meant for. For a SOC 2 that includes the processing integrity category, an auditor will want to see how outputs such as reports, invoices, data files, API responses and notifications are produced, protected in transit and at rest, sent only to intended recipients, and recorded so that any delivery can be traced afterward. The criterion is only tested when processing integrity is in scope. If your report covers only the common criteria CC1 to CC9, PI1.4 does not apply, although the access and logging controls it depends on still will.
The risk is four-fold: output that is wrong, late, leaked or untraceable. A wrong output, such as a billing file with misstated totals, damages customers who act on it. A late output breaks the service level the customer contracted for. A leaked output sends personal or confidential data to someone outside the intended audience, and an untraceable output leaves you unable to prove what was sent, to whom and when. PI1.4 differs from its siblings in where the control sits. PI1.2 governs inputs entering the system, PI1.3 governs what happens during processing, and PI1.5 governs how items are stored. PI1.4 concerns the point where results leave the system, so an auditor will test the delivery path, recipient controls and output logs separately from the processing logic upstream.
Start by listing every output your system produces and every channel it uses, including scheduled exports, API responses, email, file transfers and shared links. For each one, confirm who may receive it, how the recipient is authorized, and which log records the send. Ask your auditor which sample of output events they intend to select and whether they expect evidence from the delivery system, the application or both. On a self-hosted stack, audit logging is a common source. Nextcloud's admin_audit app, for example, writes additional event information to audit.log in the data directory or to a path set with logfile_audit. Confirm with your own configuration whether that log captures the sharing and download events your outputs depend on, and where it is retained.
Which outputs, systems and third parties fall under PI1.4
Scope for PI1.4 starts with a list of everything the system delivers to people or other systems. Each output, the system that produces it and any provider that carries it then needs to appear in the system description, because the examination tests only what the description says is in scope.
Customer-facing reports and exports
Dashboards, scheduled PDF reports, CSV exports and downloadable statements are output in the sense of PI1.4 when customers rely on them. Record which reports exist, who can generate them, what data each includes and whether the report is produced by the application or by a separate reporting job. Confirm that each report is named in the system description, since an unlisted report is an unexplained gap for the assessor. Inventory every export path, including support tooling that lets staff pull customer data on request.
API responses and webhooks
Responses returned to integrating systems and webhook payloads pushed to customer endpoints are outputs that leave the platform without a person reviewing them. Document the schema, the error responses and the retry behavior for failed deliveries, because delivery completeness is part of what PI1.4 asks about. Check whether webhook logs record which payloads were sent, to which endpoint, and whether they were acknowledged.
Files, notifications and customer deliverables
Invoices, statements, alerts, emails and files placed in shared folders are the outputs most likely to be forgotten in scoping, because they often come from background jobs. List each notification type, its trigger and its recipient rules. Where a deliverable is a file, confirm where it is stored, how the recipient is authenticated and what happens when a link expires or is forwarded.
Systems that generate and distribute output
Map the application servers, batch schedulers, reporting databases and message queues that create output, and the components that send it. A reporting replica or a queue can produce output that the application never shows directly. Each system that touches output belongs in the system boundary, with its owner and its logs identified, so the assessor can trace an output from creation to delivery.
Subservice providers that carry output
Email delivery services, SMS gateways, managed file transfer and content delivery networks handle output after it leaves your systems. Decide whether each provider is a subservice organization in your description, and collect its own SOC report or equivalent evidence where you rely on it. Note which complementary user entity controls your customers must perform, such as checking recipient addresses before they enable forwarding.
Output logs and the system description
Logs that record who received what output, and when, are evidence for PI1.4 and must cover the systems and providers named in scope. The description of the system has to match the outputs you actually run, so review it whenever a report, integration or provider changes. Self-hosted components such as Nextcloud can write extra audit events to audit.log, which you should confirm covers the file sharing activity you intend to describe.
How an assessor tests PI1.4 in a Type 2 examination
In a Type 1 style design check, or the design portion of a Type 2, the assessor asks whether the controls over system output would work as described if they ran as written. The assessor reads the system description, the written procedures for producing and releasing output, and the control matrix, then walks through how a report, file or data feed moves from the processing system to a recipient. The question is whether protection, distribution limits and recordkeeping are built into that path, not whether a single delivery went well.
- Output inventory: a list of each output the service produces for customers, such as reports, exports, invoices or API responses, with its owner and destination.
- Distribution rules: documented criteria for who may receive each output, and whether the system enforces them or a person checks them by hand.
- Protection design: how outputs are encrypted, access-restricted and expired while they sit in staging or download areas.
- Logging design: which events about output creation, access and transmission are recorded, where the records go and who can change them.
- Exception handling design: the steps for failed or incomplete deliveries and who approves a resend.
Before fieldwork, confirm that each design point matches what engineers actually built, because a gap between the written design and the running system is a common reason a design conclusion changes.
For a Type 2 examination, the assessor tests whether the output controls worked consistently across the observation period. This tab covers what the assessor requests over the whole window, which is where most findings arise. The assessor looks for evidence that controls ran every time they were supposed to, and that access to output repositories stayed limited to the people the design names.
- Access lists over time: periodic listings of who could read, write or export from output stores, together with the reviews that compared them with approved roles.
- Recipient approvals: records showing that new or changed output recipients were approved before the first delivery.
- Reconciliation records: evidence that totals or record counts in outputs were compared against source data, with the sign-off and follow-up for differences.
- Error and retry records: tickets or logs for failed deliveries, including how they were detected, corrected and confirmed.
- Control change history: records of changes to output routing or access rules, with the approval that preceded them.
Common exceptions include access reviews completed late or without a named reviewer, recipient lists that were changed without an approval record, and reconciliations that were performed but not signed. Ask the assessor for the exact population and period for each request before you assemble the evidence.
Sampling tests individual output deliveries against the controls. The assessor selects items from the population of deliveries in the period, then requests the record for each item and checks it against the expected steps. The sample design is the assessor's decision, and the population must be complete for sampling results to mean anything, so the organization should be able to show that its delivery log captures every output.
- Complete population: a log or system export showing all deliveries in the period, reconciled to the source systems that generated them.
- Per-item evidence: for each sampled delivery, the recipient, the approval reference, the timestamp and the confirmation of completeness and accuracy.
- Timeliness checks: comparison of scheduled and actual delivery times against the agreed specification.
- Unauthorized recipient checks: evidence that deliveries to addresses or accounts outside the approved list were blocked or investigated.
- Exception ticket linkage: for any failed sampled item, the incident or correction record that shows how it was resolved.
A frequent exception is a sampled delivery with no approval reference, or a population export that omits deliveries sent by a secondary job or manual process. Before fieldwork, run a completeness check on the delivery log using the same source the assessor is likely to use, and confirm the sampling approach with your auditor in writing.
How to implement PI1.4 controls step by step
This sequence moves from defining what the system produces to proving, after the fact, that each output reached the right party complete and on time. Each step leaves a record an auditor can sample against the PI1.4 points of focus.
Define output types and specifications
Start by listing every output the system produces, such as customer reports, exports, API responses, invoices, notifications and scheduled files. For each one, record its content, format, expected timing, the processing specification it must meet and the owner accountable for it. Product or operations owners sign off so the specification is agreed rather than assumed. The output is an output register, a table with one row per output type that names the owner, specification, format and delivery channel.
Restrict where output is stored
Decide where each output type may live while it waits for pickup or delivery, then configure storage so only that location is used. Engineering owns the configuration, typically through access controls on shared folders, object storage buckets and temporary directories, with expiry on temporary files. Security reviews the settings against the register. The output is a storage map that shows each output type, its approved location, the roles that can read it and the retention or deletion rule applied.
Set recipient rules and transfer encryption
For each output type, write down who may receive it, through which channels and under what authentication. Recipients are usually named accounts, customer tenants or defined external systems, and anything outside that list is blocked by default. Transfers should use encrypted channels, and the rule should say what happens when a recipient address changes. The output is a recipient matrix and a transfer standard that the delivery configuration can be checked against during testing.
Add completeness and accuracy checks on delivery
Build checks that compare what was sent with what was expected. Typical checks include record counts, control totals, checksums, schema validation and a timing check against the specification. Failed checks should stop or quarantine the delivery and raise an alert to the owner. Engineering builds these checks and QA tests them with known good and known bad outputs. The output is a documented check library, with test results showing each check catches the failure it is designed for.
Log output activity
Turn on logging for every generation, retrieval, transfer and failed delivery, recording who or what acted, which output, when, to which recipient and the result. Logs should be protected from alteration and retained for a period set by policy. Where the platform supports it, enable audit trails for the applications that create and send output. For example, a self-hosted Nextcloud instance can route the admin_audit app to a dedicated audit.log file set through the logfile_audit key, and the team should confirm that the chosen path is writable only by the logging service. The output is a delivery log format with defined fields and a sample export that shows each event type.
Review exceptions and close them
On a set cadence set by the control owner, review failed checks, misdirected deliveries, late outputs and unusual retrieval patterns from the logs. Each exception is assigned, investigated, corrected and linked to a root cause, with any recipient impact assessed and communicated under the incident process. Management records the review as evidence that the control operated. The output is an exception log with a disposition for every item, which an auditor can sample across the observation period in a Type 2 examination.
How audit logs show who received what and when
An assessor testing PI1.4 wants proof that output reached the right people, in full and on time, and that the organization can reconstruct those deliveries later. Application and platform audit trails are often the most direct record of that activity, because they show which account accessed or was sent an output, when, and from where. A log that exists but does not capture share creation, download, export or API retrieval gives the assessor nothing to sample, so the first task is to map each output path (portal downloads, shared links, scheduled reports, API responses, email notifications) to the log events that prove it happened.
In a self-hosted Nextcloud deployment, the admin_audit app writes additional event information to audit.log in the data directory, or to a path set with logfile_audit. Teams should confirm which sharing, download and file-access events the app records in their installed version, decide where the file sits relative to backups and log rotation, and check who can read or edit it. For secrets and secrets-adjacent outputs, OpenBao audit devices keep a detailed JSON log of every API request and response, including errors, with most sensitive values hashed using HMAC-SHA256. That design preserves a record of who retrieved a secret without storing the secret in clear text, but it also means the reader must know how to correlate hashed values with the original request.
Logs only support PI1.4 if they are complete. Run a test in which known outputs are sent to an internal recipient, an external share and an API client, then confirm each delivery appears in the relevant log with the correct identity, timestamp and object. Record the results as evidence, check that logging cannot be disabled silently by an administrator, and confirm that the retention period covers the observation window of a Type 2 examination. Gaps found during this test are cheaper to fix before the auditor samples the logs than during fieldwork.
Evidence that passes PI1.4 and how to keep it current
An auditor testing PI1.4 looks for records that show outputs were protected, sent to the right people, complete and accurate, and logged. The artifacts below work together: specifications define what correct output is, authorization lists define who may receive it, and logs and reconciliations show what actually happened. Keeping each one current means generating it as a by-product of normal operations rather than assembling it before fieldwork.
Output specifications
The written definition of each output, including its format, content fields, recipients, delivery schedule and completeness rules. An auditor compares sampled outputs against this document, so every report, export and API response in scope should trace back to a versioned specification. Keep specifications in version control so each change carries an approver and a date. Check that the spec named in the control matches the output the system actually produces. Review it whenever a new output is added or an existing one changes shape.
Recipient authorization lists
A current list of who may receive each category of output, with the business owner who approved each entry. This is the record that proves outputs went only to intended parties. Generate the list from the identity provider's group membership where possible, so removing a user from a group also removes them from the list. Review it on the same cadence as access reviews, and record every addition or removal with a ticket reference. Stale entries for former staff or external contacts are a common exception.
Delivery and transfer logs
Records of what was sent, to whom, when and by which channel, produced automatically by the systems that distribute output. Logs should capture the destination, the object identifier and the result, and they should be shielded from the people whose activity they record. Confirm that log retention matches the period the auditor will sample. Test a few deliveries end to end during the year so you know the logs reflect what the recipient received, not only what the sender attempted.
Completeness and accuracy reconciliations
Records showing that the count, totals or checksums of output match the source data for each run or period. Reconciliations are how the organization demonstrates output was delivered completely and accurately, and they should be signed or reviewed by someone other than the preparer. Automate the comparison and store the result with the run identifier. Define in advance what happens when totals differ, and keep the investigation and correction as evidence. Unexplained differences that were never followed up are a frequent audit finding.
Access reviews for output repositories
Periodic reviews of who can read, write or administer the shared folders, buckets, report servers and API scopes that hold output. Scope the review to the repositories themselves, not only to the application, because direct file access can bypass the application's controls. Export the permission state at review time, have the owner certify it, and file the signed result. Confirm that removals made during the review are actually executed and logged.
Exception tickets
Tickets opened when an output was late, incomplete, misdirected or unrecorded, with the root cause, the correction and the preventive change. Exceptions are expected in a Type 2 period, and what distinguishes a well-run program is that each one has a documented owner and closure. Link tickets to the affected run, the recipient list and any changed specification. Review open exceptions in the monthly control meeting so none age out unnoticed before the observation period ends.
What meeting PI1.4 costs in money and effort
This table compares the cost components of meeting PI1.4 System outputs, showing who is paid, whether each cost is one-time or recurring, and what drives it up or down. Use it to scope a quote and to see where self-hosted open-source logging can reduce license spend while adding operating effort.
| Cost component | One-time or recurring | Who is paid or who does the work | What drives it |
|---|---|---|---|
| Engineering time to define output specifications | One-time, then revised on change | Internal engineers or an implementation partner | Number of output types, report formats and delivery channels |
| Build of distribution checks and recipient controls | One-time | Internal platform team or implementation partner | Number of systems that send output and how recipients are managed |
| Logging and transfer tooling licenses | Recurring | Commercial vendor, if a proprietary tool is chosen | Tool tier, event volume and retention period |
| Self-hosted logging and audit tooling | Recurring operating effort, usually no license fee | Internal operations staff, or a retainer if bought | Log volume, storage growth, upgrades and alert tuning |
| Hosting and storage for output and audit records | Recurring | Cloud provider or data center owner | Retention period, output volume and archive format |
| Evidence upkeep (reports, sample extracts, change records) | Recurring | Control owners, with support from the implementation partner if retained | Frequency of output reviews and number of owners |
| External testing of output protection, if bought | Recurring or per engagement | Independent security testing provider | Scope of applications, APIs and file transfer paths tested |
| Auditor sampling and fieldwork effort | Recurring each examination period | Independent CPA firm, paid under its engagement letter | Number of output channels in scope and sample sizes the auditor selects |
Who does what for PI1.4: your team, a partner and the auditor
Your organization owns PI1.4. The control environment is yours: you decide what output the system produces, who is an intended recipient, how output is protected and which deliveries count as complete and accurate against your own specifications. An implementation partner or auditor cannot make those decisions for you, and the report describes controls you operate.
- Output definitions: Name each output type (reports, exports, notifications, customer files, API responses) and the specification it must meet.
- Recipient decisions: Approve who may receive each output and keep the approval record, including changes to distribution lists.
- Protection rules: Set how outputs are encrypted, shared and expired, and who may override them.
- Exception handling: Decide what happens when a delivery fails, is incomplete or goes to the wrong party, and who signs off on the fix.
- Management assertion: Management signs the system description and representations that the controls operated as described.
Check that each output in your description has a named owner and a written specification before the auditor selects samples.
An implementation partner prepares the systems and evidence that show PI1.4 controls work. The partner builds and configures the logging, delivery checks and access paths in your own infrastructure, then documents how they operate. The partner does not decide who should receive output, does not approve exceptions for your organization and does not write the opinion on your controls.
- Logging configuration: Enable and retain audit records for output activity, for example by configuring the admin_audit app in Nextcloud to write to a dedicated log path.
- Secret and access logging: Set up audit devices for systems that release sensitive output, such as OpenBao, which records requests and responses with sensitive values hashed.
- Delivery checks: Build reconciliation steps that compare record counts or checksums between source and destination.
- Evidence packs: Export logs, configuration files and change records in a form the auditor can sample from.
- Documentation: Write runbooks that match the system description and the way controls actually operate.
Ask the partner to state in writing which parts of PI1.4 it configures and which parts remain with your staff.
The CPA firm performs the SOC 2 examination. It tests whether PI1.4 controls are suitably designed and, for a Type 2 report, whether they operated effectively over the period. It selects samples, inspects logs and recipient approvals, and issues the report under AT-C section 205 of the AICPA attestation standards. Only the firm issues the report or opinion.
- Design testing: Reviews whether output controls address the points of focus for PI1.4 in your system.
- Operating tests: Samples outputs and traces them to approvals, delivery records and audit logs.
- Independence: The firm must remain independent of the work it tests, which limits what a partner can prepare for it.
- Representation letter: The firm obtains written representations from management before issuing the report.
- Engagement letter: Confirm in the letter which systems, periods and categories are in scope.
If a firm offers to design your controls and then test them, ask how it will manage the independence conflict before you sign.
Organizations usually outsource the configuration of logging, the build of delivery reconciliation and the collection of evidence. They usually keep recipient approvals, exception decisions and the management assertion. Where a partner and the auditor both touch the same control, the boundary must be documented so that neither side tests its own work without disclosure.
- Typically outsourced: Log pipeline setup, retention configuration, reconciliation scripts and evidence exports.
- Typically kept in house: Recipient lists, output specifications, exception sign-off and management representations.
- Shared boundary: Ownership of log review. The organization must review logs, while a partner may build the review queries.
- Auditor limits: The auditor will not accept a partner's own summary as evidence without independent testing of the underlying records.
- Scope creep: If a partner ends up approving outputs, that role should be reassigned to your team before the observation period starts.
Before engaging anyone, ask each party to list its PI1.4 responsibilities in writing and confirm that the CPA firm has reviewed the split.
Common PI1.4 gaps and how to close them
Most PI1.4 findings come from outputs nobody specified, recipients nobody checked, and records nobody reads. The gaps below look different on the surface, but they share one root: the organization cannot show that output went where it should, arrived complete, and was watched after release. Each card names the gap, why an assessor cares, and the action that closes it.
Outputs with no defined specification
Reports, data feeds, invoices and API responses often ship without a written definition of their fields, format, timing or completeness rules. Without that specification, an assessor has nothing to test delivery against, and the team cannot say whether an output is wrong or simply unexpected. Close it by writing a one-page specification for each output class that names the content, format, delivery deadline and the owner who approves changes. Check that the specification matches what the system actually produces, not what the design document once said.
Exports sent outside the recipient list
Scheduled exports, shared links and ad hoc CSV downloads frequently reach people or external addresses that were never on the intended distribution list. This is the core PI1.4 risk of output going to unintended parties. Close it by mapping every output path, including email, file sharing and webhooks, to a named recipient group, then restricting destinations in the platform where it allows that. Review sharing settings for expiry and for links that grant access to anyone with the URL.
No completeness reconciliation
Teams often assume an output is complete because the job reported success. A job can finish while dropping rows, truncating files or skipping a source. Close it by reconciling record counts and control totals between the source and each delivered output, and by keeping the reconciliation result as evidence. Define what happens when totals do not match, including who is notified and whether delivery is held until the difference is explained.
Logs that exist but are not reviewed
Audit logs are often enabled during setup and then never read. An assessor testing PI1.4 will look for records of output activity and evidence that someone examined them. Close it by defining which output events are logged, such as exports, shares and failed deliveries, then assigning a reviewer and a review cadence. For Nextcloud, the admin_audit app writes additional event information to audit.log in the data directory, or to a path set with logfile_audit. Confirm the log location is protected and retained according to your policy.
Output repositories with excessive access
Shared folders, report stores and secrets vaults that hold generated output tend to accumulate broad read permissions over time. Anyone who can read the repository can take output outside the intended audience, whatever the delivery process says. Close it by granting read access by group, removing standing access that is no longer needed, and reviewing membership on a schedule. Where secrets or credentials are part of the output path, OpenBao audit devices keep a detailed JSON log of every API request and response, with most sensitive values hashed with HMAC-SHA256, which helps show who accessed what.
PI1.4 questions buyers ask before hiring help
How much effort does PI1.4 add to a SOC 2 examination?
PI1.4 adds a bounded set of evidence tasks, but only when processing integrity is in scope. The effort depends mainly on how many output channels your system has, such as reports, API responses, exports, invoices and notifications, and how many types of recipient receive them. For each channel, the organization must show who the intended recipients are, how output is protected in transit and at rest, that delivery is complete and accurate, and that output activity is recorded. Effort grows when logging is spread across tools and shrinks when it is already centralized. Confirm the in-scope channels with your CPA firm early, because late scope changes during fieldwork tend to add rework. Ask for the effort estimate in writing, tied to a named list of channels.
Can our team handle PI1.4 in-house without outside help?
Many teams can prepare PI1.4 themselves if one person owns output controls end to end and has time to collect evidence. The organization owns its controls in every case. Outside help usually makes sense when no engineer can explain how each output channel works, when logs are scattered across systems, or when the team lacks someone to run the quarterly evidence collection. An implementation partner can prepare systems, configure logging and assemble evidence, but only the independent CPA firm performing the examination issues the report. Before deciding, list your output channels, name an owner for each one, and check whether that owner can produce the records an auditor will sample without a rebuild of the tooling.
What does PI1.4 need from engineering and operations teams?
PI1.4 needs ongoing participation from both teams, because output controls live in code, configuration and daily operations. The work usually covers these parts:
- A current inventory of every output channel and its intended recipients, kept up to date as features change.
- Access and transport protections for output, such as encryption in transit and restricted access to exported files.
- Checks that output is complete and accurate, with records of failed or partial deliveries.
- Retained logs of output activity, with retention settings that match the audit period.
Engineering owns the implementation, and operations owns the recurring checks and log retention. Agree who signs off on changes to recipient lists, since an unreviewed change is a common source of exceptions in a Type 2 examination.
How long does PI1.4 work take for a fixed scope?
The duration depends on scope, current tooling and how much output evidence already exists, and no fixed duration applies to every system. Setup work moves faster when output channels are few, documented and already logged. It slows when channels are undocumented, when recipients are managed through manual exports, or when logs must be centralized before they can be sampled. For a Type 2 report, the observation period set by the examination also determines how much evidence must exist and how far back it must reach, so controls need to operate reliably from the start of that period. Ask any partner to show the phases, the deliverables for each phase, the dependencies on your team and the assumptions behind the schedule, all written into the fixed scope before work begins.
Do output logs alone satisfy PI1.4 in a SOC 2?
Logs alone are rarely enough. Logs show that output activity was recorded, which is one of the points of focus, but PI1.4 also asks whether output is protected, sent only to intended parties and delivered completely and accurately. An auditor will usually want logs that tie each output event to a recipient, a channel and an outcome, plus evidence of the controls that protect and check that output. A log that records a file was exported does not show who was allowed to receive it or whether the file was correct. Pair log review with recipient lists, access reviews for export functions and reconciliation or error-handling evidence. Confirm the sample of output events and evidence your auditor expects before you build the set.
Which open-source tools produce PI1.4 output evidence?
Two examples show the kind of records that can be produced. Nextcloud's admin_audit app logs additional event information to audit.log in the data directory, or to a path set with logfile_audit, which can support evidence of file sharing and access events. OpenBao's audit devices keep a detailed JSON log of every API request and response, including errors, with most sensitive values hashed with HMAC-SHA256, which can show when secrets or data were requested and returned. Neither tool alone proves the recipient controls or accuracy checks PI1.4 expects. Confirm for each platform which events are logged, where logs are stored, how long they are kept and whether sensitive values are masked as your auditor requires. Test log output in a non-production environment before relying on it as evidence.
What should we ask a partner for in a fixed-scope quote?
Ask for a written scope that names every output channel, recipient type and system in the boundary, since the quote follows from that list. The quote should also state the deliverables, such as configuration changes, evidence procedures, documentation and handover, and who performs each task. Confirm which work is one-time, such as setup and documentation, and which recurs, such as quarterly evidence collection or log reviews. Check the assumptions the price depends on, including the auditor's expectations, access to your environment and the people you must provide. Ask what is excluded, how changes to scope are priced and approved, and what support follows the engagement. A partner prepares systems and evidence, but the independent CPA firm issues the report, so the quote should say that plainly.
How DeployOpen prepares PI1.4 controls and evidence
DeployOpen's role in PI1.4 is to prepare the systems, settings and records that show how outputs are protected, delivered and logged. The scope is agreed in writing before work starts, and it should name each output channel in question, such as file sharing, reports, API responses and exports, along with the systems that produce and hold them. DeployOpen plans, implements and hardens the self-hosted open-source platforms involved inside the client's own cloud accounts, data centers or air-gapped networks, so the client keeps control of where output data lives and who can reach it.
On the logging side, the work covers configuring output-related audit trails. For example, Nextcloud's admin_audit app can write additional event information to audit.log in the data directory or to a path set with logfile_audit, and OpenBao audit devices keep a JSON record of API requests and responses, with most sensitive values hashed. Confirm with your own team which events, retention periods and access rules your output controls require, since those decisions belong to the organization. DeployOpen configures the platforms to produce these records and documents how they are collected, but it does not decide your control design.
DeployOpen does not issue SOC 2 reports, opinions or attestations. An independent CPA firm performs the examination, tests whether PI1.4 controls are designed and operating as described, and issues the report. DeployOpen's deliverables are the implemented configuration, the documentation of how each output control works and the evidence packages the client's team and the auditor will review. Before engaging, ask any implementation partner to confirm in writing which artifacts they will hand over, and ask your CPA firm which evidence formats and sampling approach it expects.

