Stripe Java bindings
Latest commit 5afdac6 Sep 23, 2016 @jxu577 jxu577 committed with kyleconroy Add support for multiplan subscriptions (#317)
* Add support for multiplan subscriptions
Add SubscriptionItem object
Add tests to verify passing in items arrays into invoice creation, subscription update, and subscription create

* Add StripeTest tests for SubscriptionItem

Stripe Java Bindings Build Status

You can sign up for a Stripe account at


Java 1.6 and later.


Maven users

Add this dependency to your project's POM:


Gradle users

Add this dependency to your project's build file:

compile "com.stripe:stripe-java:2.10.0"


You'll need to manually install the following JARs:


If you're planning on using ProGuard, make sure that you exclude the Stripe bindings. You can do this by adding the following to your proguard.cfg file:

-keep class com.stripe.** { *; }


Please see the Java API docs for the most up-to-date documentation.


import java.util.HashMap;
import java.util.Map;

import com.stripe.Stripe;
import com.stripe.exception.StripeException;
import com.stripe.model.Charge;

public class StripeExample {

    public static void main(String[] args) {
        RequestOptions requestOptions = (new RequestOptionsBuilder()).setApiKey("YOUR-SECRET-KEY").build();
        Map<String, Object> chargeMap = new HashMap<String, Object>();
        chargeMap.put("amount", 100);
        chargeMap.put("currency", "usd");
        Map<String, Object> cardMap = new HashMap<String, Object>();
        cardMap.put("number", "4242424242424242");
        cardMap.put("exp_month", 12);
        cardMap.put("exp_year", 2020);
        chargeMap.put("card", cardMap);
        try {
            Charge charge = Charge.create(chargeMap, requestOptions);
        } catch (StripeException e) {

See for more examples.


You must have Maven installed. To run the tests:

mvn test

You can run particular tests by passing -D test=Class#method. For example:

mvn test -D test=StripeTest
mvn test -D test=StripeTest#testPlanCreate