Stripe.Charges

Handles charges to the Stripe API.

Summary

Functions

Captures a charge that is currently pending. Note: you can default a charge to be automatically captured by setting capture: true in the charge create params

Updates a charge with changeable information (see the Stripe docs on what you can change)

Examples

Creates a charge for a customer or card. You must pass in the amount, and also a source for the charge that can be a token or customer. See the Stripe docs for proper source specs

Retrieves a given charge

Lists out charges from your account with a default limit of 10. You can override this by passing in a limit

Refunds a charge completely. Use refund_partial if you just want to… you know… partially refund

Refunds a charge partially; the amount is required

Functions

capture(id)

Captures a charge that is currently pending. Note: you can default a charge to be automatically captured by setting capture: true in the charge create params.

Example

{:ok, charge} = Stripe.Charges.capture("charge_id")
change(id, params)

Updates a charge with changeable information (see the Stripe docs on what you can change)

Examples

params = [description: "Changed charge"]
  {:ok, charge} = Stripe.Charges.change("charge_id", params)
create(amount, params)

Creates a charge for a customer or card. You must pass in the amount, and also a source for the charge that can be a token or customer. See the Stripe docs for proper source specs.

Examples

params = [
    source: [
      object: "card",
      number: "4111111111111111",
      exp_month: 10,
      exp_year: 2020,
      country: "US",
      name: "Ducky Test",
      cvc: 123
    ],
    description: "1000 Widgets"
  ]

  {:ok, result} = Stripe.Charges.create 1000,params
get(id)

Retrieves a given charge.

Example

{:ok, charge} = Stripe.Charges.get("charge_id")
list(limit \\ 10)

Lists out charges from your account with a default limit of 10. You can override this by passing in a limit.

Examples

{:ok, charges} = Stripe.Charges.list(100)
refund(id)

Refunds a charge completely. Use refund_partial if you just want to… you know… partially refund

Example

{:ok, charge} = Stripe.Charges.refund("charge_id")
refund_partial(id, amount)

Refunds a charge partially; the amount is required.

Example

{:ok, charge} = Stripe.Charges.refund_partial("charge_id",500)