Ini tidak diizinkan untuk secara manual mengatur status pesanan ke 'selesai' dan Anda harus mendapatkan pengecualian ini saat Anda menelepon setState
pesanan dengan status 'lengkap':
Status Pesanan "selesai" tidak boleh diatur secara manual.
Alasannya sederhana: Status 'lengkap' (dan status, karena ini adalah satu-satunya negara dengan status 'lengkap') dimaksudkan untuk menunjukkan bahwa pesanan telah sepenuhnya diisi. Yaitu telah ditempatkan, ditagih dan dikirim ke pelanggan.
Setelah pesanan ditagih dan dikirimkan, Magento akan menetapkan keadaan ini pada pesanan secara otomatis.
Jika sistem pembayaran Anda "tidak mengizinkan" status 'lengkap', maka saya tidak akan mempercayainya, terutama dengan itu yang disandikan ionCube. Namun, jika itu karena menangani faktur di luar Magento, maka Anda harus secara manual membuat faktur "Offline" untuk pesanan sehingga Magento akan mengetahui bahwa itu telah dibayar.
Jangan mencoba mengubah diri Anda dengan mengatasi masalah pesanan yang tidak sesuai dengan keadaan yang seharusnya. Alih-alih, perbaiki masalah yang sebenarnya dengan memastikan bahwa pesanan ditagih dan dikirimkan di Magento sehingga ditandai sebagai lengkap oleh sistem.