The problem I am having now is testing the manual payment method. When I try to make a commission payment to a seller with the tickboxes on the /admin/store/reports/seller/custom page,
I get a page with;
'Manual Payment Summary',
'Here are the supplied details from the selected sellers for manual payment. ',
A tickbox and a 'Complete Manual Payments button',
nothing else.

I am pretty sure the payment info entered in the profile page for the seller should show up here. When I click the checkbox and the 'Complete Manual Payments button' I get a system message,

'Seller order statuses have been changed to reflect manual payment(s). Please do not resubmit.',

This is quite confusing as I don't know what is going on, where this is transaction is being recorded or how the admin or the seller can see if this payment has been completed for reference. I have tried this on a few clean dev installs where everything else appears to be working and I get the same results. Could this be my configuration at fault?

Comments

imp7’s picture

Thinking about this more I think that the workflow/ui for commission payment to sellers needs to be thought about more. I see this functionality being significant to the success of a marketplace site as the trust between the site and the sellers is needed for long term success. For this to start to happen the admin and seller should be able to view a clear record of all commission payments made, any transaction on an ecommerce site is of high significance. As I am still unsure of how this is all working currently through my testing, it does seem to be happening on some level as in /admin/store/reports/seller/custom there is a tickbox
'Include sales that sellers have already received payment for.' in the Customize seller report parameters options fieldset. For this to happen ucmarketplace must be keeping track of commission payments to sellers somehow.

I will try to describe what I think should happen, however I do see in other issues here that users might have a different view of how the marketplace should function as per their requirements. Hopefully some might be able to follow my logic :)

From the Seller's point of view
I propose a new tab in each sellers /user/1/selling page named ' commission'. In this tab a view of 'Total Unpaid Commission' and 'Payed Commissions' to be listed. The titles make the content obvious but I am thinking that 'Payed Commissions' should list each time as a commission payment is made. This payment data should be in some form of uc-order or node containing how much was payed, what date, payment type etc.

From the Admin's point of view
I propose some additions to the Seller reports page under /admin/store/reports/seller/custom with the fields 'Total Unpaid Commission' and 'Total Payed Commission'. The Make payment button should follow the payment method as its supposed to now to pay the obvious 'Total Unpayed Commision' value and then in turn update the 'Total Payed Commission'. Each time the payment is made the Seller should be able to see the data in their ' commission' tab under 'Payed Commissions'.

Please let me know your thoughts, I can elaborate on this if needed, although I don't have a huge budget I am willing to fund for some development :) ...Cheers

Turgrid’s picture

These are some very promising ideas. Unfortunately, I am seeking a (co)maintainer, as I do not have much time anymore to assist with the development. Patches from the community are welcome.

imp7’s picture

Thanks for the honesty :)
If I am able to gather more funds or find help, I will try to contribute code back.

Please if anyone is able to fund/offer development help on the work-flow state of paying sellers please mention your interest/ideas here :)

syndicateStorm’s picture

Title: Payments to Sellers » Manual Payment Setup & Development
krystianbuczak’s picture

As far I can see $manuals variable (which stores manual payment data from session array) is not accessible for mp_reports_manuals_form. That's why the form doesn't display manual payment information.

Temporary solution is to redeclare $manuals = $_SESSION['payment_manuals']; just on the beginning of mp_reports_manuals_form function in mp_reports.admin.inc (line 239)

function mp_reports_manuals_form($manuals) {
$manuals = $_SESSION['payment_manuals'];
  // create form

Another problem is to display properly mp_reports_manuals_form. We need to register a hook_theme. There is one but only for mp_reports_seller_fieldset - that's why only paypal masspay seller report table is displaying properly.
To register the hook_theme for mp_reports_manuals_fieldset we need to change mp_reports.module (line 185) this way:

function mp_reports_theme() {
  return array(
    'mp_reports_seller_fieldset' => array(
      'arguments' => array('fieldset' => NULL),
    ),
	 'mp_reports_manuals_fieldset' => array(
      'arguments' => array('fieldset' => NULL),
    ),
  );
}

Remeber to clear cache after registering the hook_theme.

It would be great if someone could test this solution and create a proper patch.

gease’s picture

delizyd is quite right about registering theme function, but the proper way to make $manuals accessible in mp_reports_manuals_form is to change
function mp_reports_manuals_form($manuals) {
to
function mp_reports_manuals_form(&$form_state, $manuals) { (line 239 in mp_reports_admin.inc).

3dloco’s picture

Category: support » feature
Issue tags: +payment, +manual payment, +account balance, +payments

Hello,

Just wondering if existing code/functionality can be used from other modules that already track user account balances based on commissions, such as uc_affiliate2 or balance tracker.

The balance tracker currently provides an API to credit and debit charges. It would be helpful to know first of all if this is possible and also if anyone has done this (or something similar)...appreciate your input on this...

Thanks,

KH

[edit]example of balance tracker api for ubercart using conditional actions #503928: example of api use[/edit]

Plazmus’s picture

StatusFileSize
new954 bytes

Manual payment method still doesn't work, so I created a patch according to #5 and #6 against "6.x-1.x-dev from 2010-Jun-17 "

Please have a look and test it :)

Copy patch to ubercart_marketplace directory and run "patch -p0 < mp_masspay_manual_dev.patch"

Plazmus’s picture

Status: Active » Needs review

I understand that majority of people will use paypal to pay sellers, but there are others who will need a manual payment method which at the moment doesn't work, so please commit this simple fix.

Thank you

mleitl’s picture

Thats exactly what I am searching for. But: It would be great, if the data could be exported as a csv - file.
Plus: The check-data should be entered as seperate fields - so the export in a banking-software is much easier.

Could this be implemented?

I will test the patch in the next days.

Regards
Michael

craigmc’s picture

Version: 6.x-1.x-dev » 6.x-1.0-beta1
StatusFileSize
new1.06 KB

Wish I'd seen this issue earlier. Fixes above work great for 6.x-1.0-beta1 as well.

Uploading a patch for this version-- note: generated with svn diff from my local build from the root of drupal directory. Let me know if this is correct.