---
title: Configuring contract fulfillment for token exchange mapping
description: Use the listed sources to map values from the token processor into the attributes required by the token generator, the Token Generator Contract.
component: pingfederate
version: 13.1
page_id: pingfederate:administrators_reference_guide:pf_configuring_contract_fulfillment_token_exchange_mapping
canonical_url: https://docs.pingidentity.com/pingfederate/13.1/administrators_reference_guide/pf_configuring_contract_fulfillment_token_exchange_mapping.html
llms_txt: https://docs.pingidentity.com/pingfederate/llms.txt
docs_for_agents: https://developer.pingidentity.com/build-with-ai/docs-for-agents.md
revdate: July 10, 2024
section_ids:
  about-this-task: About this task
  steps: Steps
---

# Configuring contract fulfillment for token exchange mapping

Use the listed sources to map values from the token processor into the attributes required by the token generator, the Token Generator Contract.

## About this task

Map each attribute to fulfill the Token Generator Contract from one of these sources:

* Token

  When you make this selection, the associated **Value** drop-down list is populated by the token processor.

* *
  * LDAP/JDBC/Other (when a datastore is used)

  Values are returned from your datastore, if used. When you make this selection, the **Value** list is populated by the attributes from the datastore.

* Expression (when enabled)

  This option provides more complex mapping capabilities—for example, transforming incoming values into different formats (see [Attribute mapping expressions](pf_attribute_mapping_expressions.html)). All of the following variables available for text entries are also available for expressions.

* No Mapping

  Select this option to ignore the **Value** field, making it necessary to have no value selection.

* Text

  The value is what you enter. This can be text only, or you can mix text with references to any of the values from the token processor, using the `${attribute}` syntax.

You can also enter values from your datastore, when applicable, using the following syntax.

`${ds.attr-source-id.attribute}`

where `attr-source-id `is the **Attribute Source ID** value (see [Fulfillment by datastore queries](pf_fulfill_by_datastore_queri.html)) and `attribute `is any of the datastore attributes you select.

## Steps

1. Under **Source**, select a source of the attribute for each attribute in the contract of the token generator.

2. Under **Value**, specify an attribute for each attribute.
