PawaPay Java SDK

Local Integration & Testing Environment (but make it ✨silly🧠)

🐸 Server Status: Online (and slightly dizzy)
🤹‍♂️ 🦄 🔮

๐Ÿ’ธ Java Payout (Withdraw) Simulator

SANDBOX MODE ON
runPayout.java โ€” weird-mode
import com.katorymnd.pawapay.sdk.api.ApiClient;
import com.katorymnd.pawapay.sdk.config.Config;

// 1. Build Config with your Sandbox Token
Config config = new Config.Builder()
        .apiKey("")
        .environment("sandbox")
        .build();

// 2. Initialize Native Core Client
String apiVersion = ;
ApiClient client = new ApiClient(config, "KATORYMND_PAWAPAY_SDK_LICENSE_KEY", true, apiVersion);

// 3. Set Payout Parameters
String payoutId = Helpers.generateUniqueId();
String amount = "";
String currency = "";
String phoneNumber = "";
String provider = "";

// 4. Add Metadata (Optional)
List<Object> metaData = new ArrayList<>();
metaData.add(createMeta("orderId", "ORD-998877"));
metaData.add(createMeta("customerId", "CUST-001"));
metaData.add(createMeta("reason", "Withdrawal request"));

// 5. Execute Surgical Payout Request
Map<String, Object> response = client.initiatePayoutV2(
        payoutId, amount, currency, phoneNumber, provider, 
        "Java SDK Payout Test", metaData
).join();

System.out.println("Result: " + response);
JAVA CONSOLE // OUT
Waiting for JVM to compile thoughts...

๐Ÿ’ก What this does:

  • Sends money from your merchant wallet to a customer's mobile money account
  • Supports both V1 and V2 API versions
  • Automatically checks payout status after 2 seconds
  • Includes optional metadata for tracking (order ID, customer ID, reason)
  • Returns detailed JSON response with transaction status