Post by loadaverage » Sun Dec 27, 2009 6:05 am

hi there,

it seems that there is no easy way to add fees for
particular payment types, making the payment page
useful only for payments that have no fees at all.

but the type of payment modifies the total quite
often. i have yet to see a post service charging
a flat fee for cod for instance. some shops also
charge for credit card use.

i have found 2 possible ways to add this feature:

1. this is not entirely different from handling fees,
but needs to be more flexible with multiple fees.

2. what i am doing now is, that i create multiple
shipping choices (with and without cod) that
calculate the fee based on weight and/or total,
and the payment page afterwards is simply

is this feature considered for integration
in the next version?

we is experts(tm)

New member


Fri Nov 20, 2009 2:10 am

Post by loadaverage » Sun Dec 27, 2009 12:43 pm

i have chosen another path after all...

1. i've added a new extension/total called

2. i've added a new extension/payment
that is in principle very similar to the weight based
shipping module, but instead it matches the total value
of the order with a price for the cash on delivery
(the higher the total value, the higher the cod fee).
this extension adds a 'cost' field to its $method_data.

3. unless this 'cost' is zero, the new extension/total
payment picks it up, calculates the new price,
and adds another line into the summing on the
checkout/confirm page indicating why the final price
is higher.

i am quite happy with this solution so far.
once the customizable invoice numbers are solved,
my shop will be usable :]

we is experts(tm)

New member


Fri Nov 20, 2009 2:10 am

Post by Qphoria » Sun Dec 27, 2009 2:48 pm

This was done months ago by me (commercially) and more recently one was made for COD fee only by another member (check the contribs area).

Mine does ALL payment types dynamically.. no matter if it is core or 3rd party. No custom payment needed. No custom coding. just plug n play

Donate!|OpenCart Basics|GeoZones

User avatar


Tue Jul 22, 2008 3:02 am

Post by loadaverage » Sun Dec 27, 2009 11:13 pm

thanks for the pointers.

i can't compare my solution with yours (ehm ;])
but i have some ideas how i would go about
modifying all the payments..

the italian contribution has some shortcomings:

1. it applies to the only one existing cod payment
and it needs changing if e.g. i am using 2 companies
for cod delivery with fees (which i am).

2. it has only one fixed value. i need a way to specify
multiple targets, something like:


if the total order of the value is 100 euros, cod costs 2.5 euros,
if 500 euros, cod costs 3 euros, etc.

this would be trivial to add it to it though.

so are there plans to add something like this to opencart?

we is experts(tm)

New member


Fri Nov 20, 2009 2:10 am
Who is online

Users browsing this forum: No registered users and 15 guests