Online Store Kit Online Store Kit
Free plugin, paid add-on optional

Indonesian Banks for WooCommerce

Take bank transfer, e-wallet and QRIS payments in your WooCommerce store. Money lands in your own account, you keep every rupiah, and there is nothing to register for.

40+ payment methods included. Works with the Checkout block and HPOS.

Indonesian Banks for WooCommerce

Take payments in five minutes, keep every rupiah.

Your customer picks a bank at checkout, sees your account details and a unique payment code, and transfers the exact amount to you. No API keys, no merchant onboarding, no KYC paperwork, no settlement delay, and nobody taking a percentage. When checking those transfers by hand starts to cost you an hour a day, the Pro add-on does that part for you.

What you get

Manual transfer, done properly

Six things that make manual transfer feel a lot less manual.

01
43 payment methods, all free

Commercial, syariah, regional and digital banks, plus GoPay, OVO, DANA, LinkAja and ShopeePay as manual transfer destinations.

02
Unique payment code

Add or subtract a small random amount so every transfer is identifiable in your statement. The code is frozen onto the order and never changes between checkout and the email.

03
Static QRIS at checkout

Upload the QRIS image your bank or wallet app already gave you and let customers scan it. No provider account needed.

04
Custom bank builder

Any destination that is not on the list becomes a payment method, with your own name, logo and instructions.

05
Several accounts per method

Hold more than one account for a bank and show them at checkout, in emails and in the customer account area.

06
Export and import your setup

Configure one store, download the file, import it on the rest instead of retyping account numbers.

Indonesian Banks for WooCommerce configurable banks
Where it shows

The details, everywhere they help

The same account numbers and the same exact figure, from checkout through to the order you verify in your dashboard.

One settings screen

01
Every method in one place

Payment methods, the payment code, custom banks and tools sit under a single Indonesian Banks menu. It is the same data as WooCommerce, Settings, Payments, so either screen works.

02
Pro adds tabs, not a second plugin to configure

Reminders, Confirmation and Incoming Payments appear in the same strip. Nothing is configured twice.

03
Set it up once, move it anywhere

Export the configuration to a file and import it on your other stores. Uploaded logos and QRIS images stay with their own store.

Indonesian Banks for WooCommerce configuring a bank

For the customer

Checkout, block and shortcode Order received page Order confirmation email My Account order view

For you

Admin order screen, with the code and the expected figure WooCommerce order list WooCommerce status report Pending Transfers screen (Pro)

Copy buttons on

The account number The exact amount to transfer The unique payment code

Emails that go out

Payment details inside WooCommerce's own order emails Manual transfer reminder, to the customer (Pro) Payment confirmation received, to you (Pro) Daily transfer summary, to you (Pro)

Where the figure comes back

Pasted straight from your statement (Pro) A CSV exported from your banking app (Pro) A webhook from a mutation service (Pro) The REST API or WP-CLI (Pro)

Confirming payments over WhatsApp?

OneClick Chat to Order puts a WhatsApp button across your store, so customers send the transfer receipt in the same chat they ordered from.

See the plugin →
Why this plugin

Built for how Indonesian stores actually sell

Nothing held back

Every bank, every e-wallet, QRIS, unique payment codes and import and export are free, with no upsell inside the settings screens.

Your money never leaves your bank

No third party holds the funds and no settlement window applies. The transfer is between your customer and you.

Written for Indonesian banking

Statement dates read day-first, amounts read with dots as thousands separators, and the payment code survives a rounded figure.

Made to be extended

A filterable method registry, documented hooks, and an add-on that uses them rather than forking the plugin.

Nothing automatic happens unseen

Statement matching starts in report-only mode and changes nothing until you agree with what it reports. Customers see the cancellation deadline before it arrives, and every decision the matcher makes is logged.

Free and Pro share one screen

The add-on puts its tabs beside the free plugin's rather than being a second plugin to learn. Same methods, same accounts, nothing configured twice.

Ready to take transfers?

Install the free plugin from your dashboard and switch on the banks you actually use. Five minutes, no registration, no fees.

Tutorial video

Get Started

Prefer watching? The setup walkthrough covers install to first order in under ten minutes.

Indonesian Banks for WooCommerce Watch the tutorial video
Free and Pro

Where the free plugin stops

Everything that takes the money is free and stays free. The paid add-on is only about the work that happens after the customer clicks Bank Transfer.

Feature Free Pro
Bank, e-wallet and QRIS methods at checkout 43 43
Unique payment code, custom banks, import and export Included in Free Included in Pro
Pending transfers on one screen, with bulk settle Not included in Free Included in Pro
Reminder emails and automatic cancellation Not included in Free Included in Pro
Payment confirmation form and WhatsApp button Not included in Free Included in Pro
Match a bank statement by CSV, paste or webhook Not included in Free Included in Pro
Dynamic QRIS with the amount included Not included in Free Included in Pro
Dokan and WCFM vendor accounts Not included in Free Included in Pro

Pro is an add-on. It needs the free plugin installed and running, version 1.1.0 or newer.

The premium add-on

When checking transfers by hand stops being free

Indonesian Banks for WooCommerce Pro takes over the work after checkout: chasing the customers who forget, letting them tell you they have paid, and matching what arrived in your account against what is still waiting.

Pending transfers on one screen, oldest first Reminder emails and automatic cancellation Payment confirmation form and WhatsApp button Statement matching by CSV, paste or webhook Daily summary email One year of updates and email support
Indonesian Banks for WooCommerce
Pro
Price range: $59.00 through $299.00

One site, one year of updates and support. Multi-site and agency licences are available.

Renews yearly. If a licence lapses nothing automatic runs, your orders are untouched, and checkout carries on with the free plugin.

Most Indonesian online stores do not start with a payment gateway.

They start with a bank account, a WhatsApp number, and a customer who asks “transfer ke mana, kak?”

That works.

It is how an enormous amount of commerce in Indonesia actually happens.

What does not work is doing it by hand inside WooCommerce, pasting account numbers into the order notes, answering the same question forty times a week, and squinting at a bank statement trying to work out which of the three transfers for Rp 150.000 belongs to which order.

Indonesian Banks for WooCommerce closes that gap.

Your customer picks a bank at checkout, sees your account details and an amount that is unique to their order, and transfers it.

You match it against your statement and ship.

No API keys, no merchant onboarding, no KYC paperwork, no settlement delay, and nobody taking a percentage.

The plugin has served Indonesian stores since 2018.

Version 1.0.0 is a complete rebuild for modern WordPress and WooCommerce.

What is Indonesian Banks for WooCommerce?

Indonesian Banks for WooCommerce

Indonesian Banks for WooCommerce is a free WooCommerce payment plugin that lets Indonesian stores take manual bank transfer, e-wallet and QRIS payments directly into their own accounts, with no gateway registration and no per-transaction fee.

Your customer picks a bank at checkout, sees your account details and a unique payment code, and transfers the exact amount to you.

The situation it removes is familiar to anyone who has sold online in Indonesia without a gateway.

Account numbers live in a text field somewhere, or in the order notes, or in a screenshot the customer has to squint at.

Two customers order the same product on the same afternoon and pay the same figure, and now your statement has two identical credits and no way to tell which order each belongs to.

Somebody transfers, nobody notices for a day, and the customer messages you asking whether the order went through.

The plugin has served Indonesian stores since 2018.

Version 1.0.0 was a complete rebuild for modern WordPress and WooCommerce, and as of August 2026 the free edition is at 1.1.0 with 43 payment methods in the registry.

What the free edition covers

Indonesian Banks for WooCommerce configurable banks

Everything that takes money is free and has no expiry.

That includes commercial banks such as Mandiri, BNI, BRI, BCA and CIMB Niaga, syariah banks including BSI and Muamalat, regional development banks such as Bank DKI and BJB, and digital banks including Jago, SeaBank and blu by BCA Digital.

GoPay, OVO, DANA, LinkAja and ShopeePay appear as manual transfer destinations with a phone number rather than an account number.

Static QRIS is included, using the QRIS image your own bank or wallet app already gave you.

If a destination is not on the list, the custom bank builder turns it into a payment method with your own name, logo and instructions.

How does the unique payment code actually work?

Indonesian Banks for WooCommerce

The unique payment code adds or subtracts a small random amount from the order total, so each transfer arrives in your statement as a figure no other waiting order shares.

An order for Rp 150.000 becomes Rp 150.900, and the next one becomes Rp 150.313.

That difference is what lets you match a credit to an order without asking the customer for a receipt.

Two details matter more than the idea itself, and both are places where a naive implementation goes wrong.

The code is generated once and then frozen onto the order.

It does not change between the checkout page, the order received page, the confirmation email and the order you open in your dashboard a week later.

A code that drifts between those screens is worse than no code at all, because the customer transfers one figure while your records expect another.

The range and the label are yours to set, and can be overridden per method.

A store whose orders cluster around round numbers wants a wider range than a store selling at odd prices already.

Where the details appear

The same account numbers and the same exact figure follow the order through every screen either party sees.

For the customer that means checkout, the order received page, the confirmation email and the My Account order view, each with copy buttons on the account number and on the amount so they transfer the right figure rather than retyping it.

For you it means the admin order screen, the order list and the WooCommerce status report.

What does Indonesian Banks for WooCommerce Pro add?

Indonesian Banks for WooCommerce

Indonesian Banks for WooCommerce Pro is a paid add-on covering the work after checkout: reminder emails and automatic cancellation, a payment confirmation form, statement matching by CSV, paste or webhook, a daily summary email, dynamic QRIS, down payments, per-method rules, and multi-vendor support for Dokan and WCFM.

It requires the free plugin at 1.1.0 or newer and does not replace it.

The reason to reach for it is time, not capability.

The free plugin takes the money perfectly well forever.

What it does not do is the part that starts once the customer clicks Bank Transfer: opening your banking app, reading down the statement, finding the order that matches each figure, and marking it paid.

At a few orders a day that is a small task.

At fifty a day it is an hour, every day, and it is the part that goes wrong when you are busy.

Matching a bank statement

Three routes in, all governed by the same rules: an exact amount, exactly one waiting order, never the same credit twice, and never a guess between two candidates.

You can post credits from a bank mutation service to a webhook, upload a CSV exported from your banking app, or paste a column of figures straight from your statement.

Automatic matching starts in report-only mode.

It records what it would have done and changes nothing, so you can watch it for a few days before you let it settle anything.

The plugin tells you to do exactly that on the settings screen.

Credits are matched only against orders placed within a look-back window you control, and never against an order placed after the money arrived.

A figure that has no match inside that window says so and names the window, rather than claiming no such order exists.

Chasing and confirming

A reminder email goes out after a number of hours you choose, and orders nobody ever paid for can cancel themselves and release their stock.

Customers are shown the deadline on the order page and in their email, so nothing is cancelled without warning.

Customers can also tell you first.

konfirmasi pembayaran form on your own site takes an optional proof-of-transfer upload, and a WhatsApp button opens a chat with the order number, amount and method already written.

Confirmed orders are flagged where you will see them.

How do you set it up?

Indonesian Banks for WooCommerce

Installing Indonesian Banks for WooCommerce and taking your first transfer takes about five minutes, with no account to create anywhere.

Install the plugin, open the Indonesian Banks menu, switch on the banks you use and enter each account number, then switch on the unique payment code and place a test order.

The steps below use the real menu names, in the order you meet them.

  1. Install Indonesian Banks for WooCommerce from Plugins, Add New and activate it.
  2. Open Indonesian Banks in the admin menu. Every payment method sits on the Payment Methods tab. This is the same data as WooCommerce, Settings, Payments, so either screen works.
  3. Switch on the banks and e-wallets you actually use, and enter the account number and account holder name for each. Add more than one account to a method if you want them all shown.
  4. On the Payment Code tab, switch on the unique payment code and set the range and the label. This is the setting that makes matching possible later.
  5. Place a test order and check that the figure on the order received page, in the email and on the admin order screen all agree.

For Pro, install and activate the free plugin first, upload the add-on through Plugins, Add New, Upload Plugin, and enter your licence key on the License tab under Indonesian Banks.

The new settings appear as extra tabs in that same screen.

A full walkthrough in Indonesian, covering installation through to receiving your first transfer, is published at Seni Berpikir.

Who is this for, and who should skip it?

This suits a store that sells in rupiah on its own WooCommerce site, takes payment by bank transfer, and has enough orders that checking them by hand has stopped being free.

It suits it least when a gateway is already working, or when order volume is high and values are low.

Three situations where it fits well:

  • High-ticket, made-to-order businesses. Furniture, custom fashion, catering, wedding and event services, travel packages. Few orders, large values, and deposits already part of how the business works. A percentage fee on a Rp 15 juta order is real money.
  • Wholesale and grosir sellers. B2B pricing and invoice-shaped ordering, where transfer is the norm anyway.
  • Community and institutional sellers. Pesantren, koperasi, schools and organisations, where transfer is culturally expected and the entity often will not do gateway onboarding.

And the cases where you should not buy, which are worth stating plainly:

  • You already run Midtrans, Xendit or Doku happily. Verification is solved. This would solve it a second time.
  • High volume, low value retail. At a thousand small orders a month, a gateway’s per-transaction cost buys you something worth having, which is never thinking about reconciliation again.
  • You sell only on marketplaces. There is no WooCommerce checkout to reconcile.
  • You do not sell in rupiah. The unique payment code works in whole rupiah.

How does it compare to a payment gateway, or to doing it by hand?

A payment gateway buys you automatic verification and charges for it on every transaction, forever.

Indonesian Banks for WooCommerce moves the money directly and asks you to verify it yourself.

The Pro add-on automates that verification once, for a yearly licence, while the money keeps going straight to your bank.

The comparison that matters is not feature counts, it is what each approach costs and what it asks of you.

Approach Fees Settlement Onboarding Who verifies
Manual transfer by hand None Immediate None You, in your banking app
Indonesian Banks for WooCommerce (free) None Immediate None You, with a unique figure per order
Indonesian Banks for WooCommerce Pro Yearly licence Immediate None The plugin, from your statement
Payment gateway Per transaction Next day or later Registration and verification The gateway

Gateways are good at what they do, and the registration barrier is lower than it used to be.

Several now onboard businesses with no legal entity.

The reasons stores still choose direct transfer are the per-transaction cost on large orders, settlement landing in your account immediately rather than the next day, and the funds never sitting with a third party in the meantime.

Against doing it by hand with a plain bank transfer field, the free plugin adds the unique payment code, copy buttons, several accounts per method, and the details appearing in every email and screen automatically.

That is the difference between a statement you can match and a statement you have to guess at.

What does it require?

The free plugin needs WordPress 6.5 or newer, WooCommerce 8.2 or newer and PHP 7.4 or newer.

Indonesian Banks for WooCommerce Pro needs all of that plus the free plugin at version 1.1.0 or newer.

Both are compatible with High-Performance Order Storage and with the Checkout block.

Requirement Free Pro
WordPress 6.5 or newer 6.5 or newer
WooCommerce 8.2 or newer 8.2 or newer
PHP 7.4 or newer 7.4 or newer
Indonesian Banks for WooCommerce Not applicable 1.1.0 or newer
Store currency IDR for the payment code IDR for the payment code
Checkout block Supported Supported
Classic checkout shortcode Supported Supported
High-Performance Order Storage Supported Supported
Multisite Supported Licence is per site

Multi-vendor stores running Dokan or WCFM are supported by Pro, which shows each vendor’s own bank details on their own orders.

An order spanning two vendors falls back to the shop’s account rather than paying one vendor for both.

The questions people ask before switching their checkout

The short answers live in the FAQ above.

The five below need a paragraph rather than two sentences: what happens when two customers pay the same amount, whether the plugin works outside Indonesia, what leaves your server, what the last release changed, and where to get help.

They are the objections that come up most often.

What happens if two customers pay the same amount?

With the unique payment code switched on, they do not.

That is the whole purpose of it: the code makes each waiting order’s expected figure different from every other waiting order’s.

Without the code, two identical orders produce two identical credits, and no software can tell them apart from the statement alone.

If you switch the code off, matching in Pro falls back to whatever else it can use, which is the destination account and the look-back window, and it refuses to guess between two candidates rather than settling the wrong one.

Can I use it for a store that is not in Indonesia?

The payment methods and the workflow are not restricted, but the unique payment code works in whole rupiah, and the statement reader is written for Indonesian conventions: dates the day-first way round, dots as thousands separators, and Indonesian and English column names in a CSV.

A store selling in another currency can use the bank transfer methods, but the code and the matching are built around the rupiah.

Is anything sent to your servers?

No bank credentials are stored or transmitted by either edition, and nothing polls your bank.

Pro receives credits only where you point a mutation service or your own script at its webhook, or where you upload a CSV or paste figures yourself.

The paid edition contacts the licence server to check that a licence is valid, and nothing else.

What did the last release change?

The current versions as of August 2026 are 1.1.0 for the free plugin and 1.0.2 for Pro.

Every release is listed, with what changed and what it means for a store that already installed it, on the Indonesian Banks for WooCommerce Pro changelog.

Where do I get help?

Free plugin questions belong in the wordpress.org support forum, where the answer stays public for the next person with the same problem.

Licensed Pro customers can reach us through Online Store Kit support.

If you are already taking transfers and confirming them over WhatsApp, OneClick Chat to Order puts a WhatsApp button across your store so the receipt arrives in the same chat the order came from.

Start with the free plugin

Install it, switch on the banks you actually use, and take a test order through your own checkout to see the figure agree across all three screens.

That test tells you more about whether this fits your store than any description here can.

If the counting later becomes the part of your day you resent, the Pro add-on is there and it installs alongside without changing anything about how you take money.

If it never does, you need nothing else, and the free plugin stays exactly as capable as it is today.

Common questions

Questions before you install

What store owners ask before switching their checkout over.

Something else on your mind? Open a support request

Online Store Kit

Ready to Get Started?

Grab the kit, install in minutes, and start selling everywhere your customers already shop.

Cookies keep the cart rolling

We use cookies for your cart, login session, and secure checkout. Details in the privacy policy.