Methods and apparatus, including computer systems and program products,
for creating and using documents with machine-readable codes. A computer
program receives user data provided for one or more fields in an
electronic document, generates input data containing the user data and
metadata that provides a self-contained description of the user data,
encodes the input data into a machine-readable code, and generates a
final representation of the electronic document with a display of the
machine-readable code. Upon reading the machine-readable code, the
metadata can be used to identify a set of fields in a target system to
which to assign the user data. In some embodiments, the metadata and the
user data can be transformed and sent to a target system. The use of
metadata in this manner enables machine-readable codes to maintain a
physical representation of data that facilitates transfer of the data
back into an electronic environment.