5.0.0 • Published 8 years ago

angular-stripe v5.0.0

Weekly downloads
2,534
License
MIT
Repository
github
Last release
8 years ago

angular-stripe Build Status

Angular provider for easy interaction with Stripe.js. angular-stripe wraps Stripe.js's async operations in $q promises, making response handling easier and eliminating $scope.$apply calls and other repetitive boilerplate in your application. Check out angular-credit-cards for validating your credit card forms.

Installing

npm install --save angular-stripe

Usage

angular-stripe will load Stripe.js when it's first called. You don't need to directly include Stripe.js via a <script> tag.

// node module exports the string 'angular-stripe' for convenience
angular.module('myApp', [
  require('angular-stripe')
])

// otherwise, include the code first then the module name
angular.module('myApp', [
  'angular-stripe'
])

API

stripeProvider

angular-stripe exposes stripeProvider for configuring Stripe.js.

stripeProvider.url

The URL that will be used to fetch the Stripe.js library.

stripeProvider.setPublishableKey(key) -> undefined

Sets your Stripe publishable key.

angular
  .module('myApp', [
    'angular-stripe'
  ])
  .config(function (stripeProvider) {
    stripeProvider.setPublishableKey('my_key')
  })

stripe

Inject stripe into your services or controllers to access the API methods. createToken returns a $q promise. If Stripe responds with an error, the promise will be rejected.


stripe.setPublishableKey(key) -> undefined

Same as stripeProvider.setPublishableKey


stripe.card

stripe.card.createToken(card [, params]) -> promise

Tokenizes a card using Stripe.card.createToken. You can optionally pass a key property under params to use a different publishable key than the default to create that token. This is especially useful for applications using Stripe Connect.

The following utility methods are also exposed:


stripe.bankAccount

stripe.bankAccount.createToken(bankAccount [, params]) -> promise

Tokenizes a card using Stripe.bankAccount.createToken.

The following utility methods are also exposed:


stripe.bitcoinReceiver

stripe.bitcoinReceiver.createReceiver -> promise

Creates a bitcoin receiver using Stripe.bitcoinReceiver.createReceiver.

stripe.bitcoinReceiver.pollReceiver -> promise

Polls a bitcoin receiver using Stripe.bitcoinReceiver.pollReceiver. Note that you'll need to implement additional logic if you need to cancel receivers.

The following utility methods are also exposed:


Examples

Charging a card

app.controller('PaymentController', function ($scope, $http, stripe) {
  $scope.charge = function charge () {
    return stripe.card.createToken($scope.payment.card)
      .then(function (response) {
        console.log('token created for card ending in ', response.card.last4)
        var payment = angular.copy($scope.payment)
        payment.card = undefined
        payment.token = response.id
        return $http.post('https://yourserver.com/payments', payment)
      })
      .then(function (payment) {
        console.log('successfully submitted payment for $', payment.amount)
      })
      .catch(function (err) {
        if (err.type && /^Stripe/.test(err.type)) {
          console.log('Stripe error: ', err.message)
        }
        else {
          console.log('Other error occurred, possibly with your API', err.message)
        }
      })
  }
})
5.0.0

8 years ago

4.2.13

8 years ago

4.2.12

9 years ago

4.2.11

9 years ago

4.2.10

9 years ago

4.2.9

9 years ago

4.2.8

10 years ago

4.2.7

10 years ago

4.2.6

10 years ago

4.2.5

10 years ago

4.2.4

10 years ago

4.2.3

10 years ago

4.2.2

10 years ago

4.2.1

10 years ago

4.2.0

10 years ago

4.1.0

10 years ago

4.0.2

11 years ago

4.0.1

11 years ago

4.0.0

11 years ago

3.0.2

11 years ago

3.0.1

11 years ago

3.0.0

11 years ago

2.0.2

11 years ago

2.0.0

11 years ago

0.0.0

11 years ago