Demfilz Trade Accounts for WooCommerce

Demfilz Trade Accounts for WooCommerce

Details
View on WordPress

Wholesale and trade stores sell to approved business customers on credit: the goods ship now and the invoice is paid within 7, 14 or 30 days, usually by bank transfer. This plugin adds that to WooCommerce.

Approved customers see a Pay on account option at checkout. The order goes through without a payment, ships as usual, and is recorded on the customer’s account with a due date and their purchase order number. You see what every account owes and what is overdue, and you record each payment when the money arrives.

At checkout

  • “Pay on account” appears only for logged in customers whose trade account is approved. Nobody else can use it, including through the Store API.
  • The box shows the customer’s terms (“Payment is due 30 days from the order date”) and asks for a purchase order number: optional, required, or not at all.
  • Works on the classic shortcode checkout and in the checkout block, with no JavaScript needed on the classic page.
  • The order goes to Processing (so it ships), or On hold or Completed if you prefer, and is not marked as paid until you record the payment.
  • The thank you page, the order emails and My Account say when payment is due and how to pay (your bank details, from the settings).

Accounts and applications

  • Customers apply from My Account > Trade account (business name, ABN or tax id, phone, message), or from any page with the [dtaw_apply] shortcode. You are emailed; they are emailed when you decide.
  • Approve, decline, suspend or reinstate accounts from WooCommerce > Trade Accounts, from the customer’s user profile, or from the link in the application email.
  • Payment terms per customer, or a store default. An account reference (their account number in your books). Internal notes.
  • Roles that are approved automatically, for stores that already give wholesale customers a role.
  • Add and approve a customer yourself, without an application.

Invoices and payments

  • Every order placed on account is an invoice with a due date. The Invoices tab lists unpaid, overdue, paid and void invoices, searchable by order number, purchase order number or email, with a CSV export.
  • Record a payment on the order (date, reference, note) or with one click from the Invoices tab. The order gets its paid date and a note; the customer sees it as paid.
  • Balance owing, overdue amount, amount due in the next 7 days and open invoice count, for the whole store and per account.
  • Cancelled, refunded or failed orders drop off the balance automatically; partial refunds reduce the amount owing.
  • An “On account” column on the orders list: due date, days overdue, paid, with the PO number.

For the customer

  • My Account > Trade account: status, terms, balance owing, open invoices with due dates and overdue flags, recently paid invoices and your payment instructions.

Sensible defaults

  • 30 day terms, Processing for orders on account, purchase order number optional, no applications blocked.
  • Works with WooCommerce High-Performance Order Storage (HPOS) and the cart and checkout blocks.
  • Personal data exporter and eraser for the application details; invoices stay with the orders as financial records.
  • No external services. Nothing leaves your site.

For developers

Actions: dtaw_status_changed, dtaw_order_placed, dtaw_payment_recorded, dtaw_payment_reversed, dtaw_order_box_after, dtaw_account_after_status, dtaw_account_form_rows, dtaw_account_form_save, dtaw_admin_account_after, dtaw_user_panel_rows, dtaw_user_panel_save, dtaw_admin_tab_{tab}.

Filters: dtaw_is_approved, dtaw_terms_days, dtaw_due_date, dtaw_can_place_on_account, dtaw_gateway_available, dtaw_checkout_extra_text, dtaw_open_statuses, dtaw_admin_tabs, dtaw_admin_tiles, dtaw_account_endpoint.

Orders placed on account carry the meta _dtaw_on_account (1), _dtaw_state (open, paid or void), _dtaw_due (Y-m-d), _dtaw_terms (days), _dtaw_po, and once paid _dtaw_paid_at and _dtaw_paid_ref.

Details

Plugin code:
demfilz-trade-accounts-for-woocommerce
Plugin version:
1.0.2
Author:
Outdated:
No
WP version:
6.2 or higher
PHP version:
7.4 or higher
Test up to WP version:
7.1.4
Total installations:
0
Last updated:
2026-11-07
Rating:
Times rated:
0
invoice-payment
net-30
pay-on-account
trade-account
wholesale