Frontend code
<form action="/examples/checkout-with-address/payment" method="post">
<script src="https://securionpay.com/checkout.js"
class="securionpay-button"
data-key="pu_test_WVMFC9GFuvm54b0uorifKkCh"
data-checkout-request="OWJjZmJjZjEyYTBlZDc5NjJlNDlkZjRkZTU0ZDNkZTE1ODRlZTEyOWQ3NzJjNGU5ZWIzM2NjM2UxNDUzNmUwNXx7ImNoYXJnZSI6eyJhbW91bnQiOjI0OTksImN1cnJlbmN5IjoiRVVSIn0sInRocmVlRFNlY3VyZSI6eyJlbmFibGUiOmZhbHNlfX0="
data-name="SecurionPay"
data-description="Checkout example"
data-checkout-button="Buy now"
data-shipping-address="true"
data-class="btn btn-primary btn-lg">
</script>
</form>
Backend code
@Controller
@RequestMapping("/examples")
public class ExamplesController {
private static final String PRIVATE_KEY = "pr_test_tXHm9qV9qV9bjIRHcQr9PLPa";
@RequestMapping(value = "/examples/checkout-with-address", method = GET)
public String checkout(Model model) throws IOException {
try (SecurionPayGateway securionPayGateway = new SecurionPayGateway(PRIVATE_KEY)) {
CheckoutRequest checkoutRequest = new CheckoutRequest()
.charge(2499, "EUR");
String signedCheckoutRequest = securionPayGateway.signCheckoutRequest(checkoutRequest);
model.addAttribute("signedCheckoutRequest", signedCheckoutRequest);
}
return "examples/checkout";
}
@RequestMapping(value = "/examples/checkout-with-address/payment", method = POST)
public String checkoutSubmit(Model model, @RequestParam String securionpayChargeId) {
model.addAttribute("chargeId", securionpayChargeId);
return "examples/checkout";
}
}