panduan28 Oktober 2026

Pesanan WooCommerce Midtrans Stuck di Pending: Cek Notification URL

Midtrans WooCommerce pending: order tetap Pending payment setelah dibayar? Cek Payment Notification URL, sandbox vs production, log, dan efek ke pengingat.

Kalau pesanan WooCommerce dengan Midtrans tetap berstatus Pending payment padahal pembeli sudah membayar, hampir selalu notifikasi pembayaran dari Midtrans tidak sampai ke situsmu. Periksa Payment Notification URL di dashboard Midtrans, pastikan situsmu publik, dan baca log pembayaran. Panduan ini menjelaskan urutan cek untuk kasus midtrans woocommerce pending dan dampaknya ke pengingat WhatsApp.

Ringkasnya: Midtrans memberi tahu WooCommerce lewat notifikasi HTTP ke satu URL. Kalau URL itu salah, ada di environment yang keliru, atau situs tidak bisa dijangkau, order tidak pernah berpindah dari Pending payment. Perbaiki notifikasinya dulu, baru urus pengingat.

Kenapa pesanan sudah dibayar tapi tetap Pending payment?

Di WooCommerce, Pending payment berarti pesanan sudah diterima tetapi belum ada pembayaran, sedangkan Processing berarti pembayaran sudah masuk dan stok sudah dikurangi (dokumentasi order status WooCommerce). Perpindahan dari yang pertama ke yang kedua tidak terjadi dengan sendirinya. Plugin Midtrans harus menerima kabar dari server Midtrans, yang disebut notifikasi pembayaran (payment notification, yaitu permintaan HTTP otomatis dari Midtrans ke situsmu setiap status transaksi berubah).

Misalnya di sebuah toko kaos: pembeli membayar lewat QRIS, Midtrans mencatat transaksi sukses, tetapi di WooCommerce order #1042 masih Pending payment. Artinya pembayaran ada di Midtrans, sementara notifikasinya tidak sampai atau tidak diproses. Cek dulu di dashboard Midtrans apakah transaksinya benar-benar sukses, supaya kamu tahu masalahnya ada di jalur notifikasi dan bukan di pembayaran.

Bagaimana cek Payment Notification URL di Midtrans?

  1. Login ke dashboard Midtrans (MAP) dan pilih environment yang dipakai plugin, Sandbox atau Production.
  2. Buka SETTINGS > CONFIGURATION (dokumentasi notifikasi HTTP Midtrans).
  3. Lihat kolom Payment Notification URL. Menurut README plugin Midtrans-WooCommerce dan halaman plugin di wordpress.org, isinya berbentuk https://tokokamu.com/?wc-api=WC_Gateway_Midtrans, yaitu alamat situs ditambah /?wc-api=WC_Gateway_Midtrans.
  4. Periksa ejaan, awalan https:// (Midtrans merekomendasikannya), dan domain yang tepat. Domain lama, versi www versus non-www, atau alamat staging sering tertinggal di sini.
  5. Klik Update, lalu uji dengan satu transaksi baru.

Midtrans hanya menghitung notifikasi sebagai diterima kalau situsmu membalas status 2xx. Redirect 301, 302, atau 303 tidak dicoba ulang, jadi kalau situsmu mengalihkan http ke https atau www ke non-www pada URL itu, tulis URL final langsung di dashboard. Pola wc-api tertulis di README plugin dan halaman wordpress.org yang kami buka per Oktober 2026. Halaman wordpress.org juga menandai versi 2.32.3 (Agustus 2024) belum diuji dengan tiga rilis besar WordPress terakhir. Cocokkan dengan petunjuk di versi plugin yang kamu pasang.

Apakah masalahnya sandbox vs production atau situs tidak publik?

Sandbox dan Production adalah dua environment terpisah di dashboard Midtrans. Plugin meminta kamu memilih environment lebih dulu, dan README menegaskan bahwa key untuk Sandbox dan Production berbeda. Tiga kekeliruan yang sering muncul:

  • Plugin memakai server key Production, tetapi URL notifikasi hanya diisi di environment Sandbox (atau sebaliknya).
  • Environment di pengaturan plugin dan environment tempat kamu membuka dashboard tidak sama.
  • Situs masih berjalan di localhost, di balik password hosting, atau dibatasi IP. Server Midtrans tidak bisa menjangkau alamat seperti itu, jadi notifikasi tidak pernah masuk.

Cloudflare, firewall hosting, atau plugin keamanan WordPress juga bisa memblokir permintaan dari Midtrans. Kalau kamu curiga, lihat log firewall untuk permintaan ke /?wc-api=WC_Gateway_Midtrans.

Di mana mengecek log dan status order?

  1. Buka transaksi di dashboard Midtrans dan catat statusnya (misalnya settlement atau pending).
  2. Di WordPress, buka WooCommerce > Orders, lalu buka order terkait. Baca Order notes di sisi kanan untuk melihat apakah ada catatan dari gateway.
  3. Buka WooCommerce > Status > Logs dan cari log milik plugin Midtrans (nama sumber log bisa berbeda antar versi plugin). Aktifkan logging di pengaturan plugin kalau tersedia.
  4. Kalau status di Midtrans sukses tetapi order tidak berubah, kirim ulang notifikasi dari dashboard Midtrans bila opsinya ada, lalu lihat apakah order bergerak.

Satu hal yang perlu dibedakan: pesanan yang tidak dibayar bisa dibatalkan otomatis oleh WooCommerce setelah batas waktu Hold stock, jadi order yang tampak hilang belum tentu bug notifikasi. Lihat penjelasan status pesanan WooCommerce untuk arti tiap status.

Bisakah notifikasi Midtrans datang tidak berurutan?

Bisa. Dokumentasi Midtrans menyebut bahwa dalam kasus yang jarang, status settlement datang sebelum pending. Midtrans menyarankan memanggil Get Status API untuk mengetahui status sebenarnya, atau mengabaikan notifikasi pending. Kalau kamu memakai tambahan kode atau plugin lain yang ikut mengubah status order, pastikan pending tidak menimpa hasil settlement.

Midtrans juga mencoba mengirim ulang notifikasi yang gagal diterima, sampai lima kali dengan jeda sekitar 2, 10, 30, 90, dan 210 menit untuk kegagalan umum. Menurut dokumentasinya, jumlah percobaan berbeda untuk kode tertentu: 500 diulang sekali, 503 empat kali, 400 dan 404 dua kali. Kalau situsmu sempat down atau lambat lebih dari 15 detik, order bisa terlambat berubah dan tidak selalu perlu diintervensi manual. Tunggu jendela percobaan ulang itu sebelum memutuskan notifikasi benar-benar hilang.

Apa efeknya ke pengingat WhatsApp?

Pengingat dan notifikasi status di Kirimi membaca status order WooCommerce, bukan status di Midtrans. Selama order tertahan di Pending payment, pembeli yang sudah membayar bisa menerima pengingat belum dibayar, dan notifikasi Diproses tidak terkirim. Perbaiki jalur notifikasi Midtrans dulu; aturan kapan pengingat berhenti dan cara membaca riwayatnya dibahas di alasan notifikasi dilewati di riwayat dan pengingat pembayaran WooCommerce.

Kapan menghubungi support Midtrans?

Hubungi support Midtrans kalau URL sudah benar dan situs publik, tetapi notifikasi tetap tidak masuk, atau kalau transaksi di dashboard Midtrans punya status yang tidak masuk akal. Siapkan order ID, waktu transaksi, environment, dan salinan log. Hubungi developer plugin atau hosting kalau permintaan ke URL notifikasi tidak muncul di log server sama sekali.

Kalau kamu ingin pengingat dan notifikasi status ke WhatsApp mengikuti status order tokomu, daftar di dash.kirimi.id/register (integrasi toko tersedia di paket berbayar, mulai Rp29.000/bulan paket Lite per Oktober 2026) dan ikuti panduan integrasi WooCommerce.

Pertanyaan yang sering diajukan

Kenapa pesanan WooCommerce tetap Pending payment padahal pembeli sudah bayar lewat Midtrans?

Penyebab paling umum adalah notifikasi pembayaran dari Midtrans tidak sampai ke situsmu, sehingga WooCommerce tidak pernah tahu pembayaran sudah masuk. Periksa Payment Notification URL di dashboard Midtrans (SETTINGS > CONFIGURATION) untuk environment yang kamu pakai, pastikan formatnya benar dan situsmu bisa dijangkau dari internet.

Apa isi Payment Notification URL Midtrans untuk WooCommerce?

Menurut README plugin Midtrans-WooCommerce dan halaman plugin di wordpress.org, isinya alamat situsmu diikuti /?wc-api=WC_Gateway_Midtrans, misalnya https://tokokamu.com/?wc-api=WC_Gateway_Midtrans. Cek lagi petunjuk di versi plugin yang kamu pasang karena pola ini bisa berubah.

Apakah URL notifikasi sandbox dan production harus diisi terpisah?

Dashboard Midtrans punya environment Sandbox dan Production, dan petunjuk plugin meminta kamu memilih environment dulu sebelum membuka pengaturan. Isi dan cek URL di environment yang sedang dipakai plugin, dan pakai server key yang sesuai karena key keduanya berbeda.

Apa yang dilakukan Midtrans kalau situsku tidak membalas notifikasi?

Midtrans hanya menganggap notifikasi diterima kalau situsmu membalas dengan status 2xx. Untuk respons lain, Midtrans mencoba lagi sampai lima kali dengan jeda sekitar 2, 10, 30, 90, dan 210 menit, tergantung jenis kegagalannya. Redirect 301, 302, dan 303 tidak dicoba ulang.

Bisakah status settlement datang lebih dulu daripada pending?

Bisa, walau jarang. Dokumentasi Midtrans menyebut notifikasi settlement kadang tiba sebelum pending, dan menyarankan memanggil Get Status API atau mengabaikan notifikasi pending. Kalau status order di WooCommerce terlihat mundur, ini salah satu dugaan yang layak dicek.

Apa dampaknya ke pengingat pembayaran WhatsApp kalau status order salah?

Pengingat atau notifikasi status mengikuti status order di WooCommerce. Kalau order pembeli yang sudah bayar masih tercatat Pending payment, pengingat bisa terkirim padahal ia sudah membayar. Kirimi tidak memperbaiki pembayaran, jadi akar masalah di sisi notifikasi Midtrans tetap harus kamu selesaikan.

Sumber

Bagikan artikel ini

Siap otomatisasi WhatsApp bisnis Anda?

Mulai gratis, tanpa kartu kredit. Setup dalam 5 menit.

Coba Gratis Sekarang

Butuh bantuan?

Tim CS siap membantu via WhatsApp

Chat CS