[allPay] An order has the «Pending» status after it is paid

The cause of the problem is that allPay does not send payment confirmations to your store accordind to the ReturnURL request parameter.
You should address this issue to the allPay support.
An example of unconfirmed request:

"MerchantTradeNo": "RP20161220000140",
"Desc_1": "RPCAKE",
"ChoosePayment": "Credit",
"ChooseSubPayment": "",
"ClientBackURL": "https://www.rpcake.com/dfe-allpay/customerReturn/",
"ClientRedirectURL": "",
"CreditInstallment": 0,
"DeviceSource": "",
"EncryptType": 0,
"ExpireDate": 7,
"HoldTradeAMT": 0,
"IgnorePayment": "",
"InstallmentAmount": 0,
"InvoiceMark": "",
"ItemName": "法式原味千層 (2)",
"ItemURL": "https://www.rpcake.com/french-original-flavor-mille-crepe-cake.html",
"MerchantID": "2000132",
"MerchantTradeDate": "2016/12/20 10:37:23",
"NeedExtraPaidInfo": "Y",
"OrderResultURL": "https://www.rpcake.com/dfe-allpay/customerReturn/index/",
"PaymentInfoURL": "https://www.rpcake.com/dfe-allpay/offline/index/",
"PaymentType": "aio",
"PlatformID": "",
"Remark": "",
"ReturnURL": "https://www.rpcake.com/dfe-allpay/confirm/index/",
"TotalAmount": 1200,
"TradeDesc": "RPCAKE",
"CheckMacValue": "0C3EF62D3D63159B87C67EC3134D4000"

allPay should send a confirmation to the https://www.rpcake.com/dfe-allpay/confirm/index/ adress, but does not do so.
You can check it yourself again using the new logging feature of my «歐付寶 allPay» extension.
The issue could also be caused by a wrong settings of your store’s firewall (if you have it enabled).
Anyway, you should address the question to the allPay support.