After Order Payment for Magento 2

View Demo

Charge customers after the order is placed. Create an extra payment linked to the original order, send the customer a link, and let them pay in the regular cart with any payment method your store offers.

Customers see their extra payments in their account, guests pay by link, and your team tracks every extra payment in one admin grid. With Mirasvit Order Management, editing an invoiced order requests the difference automatically.

  • Request extra payments on existing orders
  • Send customers and guests a payment link
  • Auto-request the difference after order edits
  • Pay with any enabled payment method
Hyvä
Magento Cloud
WCAG
Mage-OS
Compatible with:
Community:
2.3.* - 2.4.9
Enterprise:
2.3.* - 2.4.9

Charge a customer after the order is placed

Request an additional payment for an existing order and send the customer a link to pay it

  • Problem: After an order is placed, the amount often changes: the customer swaps a product for a more expensive one, asks for faster shipping, adds an item, or orders gift wrapping or insurance. Default Magento 2 has no way to ask for the difference. You can only create a new order or edit the existing one, and neither tells the customer what to pay or links the payment to the original order.
  • Solution: After Order Payment (Extra Payment) creates an extra payment linked to the original order and customer. The customer opens it from their account or from a link you send, and pays in the regular cart with any payment method your store offers. The original order stays as it is, and the payment gets its own order number in your sales reports.

If a fee should be added automatically at checkout, for example for a payment method or a small order, use Checkout Extra Fee & Surcharge. Extra Payment is for charges you issue after the order has been placed.

Edited the order? The difference is requested automatically

If you edit an invoiced order with Mirasvit Order Management and the item total goes up, the extension creates an extra payment for the difference (items plus tax) and emails the customer a link to pay it. Older unpaid extra payments for that order are removed, so the customer only sees the current amount.

When the customer pays, the invoice for the difference is created on the original order automatically. Shipping changes are not included in the difference. Extra Payment comes as part of Order Management, so this works without a separate setup, and you can turn the email off and send the link yourself.

Issue an extra payment in a few clicks

Creating an extra payment from the order view page in Magento admin

Create an extra payment from the order view page or from the customer's page in the admin. Each extra payment is linked to its order and customer.

One extra payment can hold several items, each with its own name and price, and the customer sees the total. When you save it with an email template selected, the extension emails the customer a message with a button that opens the payment.

See the setup steps in the user manual.

All extra payments in one grid

Extra Payments grid in Magento admin

The Extra Payments grid shows the customer's name, the original order number, the status (draft, pending or paid) and the number of the order the customer placed to pay. It can also show the items, their prices, and both notes.

The Link column opens the payment exactly as the customer sees it, and you can filter the grid, for example by customer.

Extra payments are also visible where you work with orders. The Sales > Orders grid gets an Extra Payment Order column, and the order view page shows a notice when the order has an unpaid extra payment.

Clear status for every extra payment

When the customer places the order for an extra payment, the extension marks it as paid and links it to that order. The payment order is a regular Magento order with its own invoice, so you check the actual payment there, the same way as for any other order.

Extra payments in sales reports

Extra payment order with the E_PMNT product in Magento sales

Each paid extra payment is a regular sale of a virtual product with the SKU E_PMNT. It appears in the order list in the admin and is counted in your sales reports like any other order.

Notes for the customer and for your team

Customer note and internal note on an extra payment

Every extra payment has two notes. The note for the customer explains what they are paying for. The internal note is visible only to your staff.

Extra Payments tab in the customer account

Extra Payments tab in the customer account

Customers see all their extra payments in the Extra Payments tab of their account: when each one was issued, its status, the items and the total.

One click takes the customer to the cart with the payment, and checkout works like any other purchase. The customer can't change the amount or the quantity in the cart. Customers can also open the details of extra payments they have already paid.

Extra payments for guest customers

Customers without an account can pay too. Create an extra payment and send the guest a link to it. The link takes them straight to the cart, where they pay like for any other purchase.

Any payment method, coupons included

Choosing a payment method for an extra payment at checkout

Because the extra payment goes through your regular checkout, the customer can pay with any payment method enabled in your store, not only the one used for the original order. Discount coupons work as well, if you allow them.

Why not just create a new order?

A new order or a second charge through the payment gateway gets the money, but it isn't connected to the original order. With Extra Payment, the charge stays linked to the order and the customer, the customer sees what they pay for in their account, guests can pay by link, and your team tracks every extra payment in one grid.

Automation and languages

The REST API lets you create, update and delete extra payments and send the payment email from your ERP or other systems. The extension is translated into 15 languages.

Request the difference on any order and let customers pay it by link with After Order Payment for Magento 2.
No hidden fees
Our developers install the extension on your store and configure it for your setup, free of charge.
Lifetime access to source code
Access to free support and updates for 1 year
Updates and support prolongation - $90

Pay today $149 for the first year.

Then $90 for updates and support services per year.

Cancel anytime.

30 days money back guarantee
See it in action!
Pick a quick tutorial to learn about various aspects of this extension
Customer Reviews 2
Earn points for your review about this extension modules. $1 = 10 points
Write Your Own Review

check-circle You submitted your review for moderation.

Elena Verified Buyer
From Plovdiv, Bulgaria
Using the module for over 1 month
Useful extensions and excellent support!
I have bought many extensions. I am very satisfied of their fast and professional support!
Also installed:
Improved Asynchronous Reindexing,  Product Labels,  Full Page Cache Warmer,  Health & Performance Monitoring Suite,  Google PageSpeed Optimizer,  Layered Navigation,  Admin Bookmarks and 19 more
JeansStock
From United States
Super helpful
Super helpful. Great customer service! Recommend it for all types of stores. Thanks for your help!
Manual & Support
Need more help?

Save time by starting your support request online and we'll connect you to an expert.

Frequently asked questions
chevron-down chevron-right

How does an extra payment work in Magento 2?

Each extra payment is paid by buying a virtual product named Extra Payment Product (SKU E_PMNT). Its catalog price is 0.00, and the cart sets the price to the amount of the extra payment.

The product is set to Not Visible Individually, so customers never see it in the catalog. When the customer pays, Magento creates a regular order with its own number, linked to the original order.

chevron-down chevron-right

How do I see which order an extra payment was paid with?

The Extra Payments grid shows both numbers: the original order and the order the customer placed to pay. In the Sales > Orders grid, the Extra Payment Order column shows the same link.

chevron-down chevron-right

Can one extra payment include several items?

Yes. Add as many items as you need, each with its own name and price. The customer sees every item and the total, and pays the total at once. If you prefer one payment per order, add a single item.

chevron-down chevron-right

Can customers use coupon codes on extra payments?

Yes. The extra payment goes through the regular cart, so customers can apply discount coupons if your cart price rules allow it.

chevron-down chevron-right

Can guests pay an extra payment without an account?

Yes. Create the extra payment and send the guest its link. The link opens the cart with the payment, and the guest checks out like for any other purchase.

chevron-down chevron-right

Is tax charged on an extra payment?

The extra payment is a regular product in the cart, so tax is calculated by your store's tax rules for the tax class of the E_PMNT product. Set that tax class to match how you want extra charges taxed.

chevron-down chevron-right

What happens when I edit an order that is already invoiced?

If you edit it with Mirasvit Order Management and the item total goes up, the extension creates an extra payment for the difference (items plus tax) and emails the customer a link to pay it. After payment, the invoice for the difference is created on the original order automatically. Shipping changes are not included.

chevron-down chevron-right

Can I turn off the automatic email?

Yes. The email sent after an order edit can be turned off in the extension settings, under Email Notifications. You can then copy the payment link from the Extra Payments grid and send it yourself.

chevron-down chevron-right

Does it work with Hyvä and Hyvä Checkout?

The extension is Hyvä compatible. Customers pay an extra payment through your regular cart and checkout like any other product, so it doesn't need a separate checkout integration.

Changelog
Version 1.0.12Sep 21, 2026
The module no longer relies on the shared Mirasvit Core text and serialization helpers that are being removed in Core 2.0, so it keeps working once your store is updated to that version. Nothing changes in how extra payments behave day to day
⚠️ Extra payment line items are now stored in Magento's standard JSON format. Running bin/magento setup:upgrade converts existing payments automatically in a one-time pass over the items column of the mst_extra_payment table — no action is needed, and a payment whose stored items cannot be read is left untouched and recorded in the log instead of being lost
Version 1.0.11Sep 7, 2026
The customer's list of extra payments is now built once per page load instead of twice, removing a duplicated query that ran on every customer account page
Fixed the extra payment placeholder product (E_PMNT) having its stock quantity reset to 1 every time an extra payment was created or edited. On Multi-Source Inventory (MSI) stores this made the product drop out of stock and required a manual inventory reindex before the cart and checkout would load again — and any quantity you had set on the placeholder as a workaround was erased on the next save. The stock is now left untouched whenever the placeholder is already correctly configured, and is still repaired automatically when it is not (pm#86)
Version 1.0.10Sep 2, 2026
Version 1.0.9Aug 17, 2026
The item price field in the Extra Payment form now only accepts a number of 0 or greater, and the same check is repeated when the payment is saved, so an invalid price can no longer be stored on any supported Magento version. The new error message is translated in all 15 supported locales
Completed the customer notification translations — the "Email Notifications" and "Extra Payment is created" phrases, previously left in English, are now translated in all 15 supported locales
Failures while creating the automatic invoice after a customer completes an extra payment are no longer swallowed silently — they are now reported, so a payment left without its invoice is visible instead of going unnoticed
⚠️ Now requires Mirasvit Core module 1.7.15 or later
Fixed item prices typed with a decimal comma being charged incorrectly — a price entered as "12,34" was saved and charged as $12.00, and text such as "abc" became $0.00. Such input is now rejected with a clear message instead of quietly losing the amount
Fixed the extra payment placeholder product (E_PMNT) being left unsalable, which made payment links fail with "product is out of stock". This affected stores with Multi-Source Inventory (MSI) turned off, and the fix now also repairs the stock of a placeholder that was already created before this update, so there is no need to re-create the product (pm#1021)
Fixed the Extra Payments tab on the admin order view showing every payment in the store — other orders' and other customers' — in the rare case where the order could not be determined. The tab now correctly shows nothing instead
Fixed losing the customer when a new extra payment could not be saved — after an error, an admin who started the payment from a customer page was returned to a blank New Payment form, and saving again created a payment attached to no customer. The customer is now kept when you are sent back to correct the form
Fixed the admin Extra Payment form failing to open on PHP 8.1 and newer, where it also wrote a critical entry to the exception log on every load (pm#1035)
Version 1.0.8Jun 8, 2026
Toggle the email sent when an extra payment is created — a new setting under Stores → Configuration → Mirasvit → Extra Payment → Email Notifications lets you choose whether the customer is emailed when an extra payment is automatically created while editing an order
Reasons to choose Mirasvit
Client focusing and satisfaction

These are our primary. A major portion of our new clients come from referrals from our existing clients. Our professional team of developers, marketers and support staff have invested the best knowledge and experience in the field into our work, so you know you can come back to us again and again.

Remarkable support

One year free and high quality support. We go to great lengths to provide maximum satisfaction with every module you have purchased in our store. By helping you with installation, configuration, answering your every question, we do all our best to eliminate any possible problems.

Risk-free Investment

30-days money back guarantee. If you are not satisfied with our Magento 2 Extra Payment performance for any reason, we provide a full refund.

Constant improvements and upgrades

We constantly add new features to all our modules, and are always interested in hearing your opinion and implementing your suggested features in our future developments.

Comprehensive Documentation

We provide an expanded user guide for every aspect of our Magento 2 payment link for existing orders, so you can find answers for all your burning questions.

Unencrypted source code of our products

You can customize Magento 2 after order payment extension according to your needs and requirements.

Usability and Performance

The Module is easy to install and upgrade, just follow our step-by-step user guide. Additionally, the extension is ready to use with the Hyvä theme.

Ready for Magento Cloud

No core modifications. The Magento 2 after order payment extension has been tested in a Magento Cloud environment and is fully compatible with it.

Loading...