This article gives an overview on differences between pending transactions and transactions flagged for manual review, for correct handling of both results.
1. Result codes for successfully processed transactions that should be manually reviewed
This result code only applies if you have an additional risk check enabled on your profile to flag transactions based on some criteria eg. transactions above a certain amount
You will not receive 000.400.000 return code unless you have this additional risk check enabled. This risk check incurs additional costs.
Transactions that return this code are successful (i.e., the customer would have been charged) however the return code gives your system a way to differentiate these from the normal 000.000.000 success code, so that you can implement some action on your side (eg. Trigger manual review of these transactions by your team)
2. Result codes for pending transactions
When a checkout ID is created (step 1 of copyandpay) you will get a pending transaction result code 000.200.000 to your server
This is the step before the payment form is called for the customer to enter their credit card details. Every transaction where there is a checkout by the customer will therefore have this pending status before the customer enters their card payments.
Would always recommend implementing webhooks to make sure that you have a fail safe in case you do not get the status of the transaction with your normal get status call (Step 3 of copyandpay)
More info : Webhooks Integration with Peach Payments