I am starting for result Sales application using ACTIONMANUALPAY. I expected if the payment was 'completed' successfully and the app could charge the amount specified then return Activity.Ok . And if the payment failed, was cancelled, was voided or whatever thing that implies the merchant could not charge specified amount then it should return Activity.Cancelled.

My issue flow is when i make a payment using card after starting for result Sales application using ACTIONMANUALPAY. When payment is done successful Sales app show two button DONE or VOID TRANSACTION. If i press DONE or Go Back using android device button it return Activity.Ok to the activity that luch the intent. But if i press VOID TRANSACTION it return to the activity that is waiting for result, Activity.Ok too. I think it should return Activity.Cancelled because the payment really was not done .

Here is the definition for this action.

ACTIONMANUALPAY public static final String ACTIONMANUALPAY Launch Sale activity

Extras passed: EXTRA_AMOUNT - Amount displayed on activity keypad (can be modified during activity)

Result data includes: EXTRA_PAYMENT - The resulting payment

Result codes: Activity.RESULTOK - payment completed successfully Activity.RESULTCANCELED - payment not completed successfully

Trying to looking for other solutions i have get the EXTRA_PAYMENT result. But when i use method Payment.getResult() it return SUCESS when the payment was VOIDED.

I haven't found way to detect when SALES activity make a payment successful but after that is VOIDED. For that reason i think that Sales application is not returning correct result when is open with ACTIONMANUALPAY or clover SDK is not working fine for this case.

asked 2017-03-09 14:30:13 -0500

Puzzle9900 gravatar image

updated 2017-03-09 15:10:19 -0500


Please i really need answer for my question. I want to deploy our clover application for Merchants under Terminal Plan but the reduced set of intent_actions does not allow me to make an integration that be easy, consistent and intuitive for the user. I just can use returned result by Sale activity but that result come as OK when the payment was voided after it had been successful.

Puzzle9900 gravatar image
Puzzle9900 2017-03-10 16:15:26 -0500

You will need to include extra logic that checks the order to see if the payment has been processed successfully and not rely on the return result of the activity.

Sam gravatar image
Sam 2017-03-10 20:05:41 -0500

I am working with a clover under Terminal Plan where Orders's module is not available.

UPDATE: I made a mistake of interpretation it is possible to play with the orders in clover under terminal plan. Although it could be simpler the answer to my issue is here .

Puzzle9900 gravatar image
Puzzle9900 2017-03-13 09:04:43 -0500