stripe getting error not going thourh

I have created stripe but the problem is that I am continuously getting an error* :

{status: 500, error: “Missing required param: amount.”}

As of in the code I have provided every parameters but still I do not know why is this error coming up here is the code I am usin g

public function process(){
        try {
            Stripe::setApiKey('sk_text_key');
            $charge = Stripe_Charge::create(array(
                         "amount" => 2000,
                        "currency" => "USD",
                        "card" => $this->input->post('access_token'),
                        "description" => "Stripe Payment"
            ));
        } catch (Stripe_InvalidRequestError $e) {
            // Invalid parameters were supplied to Stripe's API
            echo json_encode(array('status' => 500, 'error' => $e->getMessage()));
            exit();
        }
}   

'

This is the javascript I am using to submit the form

$(function() {
      var $form = $('#payment-form');
      $form.submit(function(event) {
        $form.find('.submit').prop('disabled', true);
        $form.find('.submit').val('Please wait...');

        Stripe.card.createToken($form, stripeResponseHandler);
        return false;
      });
    });
     function stripeResponseHandler(status, response) {

         if (response.error) {
            alert(response.error.message);
         } else {
            $.ajax({
                url: '<?php echo base_url('payment/process');?>',
                data: {access_token: response.id},
                type: 'POST',
                dataType: 'JSON',
                success: function(response){
                    console.log(response);
                    if(response.success)
                    window.location.target="_blank" rel="nofollow" href="<?php echo base_url('booking/thankyou'); ?>";
                },
                error: function(error){
                    console.log(error);
                }
            });
        }
     }

I see you are using a legacy code, in the newer versions of Stripe you can make the Charge like this:

// Token is created using Stripe.js or Checkout!
// Get the payment token ID submitted by the form:
$token = $_POST['stripeToken'];

$charge = /Stripe/Charge::create(array(
  "amount" => 2000,
  "currency" => "usd",
  "description" => "Stripe Payment",
  "source" => $token,
));

See more examples here.