Skip to main content
Completing a form in SPF produces two results, and you need both. They serve different purposes and go to different places in your system.

The PDF

A filled, signed copy of the official government document. This is the compliance artifact: the thing an auditor asks for and the thing some jurisdictions require you to remit.

Tax parameters

The employee’s withholding elections as structured data. This is what your payroll system consumes to withhold taxes correctly from the employee’s paycheck.
Storing the PDF without applying the tax parameters means you have a signed form and wrong paychecks. Applying the tax parameters without storing the PDF means correct paychecks and no compliance record. You need both.

The PDF

The completed document comes back as a Base64-encoded string. Decode it and store it as a PDF file according to your retention obligations.

Signing modes

How the document is signed is controlled by a signForm setting with three options. PREVIEW is the default, so if you’re expecting a signed form you have to ask for one. When you use SIGN, the timestamp needs a timezone. You can supply one as an IANA identifier such as America/Chicago; without it, SPF signs in UTC. See Interpreting SPF API responses for the header and the handful of forms that use nonstandard signature fields.

Remitting forms to jurisdictions

Most withholding forms stay in the employer’s files. Some don’t: a number of jurisdictions require the employer to forward the form, and a few require it within a fixed window. Missouri, for example, expects a copy of the MO W-4 within 20 days of hire. SPF tells you when this applies through the employer intervention flags described below, but the act of remitting is yours. Retrieve the stored PDF, decode it, and send it to the jurisdiction.

Tax parameters

Tax parameters are the employee’s elections expressed as data your payroll system can act on. Each one is a small object with three fields. Parameter IDs are prefixed by jurisdiction. Federal parameters use FED., state parameters use the state abbreviation, and Canadian parameters use the form name. That prefix is what lets you keep a multi-jurisdiction employee’s elections straight when they’ve completed federal, state, and local forms in one session. Alongside the form-specific elections, you’ll see parameters that describe the outcome rather than an answer: whether the employee claimed exemption from federal withholding, whether the form must be filed with the tax authority, and whether employer intervention is needed.
Mapping is a one-time job. Every parameter ID and every possible value for a given form is listed in the SPF catalog, published with each release. Map them into your payroll system’s fields once, then maintain the mapping as forms change.

If you also use the Symmetry Tax Engine

Tax parameters are designed to hand off directly to STE. Symmetry publishes the mapping between the two so you don’t have to derive it.

API tax parameter mapping

Retrieve SPF-to-STE mappings through the API.

Hosted and on-premise mapping

The published mapping table for Hosted and on-premise clients.

When the employer has to act

Some employee answers create an obligation for the employer: filing the form with the state, collecting supporting documentation, supplying a certificate number, or signing a section themselves. SPF surfaces this in two parameters:
  • employerIntervention: true when something is required of the employer
  • employerInterventionReason: a code identifying what triggered it, such as a military spouse exemption or a form that must be filed with the state
Route these to whoever handles compliance rather than letting them pass silently into payroll. Employer form intervention lists the reason codes per form alongside the jurisdiction’s stated expectations.

How the results reach you

This depends on how you’ve deployed SPF. API clients get the PDF and tax parameters directly in the response when they submit the employee’s answers. Hosted and on-premise clients choose a submission mode. Postback delivers a JSON payload to a URL you specify as each form is completed, containing the PDF, the tax parameters, the registration data you supplied, the resolved location data, and a transaction log. Print skips the handoff entirely and lets the employee print the form for manual submission. See Returning completed forms and form data.
SPF doesn’t keep any of this. SPF does not store employee answers, completed forms, or personal data: names, Social Security numbers, and addresses pass through from your request to your response. If you don’t capture the PDF and tax parameters when they’re returned, they’re gone. See SPF data retention.

Returning completed forms

Postback and Print modes for Hosted and On-Premise.

Form versions and effective dates

Why the version a form was completed under matters after the fact.