This page is the definitive collection of common status codes, transaction types, and risk data structures shared throughout the Trustly platform, including all back-end API responses and client-side SDK interactions.
Consult this documentation for the precise definition of statuses required for handling asynchronous API responses, troubleshooting transaction failures, and interpreting financial verification data.
Transaction status codes
These codes reflect the current state or reason for failure of a transaction.
Payment provider transaction status codes (SW)
These status codes relate to errors found during validation before the transaction is sent to the ODFI, covering risk and validation issues.
| Status Code | Description |
|---|---|
| SW010 | Established |
| SW013 | Canceled |
| SW020 | Authorization received |
| SW021 | Authorization denied (e.g., insufficient funds) |
| SW051 | Merchant error (e.g., integration issue, invalid request) |
| SW052 | Financial institution error |
| SW053 | Internal network error |
| SW054 | Suspicious transaction activity |
| SW055 | Negative data |
| SW056 | Invalid account |
| SW057 | Expired split token |
| SW059 | Instant transaction rejected due to risk |
| SW060 | Bank or network processor is down |
User canceled (UC)
These statuses are set when the user cancels the transaction process.
| Status Code | Description |
|---|---|
| UC01 | User canceled the transaction at bank selection page |
| UC02 | User canceled the transaction at login page |
| UC03 | User canceled the transaction at invalid login page |
| UC04 | User canceled the transaction at challenge question page |
| UC05 | User canceled the transaction at invalid answers for challenge questions page. |
| UC06 | User canceled the transaction at MFA page |
| UC07 | User canceled the transaction at invalid MFA page |
| UC08 | User canceled the transaction at account selection page |
| UC09 | User canceled the transaction at error page |
| UC10 | User canceled the transaction at partial account number page |
| UC11 | User canceled the transaction at select account location page |
| UC12 | User canceled the transaction because it does not have a bank on the list |
| UC13 | User canceled the transaction at login with captcha page |
| UC14 | User canceled the transaction at captcha validation page |
| UC15 | User canceled the transaction at manual account input page |
| UC16 | User canceled the transaction at manual account confirmation page |
| UC17 | User canceled the transaction at MCD confirmation page |
| UC18 | User canceled the transaction at MCD validation page |
| UC19 | User canceled the transaction at account profile input page |
| UC20 | User canceled the transaction at no dynamic balance page |
| UC21 | User canceled the transaction at partial account not supported page |
| UC22 | User canceled the transaction at security script page |
| UC23 | User canceled the transaction at account not supported page |
| UC24 | User canceled the transaction at authorize page with exception |
| UC25 | User canceled the transaction at bad account page |
| UC26 | User canceled the transaction at the bank's reset password screen |
| UC27 | User canceled the transaction because the bank was unavailable |
| UC28 | User canceled the transaction at an external screen |
| UC29 | User canceled the transaction due to a timeout |
| UC30 | User canceled on the manual entry screen after an invalid routing or account number entry |
| UC31 | User canceled on the manual entry screen due to related information (SWIFT code or address) not being found |
| UC32 | User canceled the transaction at the maintenance page |
| UC33 | User canceled the transaction at non-eligible currency error page |
| UC34 | User canceled the transaction at Connect to your bank (OAuth login) page |
| UC35 | User canceled the transaction at Waiting for your approval page |
| UC36 | User canceled the transaction at VAN info page |
| UC37 | User canceled the transaction at widget within Lightbox page |
Acknowledged communication (AC)
These are the main statuses for ACH and RTP transactions, generally set when user communication is completed or the merchant calls the API directly.
| Status Code | Description |
|---|---|
| AC100 | AC pending |
| AC101 | AC declined |
| AC102 | AC approved |
| AC103 | AC error |
| AC104 | AC voided |
| AC105 | AC processed |
| AC106 | AC collected |
| AC107 | AC awaiting capture |
| AC108 | AC awaiting approval |
| AC109 | AC suspended |
| AC110 | AC in collection |
| AC111 | AC in research |
| AC112 | AC disputed |
| AC113 | AC uncollected, insufficient funds |
| AC114 | AC invalid or closed account |
| AC115 | AC other returns |
| AC116 | AC none |
| AC117 | AC expired |
| AC118 | AC settled |
System error (SE)
These statuses indicate internal errors related to system functionality.
| Status Code | Description |
|---|---|
| SE01 | System in maintenance mode |
| SE02 | System error connecting to API services |
| SE03 | System error connecting to financial services gateway |
Return and decline codes
| Code Set | Range | Description |
|---|---|---|
| ACH Return Codes (R) | R01 to R84 | Standard ACH return codes 01 to 84. |
| EFT Decline Codes (Canada) | 900 to 996 | Specific decline codes used for Canadian EFT transactions. |
| TDD Statuses (UK) | ARUCS, ARUDD, AUDDIS | Trustly direct debit specific return codes for the United Kingdom. |
API response and internal error codes
These codes indicate system-level failures, invalid requests, and security issues encountered during an API call.
HTTP status codes
Trustly uses conventional HTTP response codes to indicate success or failure of an API request.
| HTTP Status Code | Description |
|---|---|
| 400 Bad Request | Often due to a missing, required parameter. |
| 401 Unauthorized | Invalid accessId or accessKey. |
| 404 Not Found | This endpoint is not supported or defined by Trustly. |
| 500 Server error | Internal Trustly error. |
| 503 Service Unavailable | The server is currently unable to handle the request due to temporary overloading or server maintenance. |
Internal error codes
These codes are returned within the API error response object, providing detail on the failure reason.
| Error Code | Description |
|---|---|
| 100 | Internal error. An internal database exception occurred when trying to process the request. |
| 150 | Remote error. A remote error (e.g., the consumer's bank interface is down) occurred when trying to process the request. |
| 200 | Invalid parameter error. One of the request parameters is invalid (e.g., sending an invalid amount format string). |
| 210 | This is a duplicate request. It has been ignored (idempotency failure). |
| 300 | Security error. A generic security error occurred when trying to process the request. |
| 326 | Expired split token |
| 330 | Invalid account |
| 331 | Not enough balance |
| 375 | Access control error. Occurs when a security parameter (accessId, accessKey or requestSignature) is invalid. |
| 380 | Invalid Split Token |
| 390 | Fraud analysis. Suspicious transaction or negative data. |
| 397 | splitToken is not valid |
Payment and transaction data types
These data types define the various methods, purposes, and statuses of funds movement.
Payment provider types
These codes define the type of bank connectivity or payment instrument used.
| Code | Description |
|---|---|
| 1 | Online Banking (Direct connection) |
| 2 | Manual Electronic Check |
Payment types
| Value | Name | Description |
|---|---|---|
| 2 | Deferred | Payment is authorized, but requires a separate Capture API call to debit funds. |
| 3 | Recurring | Same as deferred, but associated with a specific payment agreement. |
| 4 | Disbursement | Payment type used exclusively for mass disbursements. |
| 5 | Verification | Payment type used solely to verify the customer account outside of the Trustly system. |
| 6 | Retrieval | Data retrieval to fetch account and user information without a payment request. |
Transaction types
| Value | Name | Description |
|---|---|---|
| 0 | External | This transaction is created when the Feedback API is called to update the status of a transaction created with a paymentType of Retrieval. |
| 1 | Authorize | This is a transaction created with paymentType is Deferred or Recurring. |
| 2 | Pay | This is a transaction created with paymentType of Instant. |
| 3 | Capture | Capture transactions are created with the Capture API. |
| 4 | Refund | Refund transactions are created with the Refund API. |
| 5 | Reverse | A reverse transaction is created when the payment is charged back by the bank (payment provider). |
| 6 | Deposit | Deposit transactions are created with the Deposit API. |
| 7 | Reclaim | Reclaim transactions are created with the Reclaim API. |
| 8 | Representment | A representment transaction represents an attempt to reprocess a previously denied Capture transaction. |
| 9 | Tokenization | |
| 10 | Preauthorization | Preauthorization transactions are created with the Preauthorization API. |
| 11 | Guarantee |
Payment Response Consumer Messaging
Use the following consumer codes and language in applicable user experiences and messaging.
| Response Code | Consumer Decline Code | Consumer Decline Reason Details |
|---|---|---|
| SW013 | User Cancelled | This transaction was cancelled partway by you, your browser or your device. |
| SW021 | Insufficient Funds | Transaction unsuccessful. We are unable to complete your transaction due to insufficient funds in your account. Please a) add funds to your account, b) Use another account at the same bank, c) Or, sign in to another bank |
| SW051 | Merchant Error | Transaction unsuccessful: We're sorry. The transaction could not be completed because of a technical error on the merchant's side. |
| SW052 | Bank Error | Transaction unsuccessful: We're sorry. The transaction could not be completed because of a technical error on the bank's side. |
| SW053 | Network Error | Transaction unsuccessful: We're sorry. The transaction could not be completed because of a technical error from the network. |
| SW054 | Security Controls | Security Alert: We detected some unusual activity and as a result, this transaction was not completed. To protect consumers and merchants, Trustly employs risk mitigation and fraud prevention tools to spot suspicious activity. Please see Trustly's FAQs for further information on Trustly's risk decisioning process. |
| SW055 | Security Controls | Security Alert: We detected some unusual activity and as a result, this transaction was blocked. To protect consumers and merchants, Trustly employs risk mitigation and fraud prevention tools to spot suspicious activity. Please see Trustly's FAQs for further information on Trustly's risk decisioning process. |
| SW056 | Unsupported Account Type | Invalid Account: To comply with Federal, state, or local regulations, Trustly does not currently support this type of account. |
| SW059 | Security Controls | Security Alert: We detected some unusual activity and as a result, this transaction was not completed. To protect consumers and merchants, Trustly employs risk mitigation and fraud prevention tools to spot suspicious activity. Please see Trustly's FAQs for further information on Trustly's risk decisioning process. |
| SW060 | Bank Error | Transaction unsuccesful: We're sorry. The transaction could not be completed because of a technical error on the bank's side. |
Risk, verification, and account data
These definitions are critical for compliance, risk analysis, and advanced API usage.
Verification status
| Code | Name | Description |
|---|---|---|
| 1 | Automatic | Payment verification followed Trustly internal rules. |
| 2 | ToVerify | Transaction is held (status = OnHold) pending merchant approval/investigation. |
| 3 | Verified | Payment was verified and approved by the merchant or Trustly. |
| 4 | Refused | Payment was denied after verification. |
Verification types
| Code | Name | Description |
|---|---|---|
| 0 | Not Verified | The account was not verified. |
| 1 | Manual | The account was verified with manual account verification (e.g., Manual Electronic Check and Micro Challenge Deposit). |
| 2 | Online Banking verification | The account was automatically verified with the Trustly Online Banking Payment service. |
| 3 | Database verification | The account was verified with the Trustly database or a third-party service. |
Financial institution account profile values
These values identify the type of bank account being used.
| Code | Description |
|---|---|
| -1 | Unknown |
| 0 | Other |
| 1 | Checking |
| 2 | Savings |
Financial institution account type values
These values define the ownership profile of the bank account.
| Code | Description |
|---|---|
| -1 | Unknown |
| 0 | Other |
| 1 | Personal |
| 2 | Business |
FCRA verification third-party score values
This table maps Trustly verification third-party values to a related risk score, used in the United States.
| Score | Description |
|---|---|
| 0 | Failed RT validation. Strong indication that this account is invalid for payments. |
| 100 | Strong indication that this account is invalid for payments. |
| 200 | This account has recent non-bankable debts. |
| 300 | History of returns on the account. |
| 400 | No negative data on this account, but the format appears suspicious. |
| 500 | No data on this account or format. |
| 600 | Limited information on the account, but the format appears valid. |
| 700 | We have seen this account, but did not receive a final disposition on the transaction. |
| 800 | We have seen this account but not recently. |
| 900 | This account has been seen recently. |
| 999 | Highest confidence that this account is valid. |
Non-FCRA verification score values
These scores are used for non-FCRA related risk verification.
| Score | Description |
|---|---|
| 15 | Known bad bank account. |
| 20 | Unknown bank account, but format appears valid. |
| 25 | Unknown bank account, but format appears suspicious. |
| 35 | Bank account seen but transaction not yet settled (5 days). |
| 45 | Known good bank account. |