For AI agents: a documentation index is available at the root level at /llms.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
The Preauthorize API allows the merchant to pre-authorize one or more captures up to the total pre-authorized amount on a pre-authorized period interval in hours. Captures after the pre-authorized period interval are treated as normal Captures (will need to pass the full balance and risk analysis to be guaranteed).
Authentication
AuthorizationBasic
Path parameters
transactionIdstringRequired
Authorization Transaction ID retrieved from a Trustly Deferred or Recurring transaction.
Request
merchantReferencestringRequired
A specific merchant reference for this preauthorization. For example, this could be a merchant order number or the same merchant reference value used in the original establish call.
periodintegerRequired1-6Defaults to 0
Number of hours the preauthorization will be valid for.
amountstringRequired
The amount to be authorized. (maximum of 10 characters with support for 2 decimal places). Required if the bank authorization was created with an amount of 0.00. If not specified, then the full amount of the bank authorization will be used.
splitTokenstringOptional
Token received on the Authorize event.
externalTierstringOptional
The merchant’s tier associated with the customer (e.g. vip).
metadata.remittance.withdrawalMethodenumOptional
The method by which the recipient will receive the funds.
Allowed values:
interactionIdstringOptional
Optional interaction ID parameter for Preauthorization and Capture APIs, inclusion of which signifies consumer interaction tied to data obtained from getTrustlyInteraction function. If not specified, Trustly assumes the consumer is present in session. Set to "consumerNotPresent" to signify that the transaction is merchant-initiated and the consumer is not present.
Response
OK
transactionIdstring>=1 character
A unique transaction identifier generated by Trustly (15 character max).
3-letter ISO Currency Code. Currently only USD is supported.
Allowed values:
amountstring>=1 character
The amount of the transaction. (10 characters with support for 2 decimal places)
pendingstring>=1 character
The total amount that is still pending completion. (10 characters with support for 2 decimal places)
paidstring>=1 character
The total amount that was already paid. (10 characters with support for 2 decimal places)
refundedstring>=1 character
The total amount that was refunded. (10 characters with support for 2 decimal places)
reversedstring>=1 character
The total amount that was reversed. (10 characters with support for 2 decimal places)
balancestring>=1 character
The balance of the amount paid, minus the amount reversed and/or refunded. (10 characters with support for 2 decimal places)
paymentProviderTransactionobject
Payment Provider Transaction
statusenum
Status code of the Payment Provider Transaction record. See Transaction Types
statusMessagestring>=1 character
A descriptive status message. (120 characters)
ipstring>=1 character
The client IP address in IPv4 or IPv6 format.
createdAtinteger
The date and time the transaction was created as a UNIX timestamp.
processedAtinteger
The date and time the transaction was processed as a UNIX timestamp.
completedAtinteger
The date and time the transaction was completed as a UNIX timestamp.
updatedAtinteger
The date and time the transaction was last updated as a UNIX timestamp.
merchantReferencestring>=1 character
Merchants internal reference id for the transaction.
recordVersiondouble
The current record version.
ppTrxIdstringOptional>=1 character
internal use only
expiredAtintegerOptional
The date and time the preauthorization will expire as a UNIX timestamp.
originalTransactionIdstringOptional
feestringOptional
timeZonestringOptional
representmentScheduledAtdoubleOptional
paymentProcessorTypestringOptional
statusCodestringOptional
preAuthorizedbooleanOptional
Optional interaction ID parameter for Preauthorization and Capture APIs, inclusion of which signifies consumer interaction tied to data obtained from getTrustlyInteraction function. If not specified, Trustly assumes the consumer is present in session. Set to “consumerNotPresent” to signify that the transaction is merchant-initiated and the consumer is not present.