Reputation: 31
unable to make a payment request on instamojo by using instamojo rest api getting bad request(400), unable to identify why i getting 400 error. i am using spring RestTemplate class to make a post request on instamojo. Below i display the code which i am using:
RestTemplate restTemplate = new RestTemplate();
Map<String,Object> requestBody = new HashMap<String, Object>();
requestBody.put("amount", "10000.00");
requestBody.put("purpose", "just_testing_purpose");
requestBody.put("buyer_name", "adityaPandey");
requestBody.put("email", "[email protected]");
requestBody.put("phone", "+919634222331");
requestBody.put("redirect_url", "www.imthebest.in");
requestBody.put("webhook", "");
requestBody.put("allow_repeated_payments", false);
requestBody.put("send_email", false);
requestBody.put("send_sms", false);
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON);
headers.set("X-Api-Key", "me6a901b073db4715a9c540fa00af81");
headers.set("X-Auth-Token", "k3c88da2cda6f89462d6002c9d24e80");
HttpEntity<String> request = new HttpEntity<String>(requestBody.toString(), headers);
HttpEntity<String> response = restTemplate.exchange("https://www.instamojo.com/api/1.1/payment-requests/", HttpMethod.POST, request, String.class);
logger.info("MailResponse "+ response);
Upvotes: 2
Views: 140
Reputation: 31
There was a problem with my requestBody
data. The redirect_url
field value must be with http
or https
, so by just making this change I am not getting 400 error anymore:
requestBody.put("redirect_url", "http://www.imthebest.in")
Upvotes: 1