We just GoLive API Rate Limits. Please follow up
approve_order only requires the order to HAVE a payment record; it does not require the money to have been collected: a COD order with payment_status = 100 Unpaid can still be approved. Do not raise a "paid" Sales Order off this milestone.