Struct stripe::generated::billing::credit_note::CreditNote
source · pub struct CreditNote {Show 29 fields
pub id: CreditNoteId,
pub amount: i64,
pub amount_shipping: i64,
pub created: Timestamp,
pub currency: Currency,
pub customer: Expandable<Customer>,
pub customer_balance_transaction: Option<Expandable<CustomerBalanceTransaction>>,
pub discount_amount: i64,
pub discount_amounts: Vec<DiscountsResourceDiscountAmount>,
pub effective_at: Option<Timestamp>,
pub invoice: Expandable<Invoice>,
pub lines: List<CreditNoteLineItem>,
pub livemode: bool,
pub memo: Option<String>,
pub metadata: Option<Metadata>,
pub number: String,
pub out_of_band_amount: Option<i64>,
pub pdf: String,
pub reason: Option<CreditNoteReason>,
pub refund: Option<Expandable<Refund>>,
pub shipping_cost: Option<InvoicesShippingCost>,
pub status: CreditNoteStatus,
pub subtotal: i64,
pub subtotal_excluding_tax: Option<i64>,
pub tax_amounts: Vec<CreditNoteTaxAmount>,
pub total: i64,
pub total_excluding_tax: Option<i64>,
pub type_: CreditNoteType,
pub voided_at: Option<Timestamp>,
}
Expand description
The resource representing a Stripe “CreditNote”.
For more details see https://stripe.com/docs/api/credit_notes/object
Fields§
§id: CreditNoteId
Unique identifier for the object.
amount: i64
The integer amount in cents (or local equivalent) representing the total amount of the credit note, including tax.
amount_shipping: i64
This is the sum of all the shipping amounts.
created: Timestamp
Time at which the object was created.
Measured in seconds since the Unix epoch.
currency: Currency
Three-letter ISO currency code, in lowercase.
Must be a supported currency.
customer: Expandable<Customer>
ID of the customer.
customer_balance_transaction: Option<Expandable<CustomerBalanceTransaction>>
Customer balance transaction related to this credit note.
discount_amount: i64
The integer amount in cents (or local equivalent) representing the total amount of discount that was credited.
discount_amounts: Vec<DiscountsResourceDiscountAmount>
The aggregate amounts calculated per discount for all line items.
effective_at: Option<Timestamp>
The date when this credit note is in effect.
Same as created
unless overwritten.
When defined, this value replaces the system-generated ‘Date of issue’ printed on the credit note PDF.
invoice: Expandable<Invoice>
ID of the invoice.
lines: List<CreditNoteLineItem>
Line items that make up the credit note.
livemode: bool
Has the value true
if the object exists in live mode or the value false
if the object exists in test mode.
memo: Option<String>
Customer-facing text that appears on the credit note PDF.
metadata: Option<Metadata>
Set of key-value pairs that you can attach to an object.
This can be useful for storing additional information about the object in a structured format.
number: String
A unique number that identifies this particular credit note and appears on the PDF of the credit note and its associated invoice.
out_of_band_amount: Option<i64>
Amount that was credited outside of Stripe.
pdf: String
The link to download the PDF of the credit note.
reason: Option<CreditNoteReason>
Reason for issuing this credit note, one of duplicate
, fraudulent
, order_change
, or product_unsatisfactory
.
refund: Option<Expandable<Refund>>
Refund related to this credit note.
shipping_cost: Option<InvoicesShippingCost>
The details of the cost of shipping, including the ShippingRate applied to the invoice.
status: CreditNoteStatus
Status of this credit note, one of issued
or void
.
Learn more about voiding credit notes.
subtotal: i64
The integer amount in cents (or local equivalent) representing the amount of the credit note, excluding exclusive tax and invoice level discounts.
subtotal_excluding_tax: Option<i64>
The integer amount in cents (or local equivalent) representing the amount of the credit note, excluding all tax and invoice level discounts.
tax_amounts: Vec<CreditNoteTaxAmount>
The aggregate amounts calculated per tax rate for all line items.
total: i64
The integer amount in cents (or local equivalent) representing the total amount of the credit note, including tax and all discount.
total_excluding_tax: Option<i64>
The integer amount in cents (or local equivalent) representing the total amount of the credit note, excluding tax, but including discounts.
type_: CreditNoteType
Type of this credit note, one of pre_payment
or post_payment
.
A pre_payment
credit note means it was issued when the invoice was open.
A post_payment
credit note means it was issued when the invoice was paid.
voided_at: Option<Timestamp>
The time that the credit note was voided.
Implementations§
source§impl CreditNote
impl CreditNote
sourcepub fn list(
client: &Client,
params: &ListCreditNotes<'_>,
) -> Response<List<CreditNote>>
pub fn list( client: &Client, params: &ListCreditNotes<'_>, ) -> Response<List<CreditNote>>
Returns a list of credit notes.
sourcepub fn create(
client: &Client,
params: CreateCreditNote<'_>,
) -> Response<CreditNote>
pub fn create( client: &Client, params: CreateCreditNote<'_>, ) -> Response<CreditNote>
Issue a credit note to adjust the amount of a finalized invoice.
For a status=open
invoice, a credit note reduces its amount_due
.
For a status=paid
invoice, a credit note does not affect its amount_due
.
Instead, it can result in any combination of the following:
- Refund: create a new refund (using
refund_amount
) or link an existing refund (usingrefund
). - 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
).
pre_payment_credit_notes_amount
or post_payment_credit_notes_amount
depending on its status
at the time of credit note creation.
sourcepub fn retrieve(
client: &Client,
id: &CreditNoteId,
expand: &[&str],
) -> Response<CreditNote>
pub fn retrieve( client: &Client, id: &CreditNoteId, expand: &[&str], ) -> Response<CreditNote>
Retrieves the credit note object with the given identifier.
sourcepub fn update(
client: &Client,
id: &CreditNoteId,
params: UpdateCreditNote<'_>,
) -> Response<CreditNote>
pub fn update( client: &Client, id: &CreditNoteId, params: UpdateCreditNote<'_>, ) -> Response<CreditNote>
Updates an existing credit note.
source§impl CreditNote
impl CreditNote
sourcepub fn void(client: &Client, id: &CreditNoteId) -> Response<CreditNote>
pub fn void(client: &Client, id: &CreditNoteId) -> Response<CreditNote>
Marks a credit note as void.
You can only void a credit note if the associated invoice is open.
Trait Implementations§
source§impl Clone for CreditNote
impl Clone for CreditNote
source§fn clone(&self) -> CreditNote
fn clone(&self) -> CreditNote
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for CreditNote
impl Debug for CreditNote
source§impl Default for CreditNote
impl Default for CreditNote
source§fn default() -> CreditNote
fn default() -> CreditNote
source§impl<'de> Deserialize<'de> for CreditNote
impl<'de> Deserialize<'de> for CreditNote
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
source§impl Object for CreditNote
impl Object for CreditNote
Auto Trait Implementations§
impl Freeze for CreditNote
impl RefUnwindSafe for CreditNote
impl Send for CreditNote
impl Sync for CreditNote
impl Unpin for CreditNote
impl UnwindSafe for CreditNote
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)