Paykeys
Lookup a paykey
Unmask a paykey
List paykeys
Retrieve an unmasked paykey token
Update a paykey's balance
ModelsExpand Collapse
class PaykeySummaryPagedV1 { data, meta, response_type }
data: Array[{ id, config, created_at, 12 more}]
id: String
Unique identifier for the paykey.
config: { processing_method, sandbox_outcome}
processing_method: :inline | :background | :skip
sandbox_outcome: :standard | :active | :rejected | :review
created_at: Time
Timestamp of when the paykey was created.
label: String
Human-readable label that combines the bank name and masked account number to help easility represent this paykey in a UI
paykey: String
The tokenized paykey value. This value is used to create payments and should be stored securely.
source: :bank_account | :straddle | :mx | 3 more
status: :pending | :active | :inactive | 3 more
updated_at: Time
Timestamp of the most recent update to the paykey.
bank_data: { account_number, account_type, routing_number}
account_number: String
Bank account number. This value is masked by default for security reasons. Use the /unmask endpoint to access the unmasked value.
account_type: :checking | :savings
routing_number: String
The routing number of the bank account.
customer_id: String
Unique identifier of the related customer object.
expires_at: Time
Expiration date and time of the paykey, if applicable.
external_id: String
Unique identifier for the paykey in your database, used for cross-referencing between Straddle and your systems.
institution_name: String
Name of the financial institution.
status_details: { changed_at, message, reason, 2 more}
changed_at: Time
The time the status change occurred.
message: String
A human-readable description of the current status.
reason: :insufficient_funds | :closed_bank_account | :invalid_bank_account | 22 more
source: :watchtower | :bank_decline | :customer_dispute | 2 more
code: String
The status code if applicable.
unblock_eligible: 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: { api_request_id, api_request_timestamp, max_page_size, 6 more}
api_request_id: String
Unique identifier for this API request, useful for troubleshooting.
api_request_timestamp: Time
Timestamp for this API request, useful for troubleshooting.
max_page_size: Integer
Maximum allowed page size for this endpoint.
page_number: Integer
Page number for paginated results.
page_size: Integer
Number of items per page in this response.
sort_by: String
The field that the results were sorted by.
sort_order: :asc | :desc
total_pages: Integer
The number of pages available.
response_type: :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, meta, response_type }
data: { id, config, created_at, 13 more}
id: String
Unique identifier for the paykey.
config: { processing_method, sandbox_outcome}
processing_method: :inline | :background | :skip
sandbox_outcome: :standard | :active | :rejected | :review
created_at: Time
Timestamp of when the paykey was created.
label: String
Human-readable label used to represent this paykey in a UI.
paykey: String
The tokenized paykey value. This value is used to create payments and should be stored securely.
source: :bank_account | :straddle | :mx | 3 more
status: :pending | :active | :inactive | 3 more
updated_at: Time
Timestamp of the most recent update to the paykey.
balance: { status, account_balance, updated_at}
status: :pending | :completed | :failed
account_balance: Integer
Account Balance when last retrieved
updated_at: Time
Last time account balance was updated.
bank_data: { account_number, account_type, routing_number}
account_number: String
The bank account number
account_type: :checking | :savings
routing_number: String
The routing number of the bank account.
customer_id: String
Unique identifier of the related customer object.
expires_at: Time
Expiration date and time of the paykey, if applicable.
external_id: String
Unique identifier for the paykey in your database, used for cross-referencing between Straddle and your systems.
institution_name: String
Name of the financial institution.
metadata: Hash[Symbol, String]
Up to 20 additional user-defined key-value pairs. Useful for storing additional information about the paykey in a structured format.
status_details: { changed_at, message, reason, 2 more}
changed_at: Time
The time the status change occurred.
message: String
A human-readable description of the current status.
reason: :insufficient_funds | :closed_bank_account | :invalid_bank_account | 22 more
source: :watchtower | :bank_decline | :customer_dispute | 2 more
code: String
The status code if applicable.
Metadata about the API request, including an identifier and timestamp.
api_request_id: String
Unique identifier for this API request, useful for troubleshooting.
api_request_timestamp: Time
Timestamp for this API request, useful for troubleshooting.
response_type: :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, meta, response_type }
data: { id, config, created_at, 14 more}
id: String
Unique identifier for the paykey.
config: { processing_method, sandbox_outcome}
processing_method: :inline | :background | :skip
sandbox_outcome: :standard | :active | :rejected | :review
created_at: Time
Timestamp of when the paykey was created.
label: String
Human-readable label used to represent this paykey in a UI.
paykey: String
The tokenized paykey value. This value is used to create payments and should be stored securely.
source: :bank_account | :straddle | :mx | 3 more
status: :pending | :active | :inactive | 3 more
updated_at: Time
Timestamp of the most recent update to the paykey.
balance: { status, account_balance, updated_at}
status: :pending | :completed | :failed
account_balance: Integer
Account Balance when last retrieved
updated_at: Time
Last time account balance was updated.
bank_data: { account_number, account_type, routing_number}
account_number: String
Bank account number. This value is masked by default for security reasons. Use the /unmask endpoint to access the unmasked value.
account_type: :checking | :savings
routing_number: String
The routing number of the bank account.
customer_id: String
Unique identifier of the related customer object.
expires_at: Time
Expiration date and time of the paykey, if applicable.
external_id: String
Unique identifier for the paykey in your database, used for cross-referencing between Straddle and your systems.
institution_name: String
Name of the financial institution.
metadata: Hash[Symbol, String]
Up to 20 additional user-defined key-value pairs. Useful for storing additional information about the paykey in a structured format.
status_details: { changed_at, message, reason, 2 more}
changed_at: Time
The time the status change occurred.
message: String
A human-readable description of the current status.
reason: :insufficient_funds | :closed_bank_account | :invalid_bank_account | 22 more
source: :watchtower | :bank_decline | :customer_dispute | 2 more
code: String
The status code if applicable.
unblock_eligible: 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: String
Unique identifier for this API request, useful for troubleshooting.
api_request_timestamp: Time
Timestamp for this API request, useful for troubleshooting.
response_type: :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.