IMPORTANT (Key Requirement):The main goal is to create a stable payment processing mechanism in the Business Wave system (or similar), which simulates the actions of a real user on a physical Android device. The use of web automation (Selenium/Playwright) is not considered due to strict checks on Device ID and browser blocks. The solution should work on the principle of a "phone-robot," which receives commands via API, reads OTP from incoming SMS, and performs clicks in the mobile application interface or mobile version of the website.
1. Full Task Description
It is necessary to implement a software layer that turns an Android smartphone into an execution node of a payment gateway. The system should receive data via API (who and how much to transfer), check the authorization status, log in if necessary (including entering OTP), and carry out the transaction until confirmation.
2. Main Stages of the Workflow
Receiving Command: The server receives a POST request with parameters {phone_number, amount, wallet_address}.
Session Check: The script checks if the application is open and if the user is logged in. If logged out — it initiates login.
2FA (OTP) Processing:
The script enters the phone number and password.
Waits for the SMS to arrive on the same device.
Automatically extracts the code from the SMS text and enters it in the confirmation field.
Executing Payment: Navigation through menu items, entering the amount and partner's address, pressing the "Send" button.
Confirmation: Reading the transaction status from the screen (success/error) and sending the result back to the main server.
3. Technological Requirements (Options for the Performer)
We expect the use of one of the following approaches:
Option A (Preferred): Bundle Tasker + AutoInput + Join/AutoRemote. This will ensure rapid development and native interaction with SMS and the interface without Root access.
Option B: Automation via ADB (Android Debug Bridge) and Python scripts on the server controlling the connected phone.
Option C: Professional framework Appium, if the performer proves its stability for this task.
4. API Requirements
The performer must provide a simple local or cloud endpoint for:
5. Security and Fault Tolerance
Error Handling: If the SMS does not arrive within 60 seconds or the application hangs, the system should return an error and attempt to restart the process.
Logging: Keeping a history of actions and screenshots of errors.
Discretion: Simulating "human" delays between clicks and text input.
6. Acceptance Criteria
The system successfully processes 10 out of 10 test payments in a row.
Automatic login works without manual intervention.
OTP is correctly extracted from SMS in 100% of cases.
Video: attached
Waiting for:
1) have you worked with Tasker or Appium for tasks not related to simple testing.
2) deadlines
3) amount