Implement Integrasi Prduction key midtrans

This commit is contained in:
riz081 2025-07-01 13:07:14 +07:00
parent 9dac55d07a
commit 960f64ee81
2 changed files with 23 additions and 7 deletions

View File

@ -69,10 +69,17 @@ public class QrisActivity extends AppCompatActivity {
private static final long TRANSACTION_COOLDOWN_MS = 5000; // 5 second cooldown
private static final String BACKEND_BASE = "https://be-edc.msvc.app";
private static final String MIDTRANS_CHARGE_URL = "https://api.sandbox.midtrans.com/v2/charge";
private static final String MIDTRANS_AUTH = "Basic U0ItTWlkLXNlcnZlci1PM2t1bXkwVDl4M1VvYnVvVTc3NW5QbXc=";
private static final String MIDTRANS_SANDBOX_AUTH = "Basic U0ItTWlkLXNlcnZlci1PM2t1bXkwVDl4M1VvYnVvVTc3NW5QbXc=";
private static final String MIDTRANS_PRODUCTION_AUTH = "TWlkLXNlcnZlci1sMlZPalotdVlVanpvNnU4VzAtYmF1a2o="; // Base64 of "Mid-server-l2VOjZ-uYUjzo6u8W0-baukj:"
// Currently active server key (switch by commenting/uncommenting)
// private static final String MIDTRANS_AUTH = MIDTRANS_PRODUCTION_AUTH;
private static final String MIDTRANS_AUTH = MIDTRANS_SANDBOX_AUTH; // Default to sandbox
private static final String WEBHOOK_URL = "https://be-edc.msvc.app/webhooks/midtrans";
// Midtrans charge URL
private static final String MIDTRANS_CHARGE_URL = "https://api.sandbox.midtrans.com/v2/charge";
// private static final String MIDTRANS_CHARGE_URL = "https://api.midtrans.com/v2/charge";
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
@ -381,8 +388,9 @@ public class QrisActivity extends AppCompatActivity {
private boolean isValidServerKey(String serverKey) {
return serverKey != null &&
serverKey.startsWith("SB-Mid-server-") &&
serverKey.length() > 20;
(serverKey.startsWith("SB-Mid-server-") || // Sandbox format
serverKey.startsWith("Mid-server-")) && // Production format
serverKey.length() > 20;
}
private String generateSignature(String orderId, String statusCode, String grossAmount, String serverKey) {

View File

@ -93,9 +93,17 @@ public class QrisResultActivity extends AppCompatActivity {
private String backendBase = "https://be-edc.msvc.app";
private String webhookUrl = "https://be-edc.msvc.app/webhooks/midtrans";
// Server key for signature generation
private static final String MIDTRANS_AUTH = "Basic U0ItTWlkLXNlcnZlci1PM2t1bXkwVDl4M1VvYnVvVTc3NW5QbXc=";
// Sandbox and Production server keys
private static final String MIDTRANS_SANDBOX_AUTH = "Basic U0ItTWlkLXNlcnZlci1PM2t1bXkwVDl4M1VvYnVvVTc3NW5QbXc=";
private static final String MIDTRANS_PRODUCTION_AUTH = "TWlkLXNlcnZlci1sMlZPalotdVlVanpvNnU4VzAtYmF1a2o="; // Base64 of "Mid-server-l2VOjZ-uYUjzo6u8W0-baukj:"
// Currently active server key (switch by commenting/uncommenting)
// private static final String MIDTRANS_AUTH = MIDTRANS_PRODUCTION_AUTH;
private static final String MIDTRANS_AUTH = MIDTRANS_SANDBOX_AUTH; // Default to sandbox
// Midtrans charge URL
private static final String MIDTRANS_CHARGE_URL = "https://api.sandbox.midtrans.com/v2/charge";
// private static final String MIDTRANS_CHARGE_URL = "https://api.midtrans.com/v2/charge";
// Mapping dari technical issuer ke display name
private static final Map<String, String> ISSUER_DISPLAY_MAP = new HashMap<String, String>() {{