A new kind of token for secure account-to-account payments
Customer Identity Verification
Bank Account Connection via Bridge
Bridge Widget
Third-Party Tokens
Manual Bank Entry
Identity Matching with WALDO
Paykey Generation
Unique Identifier Creation
Hashing and Encoding
Paykey Structure
Secure Delivery of the Paykey
Storage and Usage
Field | Type | Description |
---|---|---|
id | string | Unique identifier for the paykey, generated by Straddle. |
customer_id | string | Unique identifier of the customer associated with this paykey. |
label | string | Human-readable label for the paykey, often including the bank name and masked account number. |
source | string | Method used to create the paykey (e.g., bank_account , plaid , mx , straddle ). |
institution_name | string | Name of the financial institution associated with the paykey. |
status | string | Current status of the paykey (pending , active , inactive , rejected ). |
status_details | object | Additional information about the paykey’s status. |
↳ message | string | A human-readable description of the current status. |
↳ reason | string | A machine-readable identifier for the specific status. |
↳ source | string | Identifies the origin of the status change (e.g., ‘bank_decline’, ‘system’). |
paykey | string | The tokenized paykey value used for transactions. |
bank_data | object | Masked bank account details associated with the paykey. |
↳ routing_number | string | The bank’s routing number. |
↳ account_number | string | The masked bank account number (e.g., “******1234”). |
↳ account_type | string | The type of bank account (e.g., “checking” or “savings”). |
balance | integer | The available balance of the linked account in cents, if available. |
metadata | object | User-defined key-value pairs for storing additional information about the paykey. |
expires_at | datetime | Expiration date and time of the paykey, if applicable. |
created_at | datetime | Timestamp of when the paykey was created. |
updated_at | datetime | Timestamp of the most recent update to the paykey. |
Status | Description |
---|---|
pending | Initial status when the paykey is created and awaiting verification. |
active | Paykey has been verified and is ready for use in transactions. |
inactive | Paykey is no longer active and cannot be used for transactions. |
rejected | Paykey failed verification or was rejected by the financial institution. |
Notes
account_number
in the bank_data
object is always masked for security reasons. Use the unmasked paykey data endpoint to access the full account number when necessary and authorized.balance
field is only available for certain integration types and may not always be present.source
field indicates the method used to create the paykey, which can affect the available features and verification process.metadata
object can contain up to 20 key-value pairs, each with a maximum length of 40 characters for keys and 500 characters for values.created_at
and updated_at
fields are automatically managed by Straddle and cannot be modified directly.expires_at
field is only applicable for certain types of paykeys and integration methods.