Advertisement

Responsive Advertisement

RazorPay Payment In Kotlin

  1.  Using Kotlin

class MainActivity2 : AppCompatActivity() , PaymentResultListener{
lateinit var binding:ActivityMain2Binding;
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
binding= ActivityMain2Binding.inflate(layoutInflater)
setContentView(binding.root)
Checkout.preload(this@MainActivity2)
binding.btn.setOnClickListener{
savePayment(binding.textView3.text.toString().toInt())
}


}
private fun savePayment(amount:Int){
val checkout=Checkout()
checkout.setKeyID("Your KEY")
try {
val jsonObject=JSONObject()
jsonObject.put("name","Tel Chatai")
jsonObject.put("description","If You Like This Code! Make Payment")
jsonObject.put("theme.color","#3399cc")
jsonObject.put("currency","INR")
jsonObject.put("amount",amount*100)
val retryobj=JSONObject()
retryobj.put("enabled",true)
retryobj.put("max_count",5)
jsonObject.put("retry",retryobj)
checkout.open(this@MainActivity2,jsonObject)
}catch (e:java.lang.Exception){
Toast.makeText(this@MainActivity2,"Payment Failure",Toast.LENGTH_SHORT).show()
e.printStackTrace()
}
}

override fun onPaymentSuccess(p0: String?) {
Toast.makeText(this@MainActivity2,"Payment Successfull"+p0,Toast.LENGTH_SHORT).show()
}

override fun onPaymentError(p0: Int, p1: String?) {
Toast.makeText(this@MainActivity2,"Payment UnSuccesfull"+p1,Toast.LENGTH_SHORT).show()
Toast.makeText(this@MainActivity2,"Payment Txn"+p0,Toast.LENGTH_SHORT).show()
}


  1. Using Java


package com.example.mysam;

import androidx.appcompat.app.AppCompatActivity;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Toast;

import com.example.mysam.databinding.ActivityMainBinding;
import com.razorpay.Checkout;
import com.razorpay.PaymentResultListener;

import org.json.JSONException;
import org.json.JSONObject;

public class MainActivity extends AppCompatActivity implements PaymentResultListener {

ActivityMainBinding mainBinding;
int amount;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mainBinding=ActivityMainBinding.inflate(getLayoutInflater());
setContentView(mainBinding.getRoot());
Checkout.preload(getApplicationContext());
mainBinding.btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
amount=200;
paymentstart(amount);
}
});

}

private void paymentstart(int amount) {

Checkout checkout = new Checkout();

// set your id as below
checkout.setKeyID("Your Key");

// set image
checkout.setImage(R.drawable.ic_launcher_background);

// initialize json object
JSONObject object = new JSONObject();
try {
// to put name
object.put("name", "Geeks for Geeks");

// put description
object.put("description", "Test payment");

// to set theme color
object.put("theme.color", "");

// put the currency
object.put("currency", "INR");

// put amount
object.put("amount", amount);

// put mobile number
object.put("prefill.contact", "9284064503");

// put email
object.put("prefill.email", "chaitanyamunje@gmail.com");

// open razorpay to checkout activity
checkout.open(MainActivity.this, object);
} catch (JSONException e) {
e.printStackTrace();
}
}






@Override
public void onPaymentSuccess(String s) {
Toast.makeText(this, "Succesfull"+s, Toast.LENGTH_SHORT).show();
}

@Override
public void onPaymentError(int i, String s) {
Toast.makeText(this, "Unsuccessfull"+s+i, Toast.LENGTH_SHORT).show();
}
}

Post a Comment

0 Comments