Hi,
When I try to add a basic payment to an order through the admin screen, I select the basic payment, enter an amount, and click add payment. Nothing happens. The page refreshes, the balance isn't updated, and no payment is created. Checking my watchdog logs, the following errors appear:
Warning: array_merge() [function.array-merge]: Argument #1 is not an array in payment_commerce_form_process_submit_form() (line 237 of /homepages/40/d120381516/htdocs/sites/all/modules/payment_commerce/payment_commerce.module).
and
Notice: Undefined index: buttons in payment_commerce_form_process_submit_form() (line 237 of /homepages/40/d120381516/htdocs/sites/all/modules/payment_commerce/payment_commerce.module).
Any thoughts?
| Comment | File | Size | Author |
|---|---|---|---|
| #4 | payment_commerce_1949618_00.patch | 395 bytes | xano |
Comments
Comment #1
xano1) Not all Payment payment methods can be processed this way. There is currently no way to let the system know which ones that are, so that should be added. Basic payment method should work, though.
2) When I try to add a payment using the terminal, it fails, simply because Payment's payment/payment method validation kicks in and says there are no available payment methods (which shouldn't happen either).Comment #2
xanoThis requires more fundamental changes. Currently, we execute Payment payments in the redirect pane, which does not exist for terminal payments. This means we'll have to add one or two metadata properties to payment method controllers:
- "requires payer action": whether payments using the controller need the payer to perform actions during payment execution.
- "interrupts context workflow": whether executing a payment using the controller interrupts the context's workflow, e.g. by redirecting the user off-site.
If either of these are true, administrators cannot use this controller to add terminal payments.
Comment #3
phiscock commentedThis isn't working for the Basic payment method for me. I find that I getting these same two errors when I try to make a payment through the commerce payment screen.
Comment #4
xanoSupporting terminal payments requires fundamental changes to Payment. Until those changes are made, let's make sure that Payment payment methods are not exposed at all.
Comment #5
xanoComment #6
xanoCan you please confirm whether this works?
Comment #7
Christopher Riley commentedIt works for me with the latest dev version.
Comment #8
xanoThanks for the reviews!
Comment #10
xano