Paykeys
Unmask a paykey
Retrieve an unmasked paykey token
Update a paykey's balance
ModelsExpand Collapse
class PaykeySummaryPagedV1: …
data: List[Data]
id: str
Unique identifier for the paykey.
config: DataConfig
processing_method: Optional[Literal["inline", "background", "skip"]]
sandbox_outcome: Optional[Literal["standard", "active", "rejected", "review"]]
created_at: datetime
Timestamp of when the paykey was created.
label: str
Human-readable label that combines the bank name and masked account number to help easility represent this paykey in a UI
paykey: str
The tokenized paykey value. This value is used to create payments and should be stored securely.
source: Literal["bank_account", "straddle", "mx", 3 more]
status: Literal["pending", "active", "inactive", 3 more]
updated_at: datetime
Timestamp of the most recent update to the paykey.
bank_data: Optional[DataBankData]
account_number: str
Bank account number. This value is masked by default for security reasons. Use the /unmask endpoint to access the unmasked value.
account_type: Literal["checking", "savings"]
routing_number: str
The routing number of the bank account.
customer_id: Optional[str]
Unique identifier of the related customer object.
expires_at: Optional[datetime]
Expiration date and time of the paykey, if applicable.
external_id: Optional[str]
Unique identifier for the paykey in your database, used for cross-referencing between Straddle and your systems.
institution_name: Optional[str]
Name of the financial institution.
status_details: Optional[DataStatusDetails]
changed_at: datetime
The time the status change occurred.
message: str
A human-readable description of the current status.
reason: Literal["insufficient_funds", "closed_bank_account", "invalid_bank_account", 22 more]
source: Literal["watchtower", "bank_decline", "customer_dispute", 2 more]
code: Optional[str]
The status code if applicable.
unblock_eligible: Optional[bool]
Indicates whether this paykey is eligible for client-initiated unblocking. Only present for blocked paykeys. True when blocked due to R29 returns and not previously unblocked, false otherwise. Null when paykey is not blocked.
meta: Meta
api_request_id: str
Unique identifier for this API request, useful for troubleshooting.
api_request_timestamp: datetime
Timestamp for this API request, useful for troubleshooting.
max_page_size: int
Maximum allowed page size for this endpoint.
page_number: int
Page number for paginated results.
page_size: int
Number of items per page in this response.
sort_by: str
The field that the results were sorted by.
sort_order: Literal["asc", "desc"]
total_pages: int
The number of pages available.
response_type: Literal["object", "array", "error", "none"]
Indicates the structure of the returned content.
- "object" means the
datafield contains a single JSON object. - "array" means the
datafield contains an array of objects. - "error" means the
datafield contains an error object with details of the issue. - "none" means no data is returned.
class PaykeyUnmaskedV1: …
data: Data
id: str
Unique identifier for the paykey.
config: DataConfig
processing_method: Optional[Literal["inline", "background", "skip"]]
sandbox_outcome: Optional[Literal["standard", "active", "rejected", "review"]]
created_at: datetime
Timestamp of when the paykey was created.
label: str
Human-readable label used to represent this paykey in a UI.
paykey: str
The tokenized paykey value. This value is used to create payments and should be stored securely.
source: Literal["bank_account", "straddle", "mx", 3 more]
status: Literal["pending", "active", "inactive", 3 more]
updated_at: datetime
Timestamp of the most recent update to the paykey.
balance: Optional[DataBalance]
status: Literal["pending", "completed", "failed"]
account_balance: Optional[int]
Account Balance when last retrieved
updated_at: Optional[datetime]
Last time account balance was updated.
bank_data: Optional[DataBankData]
account_number: str
The bank account number
account_type: Literal["checking", "savings"]
routing_number: str
The routing number of the bank account.
customer_id: Optional[str]
Unique identifier of the related customer object.
expires_at: Optional[datetime]
Expiration date and time of the paykey, if applicable.
external_id: Optional[str]
Unique identifier for the paykey in your database, used for cross-referencing between Straddle and your systems.
institution_name: Optional[str]
Name of the financial institution.
metadata: Optional[Dict[str, str]]
Up to 20 additional user-defined key-value pairs. Useful for storing additional information about the paykey in a structured format.
status_details: Optional[DataStatusDetails]
changed_at: datetime
The time the status change occurred.
message: str
A human-readable description of the current status.
reason: Literal["insufficient_funds", "closed_bank_account", "invalid_bank_account", 22 more]
source: Literal["watchtower", "bank_decline", "customer_dispute", 2 more]
code: Optional[str]
The status code if applicable.
Metadata about the API request, including an identifier and timestamp.
api_request_id: str
Unique identifier for this API request, useful for troubleshooting.
api_request_timestamp: datetime
Timestamp for this API request, useful for troubleshooting.
response_type: Literal["object", "array", "error", "none"]
Indicates the structure of the returned content.
- "object" means the
datafield contains a single JSON object. - "array" means the
datafield contains an array of objects. - "error" means the
datafield contains an error object with details of the issue. - "none" means no data is returned.
class PaykeyV1: …
data: Data
id: str
Unique identifier for the paykey.
config: DataConfig
processing_method: Optional[Literal["inline", "background", "skip"]]
sandbox_outcome: Optional[Literal["standard", "active", "rejected", "review"]]
created_at: datetime
Timestamp of when the paykey was created.
label: str
Human-readable label used to represent this paykey in a UI.
paykey: str
The tokenized paykey value. This value is used to create payments and should be stored securely.
source: Literal["bank_account", "straddle", "mx", 3 more]
status: Literal["pending", "active", "inactive", 3 more]
updated_at: datetime
Timestamp of the most recent update to the paykey.
balance: Optional[DataBalance]
status: Literal["pending", "completed", "failed"]
account_balance: Optional[int]
Account Balance when last retrieved
updated_at: Optional[datetime]
Last time account balance was updated.
bank_data: Optional[DataBankData]
account_number: str
Bank account number. This value is masked by default for security reasons. Use the /unmask endpoint to access the unmasked value.
account_type: Literal["checking", "savings"]
routing_number: str
The routing number of the bank account.
customer_id: Optional[str]
Unique identifier of the related customer object.
expires_at: Optional[datetime]
Expiration date and time of the paykey, if applicable.
external_id: Optional[str]
Unique identifier for the paykey in your database, used for cross-referencing between Straddle and your systems.
institution_name: Optional[str]
Name of the financial institution.
metadata: Optional[Dict[str, str]]
Up to 20 additional user-defined key-value pairs. Useful for storing additional information about the paykey in a structured format.
status_details: Optional[DataStatusDetails]
changed_at: datetime
The time the status change occurred.
message: str
A human-readable description of the current status.
reason: Literal["insufficient_funds", "closed_bank_account", "invalid_bank_account", 22 more]
source: Literal["watchtower", "bank_decline", "customer_dispute", 2 more]
code: Optional[str]
The status code if applicable.
unblock_eligible: Optional[bool]
Indicates whether this paykey is eligible for client-initiated unblocking. Only present for blocked paykeys. True when blocked due to R29 returns and not previously unblocked, false otherwise. Null when paykey is not blocked.
Metadata about the API request, including an identifier and timestamp.
api_request_id: str
Unique identifier for this API request, useful for troubleshooting.
api_request_timestamp: datetime
Timestamp for this API request, useful for troubleshooting.
response_type: Literal["object", "array", "error", "none"]
Indicates the structure of the returned content.
- "object" means the
datafield contains a single JSON object. - "array" means the
datafield contains an array of objects. - "error" means the
datafield contains an error object with details of the issue. - "none" means no data is returned.