Stripe.Services.CreditNoteService (tiger_stripe v0.1.10)

Copy Markdown View Source

CreditNote

Issue a credit note to adjust an invoice's amount after the invoice is finalized.

Related guide: Credit notes

Summary

Functions

create(client, params \\ %{}, opts \\ [])

@spec create(Stripe.Client.t(), map(), keyword()) ::
  {:ok, term()} | {:error, Stripe.Error.t()}

Create a credit note

Issue a credit note to adjust the amount of a finalized invoice. A credit note will first reduce the invoice’s amount_remaining (and amount_due), but not below zero. This amount is indicated by the credit note’s pre_payment_amount. The excess amount is indicated by post_payment_amount, and it can result in any combination of the following:

  • Refunds: create a new refund (using refund_amount) or link existing refunds (using refunds).
  • Customer balance credit: credit the customer’s balance (using credit_amount) which will be automatically applied to their next invoice when it’s finalized.
  • Outside of Stripe credit: record the amount that is or will be credited outside of Stripe (using out_of_band_amount).

The sum of refunds, customer balance credits, and outside of Stripe credits must equal the post_payment_amount.

You may issue multiple credit notes for an invoice. Each credit note may increment the invoice’s pre_payment_credit_notes_amount, post_payment_credit_notes_amount, or both, depending on the invoice’s amount_remaining at the time of credit note creation.

list(client, params \\ %{}, opts \\ [])

@spec list(Stripe.Client.t(), map(), keyword()) ::
  {:ok, term()} | {:error, Stripe.Error.t()}

List all credit notes

Returns a list of credit notes.

preview(client, params \\ %{}, opts \\ [])

@spec preview(Stripe.Client.t(), map(), keyword()) ::
  {:ok, term()} | {:error, Stripe.Error.t()}

Preview a credit note

Get a preview of a credit note without creating it.

retrieve(client, id, params \\ %{}, opts \\ [])

@spec retrieve(Stripe.Client.t(), String.t(), map(), keyword()) ::
  {:ok, term()} | {:error, Stripe.Error.t()}

Retrieve a credit note

Retrieves the credit note object with the given identifier.

update(client, id, params \\ %{}, opts \\ [])

@spec update(Stripe.Client.t(), String.t(), map(), keyword()) ::
  {:ok, term()} | {:error, Stripe.Error.t()}

Update a credit note

Updates an existing credit note.

void_credit_note(client, id, params \\ %{}, opts \\ [])

@spec void_credit_note(Stripe.Client.t(), String.t(), map(), keyword()) ::
  {:ok, term()} | {:error, Stripe.Error.t()}

Void a credit note

Marks a credit note as void. Learn more about voiding credit notes.