Create a Config object and set API configuration parameters
Note that ipcApiUrl is different for sandbox and production environment
You can set RSA keys for request signatures by setting key content using loadPrivateKeyFromString and loadPublicKeyFromString or by setting file path using loadPrivateKeyFromFile and loadPublicKeyFromFile
For more information please refer to myPOS Checkout API Documentation
import java.net.MalformedURLException;
import java.net.URL;
import com.mypos.myposcheckout.ipc.Config;
import com.mypos.myposcheckout.ipc.IPCException;
// ...
Config cnf = new Config();
URL ipcApiUrl = null;
try {
ipcApiUrl = new URL("https://mypos.com/vmp/checkout-test/");
} catch (MalformedURLException ex) {
// Handle the malformed URL exception
}
cnf.setIpcUrl(ipcApiUrl);
cnf.setLang("en");
cnf.loadPrivateKeyFromFile("path_to_directory/storePrivateKey.pem"); // Replace `path_to_directory` with the actual file path
cnf.loadPublicKeyFromFile("path_to_directory/apiPublicKey.pem"); // Replace `path_to_directory` with the actual file path
cnf.setKeyIndex(1);
cnf.setSid("000000000000010");
cnf.setVersion("1.4");
cnf.setWalletNumber("61938166610");
Create RequestMoney object with created config
import com.mypos.myposcheckout.ipc.request.RequestMoney;
// ...
RequestMoney request = new RequestMoney(cnf);
Set RequestMoney params
import java.math.BigDecimal;
import com.mypos.myposcheckout.ipc.enumerable.CommunicationFormat;
import com.mypos.myposcheckout.ipc.enumerable.Currency;
// ...
request.setMandateReference("126ca831-93d2-4dfc-ab1f-0cce1d0abe9e");
request.setCustomerWalletNumber("61938166612");
request.setOrderId("201203319999999");
request.setAmount(BigDecimal.valueOf(23.45));
request.setCurrency(Currency.EUR);
request.setReason("test reason");
request.setOutputFormat(CommunicationFormat.XML);
Process request
import com.mypos.myposcheckout.ipc.IPCException;
import com.mypos.myposcheckout.ipc.enumerable.StatusCode;
import com.mypos.myposcheckout.ipc.response.BasicResponse;
// ...
BasicResponse ipcResponse = request.process();
ipcResponse.processApiResponse();
if (ipcResponse.getStatusCode() == StatusCode.SUCCESS) {
// Success
}