
==============================
[2025-11-01 02:19:34] CALLBACK START (DEBUG MODE)
[2025-11-01 02:19:34] ⚠️ Bukan POST request.

==============================
[2025-11-01 22:12:19] CALLBACK TOYYIB START
[2025-11-01 22:12:19] ❌ Bukan POST request

==============================
[2025-11-01 22:23:02] CALLBACK TOYYIB START
[2025-11-01 22:23:02] ❌ Bukan POST request

==============================
[2025-11-01 07:28:50] CALLBACK TOYYIB START
[2025-11-01 07:28:50] Method: GET
[2025-11-01 07:28:50] ❌ Tiada data POST/GET diterima.

==============================
[2025-11-01 07:32:02] CALLBACK TOYYIB START
[2025-11-01 07:32:02] Method: GET
[2025-11-01 07:32:02] ❌ Tiada data POST/GET diterima.

==============================
[2025-11-01 22:37:25] CALLBACK START
[2025-11-01 22:37:25] ⚠️ Bukan POST request.

==============================
[2025-11-01 22:42:32] CALLBACK START
[2025-11-01 22:42:32] RAW POST:
Array
(
    [billCode] => TESTE44F
    [billExternalReferenceNo] => SHIRT-F723B2
    [billpaymentStatus] => 1
    [billpaymentAmount] => 40.00
    [billpaymentInvoiceNo] => TP251101224232
)

[2025-11-01 22:42:32] 🔍 Data: bill_code=TESTE44F | order_id=SHIRT-F723B2 | trx=TP251101224232 | status=1 | amount=40.00
[2025-11-01 22:42:34] ✅ VERIFY RESPONSE:

[2025-11-01 22:42:34] ❌ Verify gagal.

==============================
[2025-11-01 22:44:57] CALLBACK TOYYIB START
[2025-11-01 22:44:57] Method: POST
[2025-11-01 22:44:57] RAW DATA:
Array
(
    [billCode] => TESTCB97
    [billExternalReferenceNo] => SHIRT-758E7C
    [billpaymentStatus] => 1
    [billpaymentAmount] => 40.00
    [billpaymentInvoiceNo] => TP251101224457
)

[2025-11-01 22:44:57] 🔍 Extracted: bill=TESTCB97 | order=SHIRT-758E7C | trx=TP251101224457 | status=1 | amount=40.00
[2025-11-01 22:44:58] VERIFY RESPONSE:

[2025-11-01 22:44:58] ❌ Verify API gagal.

==============================
[2025-11-01 22:49:47] CALLBACK TOYYIB START
[2025-11-01 22:49:47] Method: POST
[2025-11-01 22:49:47] RAW DATA:
Array
(
    [billCode] => TEST45C0
    [billExternalReferenceNo] => SHIRT-0EF452
    [billpaymentStatus] => 1
    [billpaymentAmount] => 40.00
    [billpaymentInvoiceNo] => TP251101224946
)

[2025-11-01 22:49:47] 🔍 Extracted: bill=TEST45C0 | order=SHIRT-0EF452 | trx=TP251101224946 | status=1 | amount=40.00
[2025-11-01 22:49:47] VERIFY RESPONSE:

[2025-11-01 22:49:47] ❌ Verify API gagal.

==============================
[2025-11-01 22:51:15] CALLBACK TOYYIB START
[2025-11-01 22:51:15] Method: POST
[2025-11-01 22:51:15] RAW DATA:
Array
(
    [billCode] => TEST18FD
    [billExternalReferenceNo] => SHIRT-C01162
    [billpaymentStatus] => 1
    [billpaymentAmount] => 40.00
    [billpaymentInvoiceNo] => TP251101225114
)

[2025-11-01 22:51:15] 🔍 Extracted: bill=TEST18FD | order=SHIRT-C01162 | trx=TP251101225114 | status=1 | amount=40.00
[2025-11-01 22:51:15] VERIFY RESPONSE:

[2025-11-01 22:51:15] ❌ Verify API gagal.

==============================
[2025-11-01 22:58:04] CALLBACK TOYYIB START
Method: POST
RAW DATA:
Array
(
    [billCode] => TESTF4E1
    [billExternalReferenceNo] => SHIRT-A5CA39
    [billpaymentStatus] => 1
    [billpaymentAmount] => 40.00
    [billpaymentInvoiceNo] => TP251101225803
)

🔍 Extracted: bill=TESTF4E1 | order=SHIRT-A5CA39 | trx=TP251101225803 | status=1 | amount=40.00
🚧 Mode Ujian: bypass verifyToyyibBill()
❌ SQL Error: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'payment_amount' in 'field list'

==============================
[2025-11-01 23:01:24] CALLBACK TOYYIB START
Method: POST
RAW DATA:
Array
(
    [billCode] => TESTD782
    [billExternalReferenceNo] => SHIRT-9BC863
    [billpaymentStatus] => 1
    [billpaymentAmount] => 40.00
    [billpaymentInvoiceNo] => TP251101230124
)

🔍 Extracted: bill=TESTD782 | order=SHIRT-9BC863 | trx=TP251101230124 | status=1 | amount=40.00
🚧 Mode Ujian: bypass verifyToyyibBill()
❌ SQL Error: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'transaction_id' in 'field list'

==============================
[2025-11-01 23:01:36] CALLBACK TOYYIB START
Method: POST
RAW DATA:
Array
(
    [billCode] => TESTE61F
    [billExternalReferenceNo] => SHIRT-81D5D4
    [billpaymentStatus] => 1
    [billpaymentAmount] => 40.00
    [billpaymentInvoiceNo] => TP251101230135
)

🔍 Extracted: bill=TESTE61F | order=SHIRT-81D5D4 | trx=TP251101230135 | status=1 | amount=40.00
🚧 Mode Ujian: bypass verifyToyyibBill()
❌ SQL Error: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'transaction_id' in 'field list'

==============================
[2025-11-01 23:02:58] CALLBACK TOYYIB START
Method: POST
RAW DATA:
Array
(
    [billCode] => TEST1BAB
    [billExternalReferenceNo] => SHIRT-CFC5DB
    [billpaymentStatus] => 1
    [billpaymentAmount] => 40.00
    [billpaymentInvoiceNo] => TP251101230258
)

🔍 Extracted: bill=TEST1BAB | order=SHIRT-CFC5DB | trx=TP251101230258 | status=1 | amount=40.00
🚧 Mode Ujian: bypass verifyToyyibBill()
✅ DB Updated: 0 row(s).
✅ Callback selesai.

==============================
[2025-11-01 23:06:11] CALLBACK TOYYIB START
Method: POST
RAW DATA:
Array
(
    [billCode] => TEST8282
    [billExternalReferenceNo] => SHIRT-EF5D96
    [billpaymentStatus] => 1
    [billpaymentAmount] => 40.00
    [billpaymentInvoiceNo] => TP251101230611
)

🔍 Extracted: bill=TEST8282 | order=SHIRT-EF5D96 | trx=TP251101230611 | status=1 | amount=40.00
🚧 Mode Ujian: bypass verifyToyyibBill()
✅ DB Updated: 0 row(s).
✅ Callback selesai.

==============================
[2025-11-01 23:49:50] CALLBACK TOYYIB START
Method: POST
RAW DATA:
Array
(
    [billCode] => TEST6D3C
    [billExternalReferenceNo] => SHIRT-A30F56
    [billpaymentStatus] => 1
    [billpaymentAmount] => 40.00
    [billpaymentInvoiceNo] => TP251101234950
)

🔍 Extracted: bill=TEST6D3C | order=SHIRT-A30F56 | trx=TP251101234950 | status=1 | amount=40.00
🚧 Mode Ujian: bypass verifyToyyibBill()
✅ DB Updated: 0 row(s).
✅ Callback selesai.

==============================
[2025-11-03 20:43:09] CALLBACK TOYYIB START
RAW DATA:
Array
(
)

❌ Missing BillCode or OrderID

==============================
[2025-11-03 20:43:55] CALLBACK TOYYIB START
RAW DATA:
Array
(
    [status] => 1
)

❌ Missing BillCode or OrderID

==============================
[2025-11-03 20:47:03] CALLBACK TOYYIB START
RAW DATA:
Array
(
    [billCode] => SIMTEST123
    [billExternalReferenceNo] => SHIRT-TESTSIM01
    [billpaymentInvoiceNo] => TX-324947
    [billpaymentStatus] => 3
    [billpaymentAmount] => 5.00
)

VERIFY RESPONSE:

❌ Verify API failed.

==============================
[2025-11-03 20:47:38] CALLBACK TOYYIB START
RAW DATA:
Array
(
    [billCode] => SIMTEST123
    [billExternalReferenceNo] => SHIRT-TESTSIM01
    [billpaymentInvoiceNo] => TX-644302
    [billpaymentStatus] => 1
    [billpaymentAmount] => 5.00
)

VERIFY RESPONSE:

❌ Verify API failed.

==============================
[2025-11-03 20:51:59] CALLBACK TOYYIB START
RAW DATA:
Array
(
    [billCode] => SIMTEST123
    [billExternalReferenceNo] => SHIRT-TESTSIM01
    [billpaymentInvoiceNo] => TX-665382
    [billpaymentStatus] => 3
    [billpaymentAmount] => 5.00
)

🚧 Simulation mode detected (billCode=SIMTEST123). Bypassing remote verify.
➡️ Parsed verifyData: status=3 amount=5.00 trx=TX-665382
✅ DB updated rows=0 order_id=SHIRT-TESTSIM01 status=FAILED
🔎 Buyer row: 
⚠️ No buyer data or sendWhatsAppTemplate() missing. Buyer: false
✅ Callback finished for order_id=SHIRT-TESTSIM01 status=3

==============================
[2025-11-03 20:52:10] CALLBACK TOYYIB START
RAW DATA:
Array
(
    [billCode] => SIMTEST123
    [billExternalReferenceNo] => SHIRT-TESTSIM01
    [billpaymentInvoiceNo] => TX-371773
    [billpaymentStatus] => 1
    [billpaymentAmount] => 5.00
)

🚧 Simulation mode detected (billCode=SIMTEST123). Bypassing remote verify.
➡️ Parsed verifyData: status=1 amount=5.00 trx=TX-371773
✅ DB updated rows=0 order_id=SHIRT-TESTSIM01 status=PAID
🔎 Buyer row: 
⚠️ No buyer data or sendWhatsAppTemplate() missing. Buyer: false
✅ Callback finished for order_id=SHIRT-TESTSIM01 status=1

==============================
[2025-11-03 20:55:03] CALLBACK TOYYIB START
RAW DATA:
Array
(
    [billCode] => SIMTEST123
    [billExternalReferenceNo] => SHIRT-TESTSIM01
    [billpaymentInvoiceNo] => TX-554367
    [billpaymentStatus] => 1
    [billpaymentAmount] => 5.00
)

🚧 Simulation mode detected (billCode=SIMTEST123). Bypassing remote verify.
➡️ Parsed verifyData: status=1 amount=5.00 trx=TX-554367
✅ DB updated rows=1 order_id=SHIRT-TESTSIM01 status=PAID
🔎 Buyer row: Array
(
    [buyer_name] => Penguji Ujian
    [buyer_phone] => 60130000000
    [amount] => 5.00
    [buyer_email] => uji@example.com
)

💬 WhatsApp 'paid' template send result: true
📄 sendPaymentReceipt result: true
✅ Callback finished for order_id=SHIRT-TESTSIM01 status=1

==============================
[2025-11-03 20:55:15] CALLBACK TOYYIB START
RAW DATA:
Array
(
    [billCode] => SIMTEST123
    [billExternalReferenceNo] => SHIRT-TESTSIM01
    [billpaymentInvoiceNo] => TX-419516
    [billpaymentStatus] => 3
    [billpaymentAmount] => 5.00
)

🚧 Simulation mode detected (billCode=SIMTEST123). Bypassing remote verify.
➡️ Parsed verifyData: status=3 amount=5.00 trx=TX-419516
✅ DB updated rows=1 order_id=SHIRT-TESTSIM01 status=FAILED
🔎 Buyer row: Array
(
    [buyer_name] => Penguji Ujian
    [buyer_phone] => 60130000000
    [amount] => 5.00
    [buyer_email] => uji@example.com
)

💬 WhatsApp 'failed' template send result: true
✅ Callback finished for order_id=SHIRT-TESTSIM01 status=3

==============================
[2025-11-03 20:57:53] CALLBACK TOYYIB START
RAW DATA:
Array
(
    [billCode] => SIMTEST123
    [billExternalReferenceNo] => SHIRT-TESTSIM01
    [billpaymentInvoiceNo] => TX-631296
    [billpaymentStatus] => 1
    [billpaymentAmount] => 5.00
)

🚧 Simulation mode detected (billCode=SIMTEST123). Bypassing remote verify.
➡️ Parsed verifyData: status=1 amount=5.00 trx=TX-631296
✅ DB updated rows=1 order_id=SHIRT-TESTSIM01 status=PAID
🔎 Buyer row: Array
(
    [buyer_name] => Penguji Ujian
    [buyer_phone] => 60130000000
    [amount] => 5.00
    [buyer_email] => uji@example.com
)

💬 WhatsApp 'paid' template send result: true
📄 sendPaymentReceipt result: true
✅ Callback finished for order_id=SHIRT-TESTSIM01 status=1

==============================
[2025-11-03 20:58:37] CALLBACK TOYYIB START
RAW DATA:
Array
(
    [billCode] => SIMTEST123
    [billExternalReferenceNo] => SHIRT-TESTSIM01
    [billpaymentInvoiceNo] => TX-288874
    [billpaymentStatus] => 1
    [billpaymentAmount] => 5.00
)

🚧 Simulation mode detected (billCode=SIMTEST123). Bypassing remote verify.
➡️ Parsed verifyData: status=1 amount=5.00 trx=TX-288874
✅ DB updated rows=1 order_id=SHIRT-TESTSIM01 status=PAID
🔎 Buyer row: Array
(
    [buyer_name] => Penguji Ujian
    [buyer_phone] => 60135063737
    [amount] => 5.00
    [buyer_email] => uji@example.com
)

💬 WhatsApp 'paid' template send result: true
📄 sendPaymentReceipt result: true
✅ Callback finished for order_id=SHIRT-TESTSIM01 status=1

==============================
[2025-11-03 21:00:26] CALLBACK TOYYIB START
RAW DATA:
Array
(
    [billCode] => SIMTEST123
    [billExternalReferenceNo] => SHIRT-TESTSIM01
    [billpaymentInvoiceNo] => TX-217680
    [billpaymentStatus] => 3
    [billpaymentAmount] => 5.00
)

🚧 Simulation mode detected (billCode=SIMTEST123). Bypassing remote verify.
➡️ Parsed verifyData: status=3 amount=5.00 trx=TX-217680
✅ DB updated rows=1 order_id=SHIRT-TESTSIM01 status=FAILED
🔎 Buyer row: Array
(
    [buyer_name] => Penguji Ujian
    [buyer_phone] => 60135063737
    [amount] => 5.00
    [buyer_email] => uji@example.com
)

💬 WhatsApp 'failed' template send result: true
✅ Callback finished for order_id=SHIRT-TESTSIM01 status=3

==============================
[2025-11-03 21:27:56] CALLBACK TOYYIB START
RAW DATA:
Array
(
    [billCode] => basqvb7o
    [billExternalReferenceNo] => SHIRT-1C6D3F70
    [billpaymentInvoiceNo] => TP2511032341088064
    [billpaymentStatus] => 3
    [billpaymentAmount] => 5.00
)

VERIFY RESPONSE:
Array
(
    [0] => Array
        (
            [billName] => Order SHIRT-1C6D3F70
            [billDescription] => Payment for order SHIRT-1C6D3F70
            [billExternalReferenceNo] => SHIRT-1C6D3F70
            [billTo] => NORZILA HASHIM
            [billEmail] => annur76@gmail.com
            [billPhone] => 60135063737
            [billStatus] => 1
            [billpaymentStatus] => 3
            [billpaymentChannel] => FPX B2C
            [billpaymentAmount] => 5.00
            [billpaymentInvoiceNo] => TP2511032341088064
            [billSplitPayment] => 
            [billSplitPaymentArgs] => 
            [billpaymentSettlement] => Pending Settlement
            [billpaymentSettlementDate] => 
            [SettlementReferenceNo] => 
            [billPaymentDate] => 03-11-2025 21:27:20
            [transactionCharge] => 1.00
            [chargeOn] => Amount
        )

)

➡️ Parsed verifyData: status=3 amount=5.00 trx=TP2511032341088064
✅ DB updated rows=1 order_id=SHIRT-1C6D3F70 status=FAILED
🔎 Buyer row: Array
(
    [buyer_name] => NORZILA HASHIM
    [buyer_phone] => 60135063737
    [amount] => 5.00
    [buyer_email] => annur76@gmail.com
)

💬 WhatsApp 'failed' template send result: true
✅ Callback finished for order_id=SHIRT-1C6D3F70 status=3

==============================
[2025-11-03 21:49:42] CALLBACK TOYYIB START
Method: GET | InternalCall=Yes
RAW DATA:
Array
(
    [status_id] => 3
    [billcode] => 0nwxofzh
    [order_id] => SHIRT-EA2CF4C8
    [msg] => ok
    [transaction_id] => TP2511033032438965
)

❌ Missing BillCode / OrderID
🔍 VERIFY RESPONSE:
Array
(
    [0] => BILL-CODE-NOT-FOUND
)

➡️ Parsed verifyData: status=0 amount= trx=TP2511033032438965
⚠️ DB updated to FAILED (SHIRT-EA2CF4C8)
💬 WhatsApp (failed) dihantar kepada 60135063737.
✅ Callback selesai (SHIRT-EA2CF4C8, status=0)

==============================
[2025-11-03 22:16:14] CALLBACK TOYYIB START
Method: GET | InternalCall=Yes
RAW DATA:
Array
(
    [status_id] => 3
    [billcode] => 6pvdugw8
    [order_id] => SHIRT-059E3B27
    [msg] => ok
    [transaction_id] => TP2511030811997079
)

❌ Missing BillCode / OrderID
🔍 VERIFY RESPONSE:
Array
(
    [0] => BILL-CODE-NOT-FOUND
)

➡️ Parsed verifyData: status=0 amount= trx=TP2511030811997079
⚠️ DB updated to FAILED (SHIRT-059E3B27)
💬 WhatsApp (failed) dihantar kepada 60135063737.
✅ Callback selesai (SHIRT-059E3B27, status=0)

==============================
[2025-11-03 22:28:32] CALLBACK TOYYIB START
Method: GET | InternalCall=Yes
RAW DATA:
Array
(
    [status_id] => 3
    [billcode] => niw93wt5
    [order_id] => SHIRT-105E3DD0
    [msg] => ok
    [transaction_id] => TP2511033786228861
)

❌ Missing BillCode / OrderID
🔍 VERIFY RESPONSE:
Array
(
    [0] => BILL-CODE-NOT-FOUND
)

➡️ Parsed verifyData: status=0 amount= trx=TP2511033786228861
⚠️ DB updated to FAILED (SHIRT-105E3DD0)
💬 WhatsApp (failed) dihantar kepada 601158585832.
✅ Callback selesai (SHIRT-105E3DD0, status=0)

==============================
[2025-11-03 22:39:00] CALLBACK TOYYIB START
Method: GET | InternalCall=Yes
RAW DATA:
Array
(
    [status_id] => 3
    [billcode] => 2xeo09sb
    [order_id] => SHIRT-D22BC111
    [msg] => ok
    [transaction_id] => TP2511034810352822
)

❌ Missing BillCode / OrderID
🔍 VERIFY RESPONSE:
Array
(
    [0] => BILL-CODE-NOT-FOUND
)

➡️ Parsed verifyData: status=0 amount= trx=TP2511034810352822
⚠️ DB updated to FAILED (SHIRT-D22BC111)
💬 WhatsApp (failed) dihantar kepada 601120919007 dengan link https://toyyibpay.com/
✅ Callback selesai (SHIRT-D22BC111, status=0)

==============================
[2025-11-03 22:49:34] CALLBACK TOYYIB START
Method: GET | InternalCall=Yes
RAW DATA:
Array
(
    [status_id] => 3
    [billcode] => gol9x8kg
    [order_id] => SHIRT-CB58CE42
    [msg] => ok
    [transaction_id] => TP2511034853036064
)

❌ Missing BillCode / OrderID
🔍 VERIFY RESPONSE:
Array
(
    [0] => BILL-CODE-NOT-FOUND
)

➡️ Parsed verifyData: status=0 amount= trx=TP2511034853036064
⚠️ DB updated to FAILED (SHIRT-CB58CE42)
💬 WhatsApp (failed) dihantar kepada 601120919007 dengan link https://toyyibpay.com/
✅ Callback selesai (SHIRT-CB58CE42, status=0)

==============================
[2025-11-03 23:02:46] CALLBACK TOYYIB START
Method: GET | InternalCall=Yes
RAW DATA:
Array
(
    [billCode] => w6qnd018
    [order_id] => SHIRT-A0CDFADF
    [transaction_id] => TP2511032918865742
    [status_id] => 3
)

🔍 VERIFY RESPONSE:
Array
(
    [0] => Array
        (
            [billName] => Order SHIRT-A0CDFADF
            [billDescription] => Payment for order SHIRT-A0CDFADF
            [billExternalReferenceNo] => SHIRT-A0CDFADF
            [billTo] => NORDIN OTHMAN
            [billEmail] => precoms@gmail.com
            [billPhone] => 601120919007
            [billStatus] => 1
            [billpaymentStatus] => 3
            [billpaymentChannel] => FPX B2C
            [billpaymentAmount] => 40.00
            [billpaymentInvoiceNo] => TP2511032918865742
            [billSplitPayment] => 
            [billSplitPaymentArgs] => 
            [billpaymentSettlement] => Pending Settlement
            [billpaymentSettlementDate] => 
            [SettlementReferenceNo] => 
            [billPaymentDate] => 03-11-2025 23:02:13
            [transactionCharge] => 1.00
            [chargeOn] => Amount
        )

)

➡️ Parsed verifyData: status=3 amount= trx=TP2511032918865742
🧩 Debug Link: https://toyyibpay.com/w6qnd018 | order_id=SHIRT-A0CDFADF
💬 WhatsApp (failed) dihantar kepada 601120919007 dengan link https://toyyibpay.com/w6qnd018
✅ Callback selesai (SHIRT-A0CDFADF, status=3)
[2025-11-03 23:02:50] ✅ Callback dalaman dijalankan untuk SHIRT-A0CDFADF
[2025-11-03 23:02:52] VERIFY BILL:
Array
(
    [0] => Array
        (
            [billName] => Order SHIRT-A0CDFADF
            [billDescription] => Payment for order SHIRT-A0CDFADF
            [billExternalReferenceNo] => SHIRT-A0CDFADF
            [billTo] => NORDIN OTHMAN
            [billEmail] => precoms@gmail.com
            [billPhone] => 601120919007
            [billStatus] => 1
            [billpaymentStatus] => 3
            [billpaymentChannel] => FPX B2C
            [billpaymentAmount] => 40.00
            [billpaymentInvoiceNo] => TP2511032918865742
            [billSplitPayment] => 
            [billSplitPaymentArgs] => 
            [billpaymentSettlement] => Pending Settlement
            [billpaymentSettlementDate] => 
            [SettlementReferenceNo] => 
            [billPaymentDate] => 03-11-2025 23:02:13
            [transactionCharge] => 1.00
            [chargeOn] => Amount
        )

)


==============================
[2025-11-03 23:03:07] CALLBACK TOYYIB START
Method: GET | InternalCall=Yes
RAW DATA:
Array
(
    [billCode] => w6qnd018
    [order_id] => SHIRT-A0CDFADF
    [transaction_id] => TP2511032918865742
    [status_id] => 3
)

🔍 VERIFY RESPONSE:
Array
(
    [0] => Array
        (
            [billName] => Order SHIRT-A0CDFADF
            [billDescription] => Payment for order SHIRT-A0CDFADF
            [billExternalReferenceNo] => SHIRT-A0CDFADF
            [billTo] => NORDIN OTHMAN
            [billEmail] => precoms@gmail.com
            [billPhone] => 601120919007
            [billStatus] => 1
            [billpaymentStatus] => 3
            [billpaymentChannel] => FPX B2C
            [billpaymentAmount] => 40.00
            [billpaymentInvoiceNo] => TP2511032918865742
            [billSplitPayment] => 
            [billSplitPaymentArgs] => 
            [billpaymentSettlement] => Pending Settlement
            [billpaymentSettlementDate] => 
            [SettlementReferenceNo] => 
            [billPaymentDate] => 03-11-2025 23:02:13
            [transactionCharge] => 1.00
            [chargeOn] => Amount
        )

)

➡️ Parsed verifyData: status=3 amount= trx=TP2511032918865742
🧩 Debug Link: https://toyyibpay.com/w6qnd018 | order_id=SHIRT-A0CDFADF
💬 WhatsApp (failed) dihantar kepada 601120919007 dengan link https://toyyibpay.com/w6qnd018
✅ Callback selesai (SHIRT-A0CDFADF, status=3)
[2025-11-03 23:03:11] ✅ Callback dalaman dijalankan untuk SHIRT-A0CDFADF
[2025-11-03 23:03:12] VERIFY BILL:
Array
(
    [0] => Array
        (
            [billName] => Order SHIRT-A0CDFADF
            [billDescription] => Payment for order SHIRT-A0CDFADF
            [billExternalReferenceNo] => SHIRT-A0CDFADF
            [billTo] => NORDIN OTHMAN
            [billEmail] => precoms@gmail.com
            [billPhone] => 601120919007
            [billStatus] => 1
            [billpaymentStatus] => 3
            [billpaymentChannel] => FPX B2C
            [billpaymentAmount] => 40.00
            [billpaymentInvoiceNo] => TP2511032918865742
            [billSplitPayment] => 
            [billSplitPaymentArgs] => 
            [billpaymentSettlement] => Pending Settlement
            [billpaymentSettlementDate] => 
            [SettlementReferenceNo] => 
            [billPaymentDate] => 03-11-2025 23:02:13
            [transactionCharge] => 1.00
            [chargeOn] => Amount
        )

    [1] => Array
        (
            [billName] => Order SHIRT-A0CDFADF
            [billDescription] => Payment for order SHIRT-A0CDFADF
            [billExternalReferenceNo] => SHIRT-A0CDFADF
            [billTo] => 
            [billEmail] => 
            [billPhone] => 601120919007
            [billStatus] => 1
            [billpaymentStatus] => 4
            [billpaymentChannel] => 
            [billpaymentAmount] => 40.00
            [billpaymentInvoiceNo] => TP2511031470608068
            [billSplitPayment] => 
            [billSplitPaymentArgs] => 
            [billpaymentSettlement] => 
            [billpaymentSettlementDate] => 
            [SettlementReferenceNo] => 
            [billPaymentDate] => 03-11-2025 23:03:09
            [transactionCharge] => 0.00
            [chargeOn] => Amount
        )

)


==============================
[2025-11-03 23:08:38] CALLBACK TOYYIB START
Method: GET | InternalCall=Yes
RAW DATA:
Array
(
    [billCode] => aymb13ya
    [order_id] => SHIRT-FEC4E5E4
    [transaction_id] => TP2511030099525080
    [status_id] => 3
)

🔍 VERIFY RESPONSE:
Array
(
    [0] => Array
        (
            [billName] => Order SHIRT-FEC4E5E4
            [billDescription] => Payment for order SHIRT-FEC4E5E4
            [billExternalReferenceNo] => SHIRT-FEC4E5E4
            [billTo] => SUMAYYAH NORDIN
            [billEmail] => banihashimshop@gmail.com
            [billPhone] => 601120919007
            [billStatus] => 1
            [billpaymentStatus] => 3
            [billpaymentChannel] => FPX B2C
            [billpaymentAmount] => 5.00
            [billpaymentInvoiceNo] => TP2511030099525080
            [billSplitPayment] => 
            [billSplitPaymentArgs] => 
            [billpaymentSettlement] => Pending Settlement
            [billpaymentSettlementDate] => 
            [SettlementReferenceNo] => 
            [billPaymentDate] => 03-11-2025 23:08:01
            [transactionCharge] => 1.00
            [chargeOn] => Amount
        )

)

➡️ Parsed verifyData: status=3 amount= trx=TP2511030099525080
💬 WhatsApp (failed+admin) dihantar.
✅ Callback selesai (SHIRT-FEC4E5E4, status=3)
[2025-11-03 23:08:42] ✅ Callback dalaman dijalankan untuk SHIRT-FEC4E5E4
[2025-11-03 23:08:43] VERIFY BILL:
Array
(
    [0] => Array
        (
            [billName] => Order SHIRT-FEC4E5E4
            [billDescription] => Payment for order SHIRT-FEC4E5E4
            [billExternalReferenceNo] => SHIRT-FEC4E5E4
            [billTo] => SUMAYYAH NORDIN
            [billEmail] => banihashimshop@gmail.com
            [billPhone] => 601120919007
            [billStatus] => 1
            [billpaymentStatus] => 3
            [billpaymentChannel] => FPX B2C
            [billpaymentAmount] => 5.00
            [billpaymentInvoiceNo] => TP2511030099525080
            [billSplitPayment] => 
            [billSplitPaymentArgs] => 
            [billpaymentSettlement] => Pending Settlement
            [billpaymentSettlementDate] => 
            [SettlementReferenceNo] => 
            [billPaymentDate] => 03-11-2025 23:08:01
            [transactionCharge] => 1.00
            [chargeOn] => Amount
        )

)


==============================
[2025-11-03 23:09:00] CALLBACK TOYYIB START
Method: GET | InternalCall=Yes
RAW DATA:
Array
(
    [billCode] => aymb13ya
    [order_id] => SHIRT-FEC4E5E4
    [transaction_id] => TP2511030099525080
    [status_id] => 3
)

🔍 VERIFY RESPONSE:
Array
(
    [0] => Array
        (
            [billName] => Order SHIRT-FEC4E5E4
            [billDescription] => Payment for order SHIRT-FEC4E5E4
            [billExternalReferenceNo] => SHIRT-FEC4E5E4
            [billTo] => SUMAYYAH NORDIN
            [billEmail] => banihashimshop@gmail.com
            [billPhone] => 601120919007
            [billStatus] => 1
            [billpaymentStatus] => 3
            [billpaymentChannel] => FPX B2C
            [billpaymentAmount] => 5.00
            [billpaymentInvoiceNo] => TP2511030099525080
            [billSplitPayment] => 
            [billSplitPaymentArgs] => 
            [billpaymentSettlement] => Pending Settlement
            [billpaymentSettlementDate] => 
            [SettlementReferenceNo] => 
            [billPaymentDate] => 03-11-2025 23:08:01
            [transactionCharge] => 1.00
            [chargeOn] => Amount
        )

)

➡️ Parsed verifyData: status=3 amount= trx=TP2511030099525080
💬 WhatsApp (failed+admin) dihantar.
✅ Callback selesai (SHIRT-FEC4E5E4, status=3)
[2025-11-03 23:09:06] ✅ Callback dalaman dijalankan untuk SHIRT-FEC4E5E4
[2025-11-03 23:09:07] VERIFY BILL:
Array
(
    [0] => Array
        (
            [billName] => Order SHIRT-FEC4E5E4
            [billDescription] => Payment for order SHIRT-FEC4E5E4
            [billExternalReferenceNo] => SHIRT-FEC4E5E4
            [billTo] => SUMAYYAH NORDIN
            [billEmail] => banihashimshop@gmail.com
            [billPhone] => 601120919007
            [billStatus] => 1
            [billpaymentStatus] => 3
            [billpaymentChannel] => FPX B2C
            [billpaymentAmount] => 5.00
            [billpaymentInvoiceNo] => TP2511030099525080
            [billSplitPayment] => 
            [billSplitPaymentArgs] => 
            [billpaymentSettlement] => Pending Settlement
            [billpaymentSettlementDate] => 
            [SettlementReferenceNo] => 
            [billPaymentDate] => 03-11-2025 23:08:01
            [transactionCharge] => 1.00
            [chargeOn] => Amount
        )

)


==============================
[2025-11-03 23:09:22] CALLBACK TOYYIB START
Method: GET | InternalCall=Yes
RAW DATA:
Array
(
    [billCode] => aymb13ya
    [order_id] => SHIRT-FEC4E5E4
    [transaction_id] => TP2511030099525080
    [status_id] => 3
)

🔍 VERIFY RESPONSE:
Array
(
    [0] => Array
        (
            [billName] => Order SHIRT-FEC4E5E4
            [billDescription] => Payment for order SHIRT-FEC4E5E4
            [billExternalReferenceNo] => SHIRT-FEC4E5E4
            [billTo] => SUMAYYAH NORDIN
            [billEmail] => banihashimshop@gmail.com
            [billPhone] => 601120919007
            [billStatus] => 1
            [billpaymentStatus] => 3
            [billpaymentChannel] => FPX B2C
            [billpaymentAmount] => 5.00
            [billpaymentInvoiceNo] => TP2511030099525080
            [billSplitPayment] => 
            [billSplitPaymentArgs] => 
            [billpaymentSettlement] => Pending Settlement
            [billpaymentSettlementDate] => 
            [SettlementReferenceNo] => 
            [billPaymentDate] => 03-11-2025 23:08:01
            [transactionCharge] => 1.00
            [chargeOn] => Amount
        )

)

➡️ Parsed verifyData: status=3 amount= trx=TP2511030099525080
💬 WhatsApp (failed+admin) dihantar.
✅ Callback selesai (SHIRT-FEC4E5E4, status=3)
[2025-11-03 23:09:25] ✅ Callback dalaman dijalankan untuk SHIRT-FEC4E5E4
[2025-11-03 23:09:27] VERIFY BILL:
Array
(
    [0] => Array
        (
            [billName] => Order SHIRT-FEC4E5E4
            [billDescription] => Payment for order SHIRT-FEC4E5E4
            [billExternalReferenceNo] => SHIRT-FEC4E5E4
            [billTo] => SUMAYYAH NORDIN
            [billEmail] => banihashimshop@gmail.com
            [billPhone] => 601120919007
            [billStatus] => 1
            [billpaymentStatus] => 3
            [billpaymentChannel] => FPX B2C
            [billpaymentAmount] => 5.00
            [billpaymentInvoiceNo] => TP2511030099525080
            [billSplitPayment] => 
            [billSplitPaymentArgs] => 
            [billpaymentSettlement] => Pending Settlement
            [billpaymentSettlementDate] => 
            [SettlementReferenceNo] => 
            [billPaymentDate] => 03-11-2025 23:08:01
            [transactionCharge] => 1.00
            [chargeOn] => Amount
        )

)


==============================
[2025-11-03 23:09:42] CALLBACK TOYYIB START
Method: GET | InternalCall=Yes
RAW DATA:
Array
(
    [billCode] => aymb13ya
    [order_id] => SHIRT-FEC4E5E4
    [transaction_id] => TP2511030099525080
    [status_id] => 3
)

🔍 VERIFY RESPONSE:
Array
(
    [0] => Array
        (
            [billName] => Order SHIRT-FEC4E5E4
            [billDescription] => Payment for order SHIRT-FEC4E5E4
            [billExternalReferenceNo] => SHIRT-FEC4E5E4
            [billTo] => SUMAYYAH NORDIN
            [billEmail] => banihashimshop@gmail.com
            [billPhone] => 601120919007
            [billStatus] => 1
            [billpaymentStatus] => 3
            [billpaymentChannel] => FPX B2C
            [billpaymentAmount] => 5.00
            [billpaymentInvoiceNo] => TP2511030099525080
            [billSplitPayment] => 
            [billSplitPaymentArgs] => 
            [billpaymentSettlement] => Pending Settlement
            [billpaymentSettlementDate] => 
            [SettlementReferenceNo] => 
            [billPaymentDate] => 03-11-2025 23:08:01
            [transactionCharge] => 1.00
            [chargeOn] => Amount
        )

)

➡️ Parsed verifyData: status=3 amount= trx=TP2511030099525080
💬 WhatsApp (failed+admin) dihantar.
✅ Callback selesai (SHIRT-FEC4E5E4, status=3)
[2025-11-03 23:09:46] ✅ Callback dalaman dijalankan untuk SHIRT-FEC4E5E4

==============================
[2025-11-03 23:18:00] CALLBACK TOYYIB START
Method: GET | InternalCall=Yes
RAW DATA:
Array
(
    [billCode] => d5v587ge
    [order_id] => SHIRT-8B355555
    [transaction_id] => TP2511031021336959
    [status_id] => 3
)

🔍 VERIFY RESPONSE:
Array
(
    [0] => Array
        (
            [billName] => Order SHIRT-8B355555
            [billDescription] => Payment for order SHIRT-8B355555
            [billExternalReferenceNo] => SHIRT-8B355555
            [billTo] => NORDIN OTHMAN
            [billEmail] => ns2network@gmail.com
            [billPhone] => 601120919007
            [billStatus] => 1
            [billpaymentStatus] => 3
            [billpaymentChannel] => FPX B2C
            [billpaymentAmount] => 90.00
            [billpaymentInvoiceNo] => TP2511031021336959
            [billSplitPayment] => 
            [billSplitPaymentArgs] => 
            [billpaymentSettlement] => Pending Settlement
            [billpaymentSettlementDate] => 
            [SettlementReferenceNo] => 
            [billPaymentDate] => 03-11-2025 23:17:08
            [transactionCharge] => 1.00
            [chargeOn] => Amount
        )

)

➡️ Parsed verifyData: status=3 amount= trx=TP2511031021336959
🧾 Status sedia ada: PENDING
💬 WhatsApp (failed) dihantar & DB updated.
✅ Callback selesai (SHIRT-8B355555, status=3)
[2025-11-03 23:18:04] ✅ Callback dalaman dijalankan untuk SHIRT-8B355555
[2025-11-03 23:18:05] VERIFY BILL:
Array
(
    [0] => Array
        (
            [billName] => Order SHIRT-8B355555
            [billDescription] => Payment for order SHIRT-8B355555
            [billExternalReferenceNo] => SHIRT-8B355555
            [billTo] => NORDIN OTHMAN
            [billEmail] => ns2network@gmail.com
            [billPhone] => 601120919007
            [billStatus] => 1
            [billpaymentStatus] => 3
            [billpaymentChannel] => FPX B2C
            [billpaymentAmount] => 90.00
            [billpaymentInvoiceNo] => TP2511031021336959
            [billSplitPayment] => 
            [billSplitPaymentArgs] => 
            [billpaymentSettlement] => Pending Settlement
            [billpaymentSettlementDate] => 
            [SettlementReferenceNo] => 
            [billPaymentDate] => 03-11-2025 23:17:08
            [transactionCharge] => 1.00
            [chargeOn] => Amount
        )

)


==============================
[2025-11-03 23:18:25] CALLBACK TOYYIB START
Method: GET | InternalCall=Yes
RAW DATA:
Array
(
    [billCode] => d5v587ge
    [order_id] => SHIRT-8B355555
    [transaction_id] => TP2511031021336959
    [status_id] => 3
)

🔍 VERIFY RESPONSE:
Array
(
    [0] => Array
        (
            [billName] => Order SHIRT-8B355555
            [billDescription] => Payment for order SHIRT-8B355555
            [billExternalReferenceNo] => SHIRT-8B355555
            [billTo] => NORDIN OTHMAN
            [billEmail] => ns2network@gmail.com
            [billPhone] => 601120919007
            [billStatus] => 1
            [billpaymentStatus] => 3
            [billpaymentChannel] => FPX B2C
            [billpaymentAmount] => 90.00
            [billpaymentInvoiceNo] => TP2511031021336959
            [billSplitPayment] => 
            [billSplitPaymentArgs] => 
            [billpaymentSettlement] => Pending Settlement
            [billpaymentSettlementDate] => 
            [SettlementReferenceNo] => 
            [billPaymentDate] => 03-11-2025 23:17:08
            [transactionCharge] => 1.00
            [chargeOn] => Amount
        )

)

➡️ Parsed verifyData: status=3 amount= trx=TP2511031021336959
🧾 Status sedia ada: FAILED
⏭️ SKIP: WhatsApp telah dihantar sebelum ini.

==============================
[2025-11-03 23:56:31] CALLBACK TOYYIB START
Method: GET | InternalCall=Yes
RAW DATA:
Array
(
    [status_id] => 3
    [billcode] => 5yyilmae
    [order_id] => SHIRT-59A599B5
    [msg] => ok
    [transaction_id] => TP2511034230976526
)

🔍 VERIFY RESPONSE:
Array
(
    [0] => Array
        (
            [billName] => Order SHIRT-59A599B5
            [billDescription] => Payment for order SHIRT-59A599B5
            [billExternalReferenceNo] => SHIRT-59A599B5
            [billTo] => NORDIN OTHMAN
            [billEmail] => precoms@gmail.com
            [billPhone] => 601120919007
            [billStatus] => 1
            [billpaymentStatus] => 3
            [billpaymentChannel] => FPX B2C
            [billpaymentAmount] => 50.00
            [billpaymentInvoiceNo] => TP2511034230976526
            [billSplitPayment] => 
            [billSplitPaymentArgs] => 
            [billpaymentSettlement] => Pending Settlement
            [billpaymentSettlementDate] => 
            [SettlementReferenceNo] => 
            [billPaymentDate] => 03-11-2025 23:55:46
            [transactionCharge] => 1.00
            [chargeOn] => Amount
        )

)

➡️ Parsed verifyData: status=3 amount= trx=TP2511034230976526
🧾 Status sedia ada: PENDING
💬 WhatsApp (failed) dihantar & DB updated.
✅ Callback selesai (SHIRT-59A599B5, status=3)
[2025-11-03 23:56:35] 🔄 Internal callback_toyyib.php dipanggil (tanpa exit)

==============================
[2025-11-03 23:56:52] CALLBACK TOYYIB START
Method: GET | InternalCall=Yes
RAW DATA:
Array
(
    [status_id] => 3
    [billcode] => 5yyilmae
    [order_id] => SHIRT-59A599B5
    [msg] => ok
    [transaction_id] => TP2511034230976526
)

🔍 VERIFY RESPONSE:
Array
(
    [0] => Array
        (
            [billName] => Order SHIRT-59A599B5
            [billDescription] => Payment for order SHIRT-59A599B5
            [billExternalReferenceNo] => SHIRT-59A599B5
            [billTo] => NORDIN OTHMAN
            [billEmail] => precoms@gmail.com
            [billPhone] => 601120919007
            [billStatus] => 1
            [billpaymentStatus] => 3
            [billpaymentChannel] => FPX B2C
            [billpaymentAmount] => 50.00
            [billpaymentInvoiceNo] => TP2511034230976526
            [billSplitPayment] => 
            [billSplitPaymentArgs] => 
            [billpaymentSettlement] => Pending Settlement
            [billpaymentSettlementDate] => 
            [SettlementReferenceNo] => 
            [billPaymentDate] => 03-11-2025 23:55:46
            [transactionCharge] => 1.00
            [chargeOn] => Amount
        )

)

➡️ Parsed verifyData: status=3 amount= trx=TP2511034230976526
🧾 Status sedia ada: FAILED
⏭️ SKIP: WhatsApp telah dihantar sebelum ini.

==============================
[2025-11-04 00:00:24] CALLBACK TOYYIB START
Method: GET | InternalCall=Yes
RAW DATA:
Array
(
    [status_id] => 3
    [billcode] => 5yyilmae
    [order_id] => SHIRT-59A599B5
    [msg] => ok
    [transaction_id] => TP2511034230976526
)

🔍 VERIFY RESPONSE:
Array
(
    [0] => Array
        (
            [billName] => Order SHIRT-59A599B5
            [billDescription] => Payment for order SHIRT-59A599B5
            [billExternalReferenceNo] => SHIRT-59A599B5
            [billTo] => NORDIN OTHMAN
            [billEmail] => precoms@gmail.com
            [billPhone] => 601120919007
            [billStatus] => 1
            [billpaymentStatus] => 3
            [billpaymentChannel] => FPX B2C
            [billpaymentAmount] => 50.00
            [billpaymentInvoiceNo] => TP2511034230976526
            [billSplitPayment] => 
            [billSplitPaymentArgs] => 
            [billpaymentSettlement] => Pending Settlement
            [billpaymentSettlementDate] => 
            [SettlementReferenceNo] => 
            [billPaymentDate] => 03-11-2025 23:55:46
            [transactionCharge] => 1.00
            [chargeOn] => Amount
        )

)

➡️ Parsed verifyData: status=3 amount= trx=TP2511034230976526
🧾 Status sedia ada: FAILED
⏭️ SKIP: WhatsApp telah dihantar sebelum ini.

==============================
[2025-11-04 00:00:32] CALLBACK TOYYIB START
Method: GET | InternalCall=Yes
❌ Tiada data POST/GET diterima.
RAW DATA:
Array
(
)

❌ Missing BillCode / OrderID
🔍 VERIFY RESPONSE:
Array
(
    [0] => BILL-CODE-NOT-FOUND
)

➡️ Parsed verifyData: status=0 amount= trx=
❌ Order  tidak dijumpai.
🧾 Status sedia ada: 
💬 WhatsApp (failed) dihantar & DB updated.
✅ Callback selesai (, status=0)
[2025-11-04 00:00:37] 🔄 Internal callback_toyyib.php dipanggil (tanpa exit)

==============================
[2025-11-04 00:00:54] CALLBACK TOYYIB START
Method: GET | InternalCall=Yes
❌ Tiada data POST/GET diterima.
RAW DATA:
Array
(
)

❌ Missing BillCode / OrderID
🔍 VERIFY RESPONSE:
Array
(
    [0] => BILL-CODE-NOT-FOUND
)

➡️ Parsed verifyData: status=0 amount= trx=
❌ Order  tidak dijumpai.
🧾 Status sedia ada: 
💬 WhatsApp (failed) dihantar & DB updated.
✅ Callback selesai (, status=0)
[2025-11-04 00:01:08] 🔄 Internal callback_toyyib.php dipanggil (tanpa exit)

==============================
[2025-11-04 00:01:25] CALLBACK TOYYIB START
Method: GET | InternalCall=Yes
❌ Tiada data POST/GET diterima.
RAW DATA:
Array
(
)

❌ Missing BillCode / OrderID
🔍 VERIFY RESPONSE:
Array
(
    [0] => BILL-CODE-NOT-FOUND
)

➡️ Parsed verifyData: status=0 amount= trx=
❌ Order  tidak dijumpai.
🧾 Status sedia ada: 
💬 WhatsApp (failed) dihantar & DB updated.
✅ Callback selesai (, status=0)
[2025-11-04 00:01:29] 🔄 Internal callback_toyyib.php dipanggil (tanpa exit)

==============================
[2025-11-04 00:01:46] CALLBACK TOYYIB START
Method: GET | InternalCall=Yes
❌ Tiada data POST/GET diterima.
RAW DATA:
Array
(
)

❌ Missing BillCode / OrderID
🔍 VERIFY RESPONSE:
Array
(
    [0] => BILL-CODE-NOT-FOUND
)

➡️ Parsed verifyData: status=0 amount= trx=
❌ Order  tidak dijumpai.
🧾 Status sedia ada: 
💬 WhatsApp (failed) dihantar & DB updated.
✅ Callback selesai (, status=0)
[2025-11-04 00:01:50] 🔄 Internal callback_toyyib.php dipanggil (tanpa exit)

==============================
[2025-11-04 00:02:07] CALLBACK TOYYIB START
Method: GET | InternalCall=Yes
❌ Tiada data POST/GET diterima.
RAW DATA:
Array
(
)

❌ Missing BillCode / OrderID
🔍 VERIFY RESPONSE:
Array
(
    [0] => BILL-CODE-NOT-FOUND
)

➡️ Parsed verifyData: status=0 amount= trx=
❌ Order  tidak dijumpai.
🧾 Status sedia ada: 
💬 WhatsApp (failed) dihantar & DB updated.
✅ Callback selesai (, status=0)
[2025-11-04 00:02:11] 🔄 Internal callback_toyyib.php dipanggil (tanpa exit)

==============================
[2025-11-04 00:02:28] CALLBACK TOYYIB START
Method: GET | InternalCall=Yes
❌ Tiada data POST/GET diterima.
RAW DATA:
Array
(
)

❌ Missing BillCode / OrderID
🔍 VERIFY RESPONSE:
Array
(
    [0] => BILL-CODE-NOT-FOUND
)

➡️ Parsed verifyData: status=0 amount= trx=
❌ Order  tidak dijumpai.
🧾 Status sedia ada: 
💬 WhatsApp (failed) dihantar & DB updated.
✅ Callback selesai (, status=0)
[2025-11-04 00:02:41] 🔄 Internal callback_toyyib.php dipanggil (tanpa exit)

==============================
[2025-11-04 00:02:58] CALLBACK TOYYIB START
Method: GET | InternalCall=Yes
❌ Tiada data POST/GET diterima.
RAW DATA:
Array
(
)

❌ Missing BillCode / OrderID
🔍 VERIFY RESPONSE:
Array
(
    [0] => BILL-CODE-NOT-FOUND
)

➡️ Parsed verifyData: status=0 amount= trx=
❌ Order  tidak dijumpai.
🧾 Status sedia ada: 
💬 WhatsApp (failed) dihantar & DB updated.
✅ Callback selesai (, status=0)
[2025-11-04 00:03:01] 🔄 Internal callback_toyyib.php dipanggil (tanpa exit)

==============================
[2025-11-04 00:03:19] CALLBACK TOYYIB START
Method: GET | InternalCall=Yes
❌ Tiada data POST/GET diterima.
RAW DATA:
Array
(
)

❌ Missing BillCode / OrderID
🔍 VERIFY RESPONSE:
Array
(
    [0] => BILL-CODE-NOT-FOUND
)

➡️ Parsed verifyData: status=0 amount= trx=
❌ Order  tidak dijumpai.
🧾 Status sedia ada: 
💬 WhatsApp (failed) dihantar & DB updated.
✅ Callback selesai (, status=0)
[2025-11-04 00:03:22] 🔄 Internal callback_toyyib.php dipanggil (tanpa exit)

==============================
[2025-11-04 00:03:39] CALLBACK TOYYIB START
Method: GET | InternalCall=Yes
❌ Tiada data POST/GET diterima.
RAW DATA:
Array
(
)

❌ Missing BillCode / OrderID
🔍 VERIFY RESPONSE:
Array
(
    [0] => BILL-CODE-NOT-FOUND
)

➡️ Parsed verifyData: status=0 amount= trx=
❌ Order  tidak dijumpai.
🧾 Status sedia ada: 
💬 WhatsApp (failed) dihantar & DB updated.
✅ Callback selesai (, status=0)
[2025-11-04 00:03:44] 🔄 Internal callback_toyyib.php dipanggil (tanpa exit)

==============================
[2025-11-04 00:04:01] CALLBACK TOYYIB START
Method: GET | InternalCall=Yes
❌ Tiada data POST/GET diterima.
RAW DATA:
Array
(
)

❌ Missing BillCode / OrderID
🔍 VERIFY RESPONSE:
Array
(
    [0] => BILL-CODE-NOT-FOUND
)

➡️ Parsed verifyData: status=0 amount= trx=
❌ Order  tidak dijumpai.
🧾 Status sedia ada: 
💬 WhatsApp (failed) dihantar & DB updated.
✅ Callback selesai (, status=0)
[2025-11-04 00:04:05] 🔄 Internal callback_toyyib.php dipanggil (tanpa exit)

==============================
[2025-11-04 00:04:22] CALLBACK TOYYIB START
Method: GET | InternalCall=Yes
❌ Tiada data POST/GET diterima.
RAW DATA:
Array
(
)

❌ Missing BillCode / OrderID

==============================
[2025-11-04 00:11:52] CALLBACK TOYYIB START
Method: GET | InternalCall=Yes
RAW DATA:
Array
(
    [status_id] => 3
    [billcode] => n2qg6q6z
    [order_id] => SHIRT-3D8A1770
    [msg] => ok
    [transaction_id] => TP2511043343825754
)

🔍 VERIFY RESPONSE:
Array
(
    [0] => Array
        (
            [billName] => Order SHIRT-3D8A1770
            [billDescription] => Payment for order SHIRT-3D8A1770
            [billExternalReferenceNo] => SHIRT-3D8A1770
            [billTo] => NORZILA HASHIM
            [billEmail] => precoms@gmail.com
            [billPhone] => 601120919007
            [billStatus] => 1
            [billpaymentStatus] => 3
            [billpaymentChannel] => FPX B2C
            [billpaymentAmount] => 5.00
            [billpaymentInvoiceNo] => TP2511043343825754
            [billSplitPayment] => 
            [billSplitPaymentArgs] => 
            [billpaymentSettlement] => Pending Settlement
            [billpaymentSettlementDate] => 
            [SettlementReferenceNo] => 
            [billPaymentDate] => 04-11-2025 00:11:01
            [transactionCharge] => 1.00
            [chargeOn] => Amount
        )

)

➡️ Parsed verifyData: status=3 amount= trx=TP2511043343825754
🧾 Status sedia ada: PENDING
💬 WhatsApp (failed) dihantar & DB updated.
✅ Callback selesai (SHIRT-3D8A1770, status=3)
[2025-11-04 00:11:57] 🔄 Internal callback_toyyib.php dipanggil (tanpa exit)

==============================
[2025-11-04 00:12:13] CALLBACK TOYYIB START
Method: GET | InternalCall=Yes
RAW DATA:
Array
(
    [status_id] => 3
    [billcode] => n2qg6q6z
    [order_id] => SHIRT-3D8A1770
    [msg] => ok
    [transaction_id] => TP2511043343825754
)

🔍 VERIFY RESPONSE:
Array
(
    [0] => Array
        (
            [billName] => Order SHIRT-3D8A1770
            [billDescription] => Payment for order SHIRT-3D8A1770
            [billExternalReferenceNo] => SHIRT-3D8A1770
            [billTo] => NORZILA HASHIM
            [billEmail] => precoms@gmail.com
            [billPhone] => 601120919007
            [billStatus] => 1
            [billpaymentStatus] => 3
            [billpaymentChannel] => FPX B2C
            [billpaymentAmount] => 5.00
            [billpaymentInvoiceNo] => TP2511043343825754
            [billSplitPayment] => 
            [billSplitPaymentArgs] => 
            [billpaymentSettlement] => Pending Settlement
            [billpaymentSettlementDate] => 
            [SettlementReferenceNo] => 
            [billPaymentDate] => 04-11-2025 00:11:01
            [transactionCharge] => 1.00
            [chargeOn] => Amount
        )

)

➡️ Parsed verifyData: status=3 amount= trx=TP2511043343825754
🧾 Status sedia ada: FAILED
⏭️ SKIP: WhatsApp telah dihantar sebelum ini.

==============================
[2025-11-04 00:28:24] CALLBACK TOYYIB START
RAW DATA:
Array
(
    [status_id] => 1
    [billcode] => SIMTEST123
    [order_id] => SHIRT-DEMO01
    [transaction_id] => TP251104000001
    [msg] => ok
)

🚧 Mode simulasi (SIMTEST): bypass verify API
➡️ Parsed verifyData: status=1 amount= trx=TP251104000001
✅ Callback selesai (SHIRT-DEMO01, status=1)
🧩 Dipanggil dari return.php (tiada output)

==============================
[2025-11-04 00:28:26] CALLBACK TOYYIB START
RAW DATA:
Array
(
    [status_id] => 1
    [billcode] => SIMTEST123
    [order_id] => SHIRT-DEMO01
    [transaction_id] => TP251104000001
    [msg] => ok
)

🚧 Mode simulasi (SIMTEST): bypass verify API
➡️ Parsed verifyData: status=1 amount= trx=TP251104000001
✅ Callback selesai (SHIRT-DEMO01, status=1)
🧩 Dipanggil dari return.php (tiada output)

==============================
[2025-11-04 00:40:43] CALLBACK TOYYIB START
RAW DATA:
Array
(
    [status_id] => 1
    [billcode] => SIMTEST123
    [order_id] => SHIRT-DEMO01
    [transaction_id] => TP251104000001
    [msg] => ok
)

🚧 Mode simulasi (SIMTEST): bypass verify API
➡️ Parsed verifyData: status=1 amount= trx=TP251104000001
✅ Callback selesai (SHIRT-DEMO01, status=1)
🧩 Dipanggil dari return.php (tiada output)

==============================
[2025-11-04 00:41:49] CALLBACK TOYYIB START
RAW DATA:
Array
(
    [status_id] => 1
    [billcode] => SIMTEST123
    [order_id] => SHIRT-DEMO01
)

🚧 Mode simulasi (SIMTEST): bypass verify API
➡️ Parsed verifyData: status=1 amount= trx=
✅ Callback selesai (SHIRT-DEMO01, status=1)
🧩 Dipanggil dari return.php (tiada output)

==============================
[2025-11-04 00:42:27] CALLBACK TOYYIB START
RAW DATA:
Array
(
    [status_id] => 2
    [billcode] => SIMTEST123
    [order_id] => SHIRT-DEMO01
)

🚧 Mode simulasi (SIMTEST): bypass verify API
➡️ Parsed verifyData: status=2 amount= trx=
✅ Callback selesai (SHIRT-DEMO01, status=2)
🧩 Dipanggil dari return.php (tiada output)

==============================
[2025-11-04 00:42:38] CALLBACK TOYYIB START
RAW DATA:
Array
(
    [status_id] => 3
    [billcode] => SIMTEST123
    [order_id] => SHIRT-DEMO01
)

🚧 Mode simulasi (SIMTEST): bypass verify API
➡️ Parsed verifyData: status=3 amount= trx=
✅ Callback selesai (SHIRT-DEMO01, status=3)
🧩 Dipanggil dari return.php (tiada output)

==============================
[2025-11-04 00:42:55] CALLBACK TOYYIB START
RAW DATA:
Array
(
    [status_id] => 1
    [billcode] => SIMTEST123
    [order_id] => SHIRT-DEMO01
)

🚧 Mode simulasi (SIMTEST): bypass verify API
➡️ Parsed verifyData: status=1 amount= trx=
✅ Callback selesai (SHIRT-DEMO01, status=1)
🧩 Dipanggil dari return.php (tiada output)

==============================
[2025-11-04 00:43:51] CALLBACK TOYYIB START
RAW DATA:
Array
(
    [status_id] => 1
    [billcode] => SIMTEST123
    [order_id] => SHIRT-DEMO01
)

🚧 Mode simulasi (SIMTEST): bypass verify API
➡️ Parsed verifyData: status=1 amount= trx=
✅ Callback selesai (SHIRT-DEMO01, status=1)
🧩 Dipanggil dari return.php (tiada output)

==============================
[2025-11-04 00:44:26] CALLBACK TOYYIB START
RAW DATA:
Array
(
    [status_id] => 2
    [billcode] => SIMTEST123
    [order_id] => SHIRT-DEMO01
)

🚧 Mode simulasi (SIMTEST): bypass verify API
➡️ Parsed verifyData: status=2 amount= trx=
✅ Callback selesai (SHIRT-DEMO01, status=2)
🧩 Dipanggil dari return.php (tiada output)

==============================
[2025-11-04 00:45:07] CALLBACK TOYYIB START
RAW DATA:
Array
(
    [status_id] => 2
    [billcode] => SIMTEST123
    [order_id] => SHIRT-DEMO01
)

🚧 Mode simulasi (SIMTEST): bypass verify API
➡️ Parsed verifyData: status=2 amount= trx=
✅ Callback selesai (SHIRT-DEMO01, status=2)
🧩 Dipanggil dari return.php (tiada output)

==============================
[2025-11-04 00:48:26] CALLBACK TOYYIB START
RAW DATA:
Array
(
    [status_id] => 3
    [billcode] => wte25l6o
    [order_id] => SHIRT-0D89059B
    [msg] => ok
    [transaction_id] => TP2511041728255224
)

🔍 VERIFY RESPONSE:
Array
(
    [0] => Array
        (
            [billName] => Order SHIRT-0D89059B
            [billDescription] => Payment for order SHIRT-0D89059B
            [billExternalReferenceNo] => SHIRT-0D89059B
            [billTo] => SUDIN BIN MAMAT
            [billEmail] => ns2network@gmail.com
            [billPhone] => 601120919007
            [billStatus] => 1
            [billpaymentStatus] => 3
            [billpaymentChannel] => FPX B2C
            [billpaymentAmount] => 5.00
            [billpaymentInvoiceNo] => TP2511041728255224
            [billSplitPayment] => 
            [billSplitPaymentArgs] => 
            [billpaymentSettlement] => Pending Settlement
            [billpaymentSettlementDate] => 
            [SettlementReferenceNo] => 
            [billPaymentDate] => 04-11-2025 00:47:57
            [transactionCharge] => 1.00
            [chargeOn] => Amount
        )

)

➡️ Parsed verifyData: status=3 amount= trx=TP2511041728255224
💬 WhatsApp (failed) dihantar kepada 601120919007 dengan link https://toyyibpay.com/wte25l6o.
✅ Callback selesai (SHIRT-0D89059B, status=3)
🧩 Dipanggil dari return.php (tiada output)

==============================
[2025-11-04 00:59:36] CALLBACK TOYYIB START
RAW DATA:
Array
(
    [status_id] => 2
    [billcode] => SIMTEST123
    [order_id] => SHIRT-DEMO01
)

🚧 Mode simulasi (SIMTEST): bypass verify API
➡️ Parsed verifyData: status=2 amount= trx=
✅ Callback selesai (SHIRT-DEMO01, status=2)
🧩 Dipanggil dari return.php (tiada output)

==============================
[2025-11-04 01:02:18] CALLBACK TOYYIB START
RAW DATA:
Array
(
    [status_id] => 2
    [billcode] => SIMTEST123
    [order_id] => SHIRT-DEMO01
)

🚧 Mode simulasi (SIMTEST): bypass verify API
➡️ Parsed verifyData: status=2 amount= trx=
✅ Callback selesai (SHIRT-DEMO01, status=2)
🧩 Dipanggil dari return.php (tiada output)

==============================
[2025-11-04 01:04:00] CALLBACK TOYYIB START
RAW DATA:
Array
(
    [status_id] => 3
    [billcode] => opnkkjq1
    [order_id] => SHIRT-D60A0595
    [msg] => ok
    [transaction_id] => TP2511044325474652
)

🔍 VERIFY RESPONSE:
Array
(
    [0] => Array
        (
            [billName] => Order SHIRT-D60A0595
            [billDescription] => Payment for order SHIRT-D60A0595
            [billExternalReferenceNo] => SHIRT-D60A0595
            [billTo] => NORZILA HASHIM
            [billEmail] => annur76@gmail.com
            [billPhone] => 601120919007
            [billStatus] => 1
            [billpaymentStatus] => 3
            [billpaymentChannel] => FPX B2C
            [billpaymentAmount] => 50.00
            [billpaymentInvoiceNo] => TP2511044325474652
            [billSplitPayment] => 
            [billSplitPaymentArgs] => 
            [billpaymentSettlement] => Pending Settlement
            [billpaymentSettlementDate] => 
            [SettlementReferenceNo] => 
            [billPaymentDate] => 04-11-2025 01:03:28
            [transactionCharge] => 1.00
            [chargeOn] => Amount
        )

)

➡️ Parsed verifyData: status=3 amount= trx=TP2511044325474652
💬 WhatsApp (failed) dihantar kepada 601120919007 dengan link https://toyyibpay.com/opnkkjq1.
✅ Callback selesai (SHIRT-D60A0595, status=3)
🧩 Dipanggil dari return.php (tiada output)
