The Payment Kit open gateway returns error codes for non-service-related calls to your app or atomic service APIs.
| Return Code | Result | Result Code | Description | Solution |
|---|---|---|---|---|
| 000000 | Success | - | - | N/A |
| 100000 | Insufficient permission. | INSUFFICIENT_PERMISSION | Insufficient merchant permission. | Check and configure the product permission on the merchant platform. |
| 200000 | Missing mandatory parameters. | MISSING_AUTH_HEADER | Authentication parameter is missing. | Construct and pass the corresponding authentication information in the request header. |
| 200000 | Missing mandatory parameters. | MISSING_TRACER_ID | The tracerId parameter is missing. | Check the request parameters and ensure a unique trace ID is passed for each request. |
| 200000 | Missing mandatory parameters. | MISSING_HEADER_SIGN | The headSign parameter is missing. | Check the request parameters and ensure headerSign is passed. |
| 200000 | Missing mandatory parameters. | MISSING_CALLER_ID | The callerId parameter is missing. | Check the request parameters and ensure callerId corresponding to the merchant number is passed. |
| 200000 | Missing mandatory parameters. | MISSING_BODY_SIGN | The bodySign parameter is missing. | Check the request parameters and ensure bodySign is passed. |
| 200000 | Missing mandatory parameters. | MISSING_AUTH_ID | The authId parameter is missing. | Check the request parameters and ensure authId corresponding to the merchant is passed. |
| 200000 | Missing mandatory parameters. | MISSING_TIME | The timestamp parameter is missing. | Check the request parameters and ensure the current timestamp is passed. |
| 200000 | Missing mandatory parameters. | MISS_ACCESS_TOKEN | The accessToken parameter is missing. | Check whether the MISS_ACCESS_TOKEN parameter is correctly passed in the request header. |
| 200000 | Missing mandatory parameters. | MISS_PETAL_PAY_SIGN_KEY_ID | The petalpaySignKeyId parameter is missing. | Check whether the petalpaySignKeyId parameter is correctly passed in the request header. |
| 200000 | Missing mandatory parameters. | MISS_PETAL_PAY_ENC_KEY_ID | The petalpayEncKeyId parameter is missing. | Check whether the petalpayEncKeyId parameter is correctly passed in the request header. |
| 200000 | Missing mandatory parameters. | MISS_DEVELOPER_SIGN_KEY_ID | The developerSignKeyId parameter is missing. | Check whether the developerSignKeyId parameter is correctly passed in the request header. |
| 200001 | Invalid parameter. | INVALID_AUTH_HEADER | Invalid authentication information. | Check the request header and ensure the correct authentication information is provided. |
| 200001 | Invalid parameter. | INVALID_TRACER_ID | The tracerId parameter is invalid. | Check the request parameter and pass the correct traceId. |
| 200001 | Invalid parameter. | INVALID_AUTH_ID | The authId parameter is invalid. | Check the request parameter and pass the correct authId. |
| 200001 | Invalid parameter. | INVALID_TIME | The timestamp parameter is invalid. | Check the request parameter and pass the correct timestamp. |
| 200001 | Invalid parameter. | INVALID_SESSION_KEY | The sessionKey parameter is invalid. | Check the request parameter and pass the correct sessionKey. |
| 200001 | Invalid parameter. | INVALID_PUB_KEY | The merchant public key is invalid. | Check the request parameter and ensure that the public key has been generated and uploaded. |
| 200001 | Invalid parameter. | INVALID_DUPLICATE_REQUEST | Invalid duplicate request. | Check the request parameter and ensure that a new traceId is generated for each request. |
| 200001 | Invalid parameter. | INVALID_PARAMETER | Invalid parameter. | Check the request parameter and pass the correct argument. |
| 200001 | Invalid parameter. | INVALID_CALLER_ID | The callerId parameter is invalid. | Check whether the callerId field in the authentication request header is correctly passed, such as the data type, special characters, and length. |
| 200001 | Invalid parameter. | INVALID_PAY_DEV_AUTH | invalid payDevAuth header | Check whether the payDevAuth field in the authentication request header is correctly passed. |
| 200001 | Invalid parameter. | UNSUPPORTED_PETAL_PAY_ENC_KEY_ID | unsupported PetalPayEncKeyId | Check whether the authentication parameter PetalPayEncKeyId is correctly passed. Check whether the public key used for encrypting sensitive fields in the request matches. |
| 200001 | Invalid parameter. | UNSUPPORTED_PETAL_PAY_SIGN_KEY_ID | unsupported PetalPaySignKeyId | Check whether the authentication parameter PetalPaySignKeyId is correctly passed. |
| 200001 | Invalid parameter. | UNSUPPORTED_DEVELOPER_SIGN_KEY_ID | unsupported developerSignKeyId | Check whether the authentication parameter developerSignKeyId is correctly passed. Check whether the public key used for the request signature matches. |
| 200002 | Invalid signature. | INVALID_SIGNATURE | Invalid signature. | Check the request parameters, generate the signature as instructed, and pass the correct signature parameters. |
| 300000 | Restricted API calling frequency. | CALL_FREQUENCY_LIMITED | The number of API calls exceeds the limit. | Reduce the number of concurrent requests. |
| 500000 | Service unavailable. | UNKNOW_ERROR | Service temporarily unavailable. Try again later. | Try again later. |
For details about the response error codes, see the service APIs. For error codes of resultCode other than 400000, see Common Result Codes.
| Return Code | Result Code | Description | Solution |
|---|---|---|---|
| 400000 | UNKNOW_ERROR | Service temporarily unavailable. Try again later. | Try again later. |
| 400000 | INVALID_ARGUMENTS | Invalid parameter. | Check the request parameters. |
| 400000 | PAY_ORDER_NOT_EXIST | The payment order number does not exist. | Check whether the input order number is correct. |
| 400000 | MERC_ORDER_NOT_EXIST | The merchant order number does not exist. | Check whether the input order number is correct. |
| 400000 | INVALID_MERCNO | Invalid merchant number. | Check whether the input merchant number is correct. |
| 400000 | REJECTED_BY_RISK_CONTROL | Rejected by the risk control system. | Consult the Huawei Pay team or submit a ticket online. |
| 400000 | NO_MATCH_MATCHING_PRODUCT | No matching merchant product. | Check whether the merchant product is correctly configured. |
| 400000 | CHECK_ORDER_STATUS | Order status error. | Check whether this is a duplicate order submission. |
| 400000 | BANK_CARD_NOT_SUPPORT | Bank card not supported. | Use another bank card and try again. |
| 400000 | CHECK_ACCOUNT_STATUS | Payment account error. | Check the payment account status. |
| 400000 | CHECK_MERC_STATUS | Merchant status error. | Check whether the merchant status is normal. |
| 400000 | MERC_NOT_SUPPORT_REFUND | The merchant does not support refund. | Check whether the merchant has the refund permission. |
| 400000 | CHECK_AMOUNT_INVALID | Amount verification failed. | Check whether the transferred amount is valid. |
| 400000 | CHECK_ACCOUNT_BALANCE | Insufficient account balance. | Check the merchant account balance. |
| 400000 | RETRY_TOO_MANY | Too many retries. Submit another request with a different order. | Submit another request with a different order. |
| 400000 | NOT_SETTLEMENT_DATE | Non-settlement date. The bill has not been generated. | Modify the input date and try again. |
| 400000 | INVALID_APPID | The app ID is not matched. | Check whether the app ID is correct and has been bound to a merchant number. |
| 400000 | BILL_SWITCH_NOT_TURN_ON | The billing setting is not enabled. | Go to function settings on the Huawei Pay merchant platform to enable the billing setting. |
| 400000 | INVALID_SUB_MERCNO | The permission is abnormal. The requested sub-merchant number is not associated with the authenticated merchant. | Check whether the sub-merchant number is correctly associated with the authenticated merchant. |
| 400000 | ORDER_CONCURRENT_ERROR | Concurrent order error. | Solution: 1. If multiple refunds are required for an order, the interval between two refund requests must be longer than 1 minute. 2. If refunds are required for multiple sub-orders, the interval between two refund requests must be longer than 1 minute. |
| 400000 | NOT_SUPPORTED_OPERATION | Unsupported operation. | Check whether the operation is allowed. If it cannot be confirmed, submit a ticket online. |
| 400000 | RESTRICTED_USER_ACCOUNT | Restricted user account. | Check whether the user account status is normal. |
| 400000 | RESTRICTED_USER_TRANSACTION | Restricted user transactions. | Check whether the user status is normal. |
| 400000 | RESTRICTED_MERCHANT_TRANSACTION | Restricted merchant transactions. | Check whether the merchant payment account status is normal. |
| 400000 | CHECK_CONTRACT_STATUS | Invalid signing number. | 1. Check whether the signing relationship exists. 2. Check whether the signing number is correct. |
| 400000 | NOT_IN_VALIDITY_PERIOD | Not within the validity period. | Check whether the order has expired and is no longer eligible for this operation. |
| 400000 | PAYMENT_ACCOUNT_NOT_ENABLE | Payment account not opened. | Check whether the payment account is opened. |
| 400000 | CUST_NOT_EXIST | The user does not exist or has been deregistered. | Check whether the HUAWEI ID status is normal or has been deregistered. |
| 400000 | OPERATION_NOT_AUTHORIZED | Unauthorized operation. | The service provider needs to apply for authorization to initiate a refund on behalf of the special merchant. |
| 400000 | RESTRICTED_TRANSACTION | Transaction restricted. | The transaction involves risk and cannot proceed. Please verify the details. If the issue persists, submit a ticket online. |
| 400000 | WITHHOLD_OVER_TIMES | The number of withholding times exceeds the threshold. | Try again four hours later. |
| 400000 | INVALID_PAYMENT_TYPE | The user does not have a valid payment method. | Check whether the user has an available payment method. |
| 400000 | CHECK_TRANSACTION_ORDER_STATUS | Transaction order status error. | Check whether this is a duplicate pre-order submission based on the same merchant order number. |
| 400000 | NEED_CHANGE_ORDER | Different order required. | Change the merchant order number and try again. |
| 400000 | ORDER_NOT_SUPPORT | Order not supported. | Confirm whether the operation is correct. If the issue persists, submit a ticket online. |
| 400000 | COUPON_INCORRECT_MERCHANT_RELATION | The merchant creating a batch of coupons is not related to the merchant to which the batch belongs. | Check whether the merchant creating a batch of coupons is related to the merchant to which the batch belongs. |
| 400000 | COUPON_INVALID_NOTIFY_URL | The callback address can only be in HTTPS format. | Check whether the callback URL is an HTTPS address. |
| 400000 | COUPON_BATCH_NOT_EXIST | Failed to find the batch of coupons to be issued. | Check whether the coupon batch has been created and whether the batch number is correctly transferred. |
| 400000 | COUPON_BATCH_INVALID_STATUS | The batch has expired or been suspended. | Check the coupon batch status or create a new coupon batch. |
| 400000 | COUPON_BATCH_UPDATING | The batch is being updated. New update requests cannot be processed. | Check the batch update status and wait until the batch update is complete. |
| 400000 | COUPON_NOT_MATCH_SEND_RULE | Failed to meet the coupon distribution conditions. | Check whether the user meets the coupon distribution conditions (for example, whether the user has been deregistered). |
| 400000 | COUPON_EXCEED_SEND_LIMIT_PER_REQUEST | The number of coupons distributed in a single request exceeds the upper limit. | Check the upper limit of coupons that can be distributed in a single request. |
| 400000 | COUPON_NOT_EXIST | No related coupon found. | Check the coupon information of the user to confirm whether a coupon exists. |
| 400000 | COUPON_INVALID_STATUS | Invalid coupon status. | Check the coupon status of the user to confirm whether it is valid. |
| 400000 | INSUFFICIENT_PERMISSION | Insufficient merchant permission. | Check and configure the product permission on the merchant platform. |