You may see errors during development or when your app is live and in-production.
Use the error codes to identify the error and the descriptions to narrow down the specific issue.
Parse the response code to get more details for the request status.
This is the general error response format:
1 2 3 4 5 6 7 8 9 | { "errors": [{ "code": "PMT-10305", "type": "SERVER", "message": "No records found for given input", "detail": "No records found for given input", "infoLink": "https://developer.intuit.com/app/developer/qbpayments/docs/develop/troubleshooting/error-codes" }] } |
code
field tells you the error code.message
field tells you why the error occured.detail
field gives additional details to review.infoLink
field for specific solutions.Follow guidance in the error message response for details and solutions.
Error type | Range | Description |
---|---|---|
success | 0 | Success response. |
fraud_warning | PMT-1000 - PMT-1999 | Based on the merchant’s fraud preferences, we attempted to cancel a transaction but we weren’t able to. Review the Note, this warning always triggers for auth-only transactions since auth-only transactions aren’t voidable. |
fraud_error | PMT-2000 - PMT-2999 | We automatically canceled a transaction based on the merchant’s fraud preferences. The preference is based on the credit or debit card’s cvc / address validation. Review the detail field to see what failed the fraud check. |
account_error | PMT-3000 - PMT-3999 | The request couldn’t be completed due to an account error. |
invalid_request | PMT-4000 - PMT-4999 | The request violates the API specification, or contains a reference to an unknown object. |
transaction_declined | PMT-5000 through - PMT-5999 | The transaction was declined. The message is descriptive and displayable to the user. |
system_error | PMT-6000 - PMT-6999 | A system error is preventing processing. This should be temporary. The message identifies temporary issue with our servers. |
Error code | Description |
---|---|
PMT-1000 (fraud_warning) | The charge with ID {0} was processed, but had an incorrect CVC value. The merchant wanted to refund this transaction, but we were unsuccessful. The merchant must refund this transaction manually. Keep in mind, charge transactions with {0} is the transaction ID. |
PMT-1001 (fraud_warning) | The charge with ID {0} was processed, but we couldn’t validate the CVC. The merchant wanted to refund this transaction, but we were unsuccessful. The merchant must refund this transaction manually. Keep in mind, charge transactions with {0} is the transaction ID. |
PMT-1002 (fraud_warning) | The charge with ID {0} was processed, but had incorrect address information. The merchant wanted to refund this transaction, but we were unsuccessful. The merchant must refund this transaction manually. Keep in mind, charge transactions with {0} is the transaction ID. |
PMT-1003 (fraud_warning) | The charge with ID {0} was processed, but we couldn’t validate the address. The merchant wanted to refund this transaction, but we were unsuccessful. The merchant must refund this transaction manually. Keep in mind, charge transactions with {0} is the transaction ID. |
PMT-2000 (fraud_error) | Indicates an incorrect CVC. |
PMT-2001 (fraud_error) | The CVC check is unavailable. |
PMT-2002 (fraud_error) | Indicates incorrect address information. |
PMT-2003 (fraud_error) | Address information is unavailable. |
PMT-3000 (account_error) | We couldn’t validate the merchant account. |
PMT-4000 (invalid_request) | {0} is invalid. |
PMT-4001 (invalid_request) | No {0} found. |
PMT-4002 (invalid_request) | {0} is required. |
PMT-4009 (invalid_request) | {0} already exists. This indicates a resource conflict. |
PMT-4012 (invalid_request) | {0} can’t be issued. The check void or refund can’t be processed due to a validation error. The amount is either too big or too long has passed. |
PMT-5000 (transaction_declined) | The request to process this transaction was declined. |
PMT-5001 (transaction_declined) | The merchant doesn’t support this payment method. |
PMT-5002 (transaction_declined) | We flagged and declined the transaction due to risk. |
PMT-6000 (system_error) | A temporary issue prevented this request from being processed. |