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.