Unprocessable entity
When your payment request cannot be completed due to incorrect information or business rule violations. The following issues might return an UNPROCESSABLE_ENTITY error.
Note: If an issue persists or if you have further questions, you can reach out to paypal-techsupport.com.
DUPLICATE_INVOICE_ID
Returns from the Payments v1 or Orders v2 APIs.
Cause
PayPal detects a duplicate invoice ID. Each transaction needs a unique invoice_id to prevent duplicate transactions. This typically happens when the same order number is used for multiple transactions.
Impact
The payment process stops, preventing your customer from completing their purchase. This can lead to lost sales.
Resolution
Use a different invoice ID number for each transaction. If you need to use the same invoice ID repeatedly, contact PayPal support. Consider setting up Instant Payment Notifications (IPNs) or webhooks to get real-time updates about transactions.
ORDER_ALREADY_AUTHORIZED
Returns from the Payments v2 or Orders v2 APIs.
Cause
The order has already been authorized through a previous request. When an order is created with intent="AUTHORIZE", only one authorization is allowed. A second attempt will be declined. This might happen if you accidentally sent the same request twice, or if you missed seeing that the first request was successful.
Impact
There's no impact on the original authorization. Only the second attempt is declined. You cannot authorize a partial amount now and authorize the remainder later.
Resolution
Authorize the full amount in one request, then create multiple captures as needed. Create multiple captures by setting final_capture="false" in your capture requests. This is useful for split shipments. Consider integrating PayPal webhooks to automatically receive updates about order status. If API calls are taking too long, contact PayPal technical support.
ORDER_ALREADY_CAPTURED
Returns from the Orders v2 API.
Cause
The PayPal order is already in "captured" status, meaning payment is complete and funds have been transferred to your account. No new captures can be created on this order. This happens if you're using intent="SALE" which only allows one capture per order, or if your system didn't record the success of the first capture attempt and tries again.
Impact
If you've only captured part of the order amount, you cannot capture the remaining amount unless you create a new PayPal order. There's no impact to your customer if you only intended to have one capture, but your system may be out of sync with PayPal's records.
Resolution
If you want multiple captures, use intent="AUTHORIZE" instead of intent="SALE". This creates an authorization first, allowing multiple captures afterward. Make sure the final_capture parameter is set to false in your capture authorized payment API call to allow additional captures. Use a unique invoice_id for each capture. Keep track of successful API responses to avoid duplicate calls. Consider using PayPal webhooks to receive automatic updates about payment status changes.
ORDER_NOT_APPROVED
Returns from the Payments v1 or Orders v2 APIs.
Cause
Your customer started but didn't complete the PayPal checkout process, or the request may be missing required payment information.
Impact
The payment is declined and not processed, causing purchase delays.
Resolution
Make sure your customer is redirected to the 'rel':'approve' URL that PayPal provides when you create an order. This takes them to the PayPal checkout flow to approve the payment. Ensure your request includes all required payment information.
SHIPPING_ADDRESS_INVALID
Returns from the Payments v1 or Orders v2 APIs.
Cause
Your customer may have missed important address fields like street address, city, or state. The address format might be incorrect, or your system might not be correctly sending the complete address in the request.
Impact
The payment is declined and not processed, causing purchase delays.
Resolution
Add form validation to ensure all required address fields are completed correctly before submitting. Consider using address validation tools to ensure addresses follow the correct format. Check your systems to make sure all address information is being correctly captured and included in your requests.