Struct stripe::CreateCharge

source ·
pub struct CreateCharge<'a> {
Show 19 fields pub amount: Option<i64>, pub application_fee: Option<i64>, pub application_fee_amount: Option<i64>, pub capture: Option<bool>, pub currency: Option<Currency>, pub customer: Option<CustomerId>, pub description: Option<&'a str>, pub destination: Option<DestinationSpecs>, pub expand: &'a [&'a str], pub metadata: Option<Metadata>, pub on_behalf_of: Option<&'a str>, pub radar_options: Option<CreateChargeRadarOptions>, pub receipt_email: Option<&'a str>, pub shipping: Option<Shipping>, pub source: Option<ChargeSourceParams>, pub statement_descriptor: Option<&'a str>, pub statement_descriptor_suffix: Option<&'a str>, pub transfer_data: Option<TransferDataParams>, pub transfer_group: Option<&'a str>,
}
Expand description

The parameters for Charge::create.

Fields§

§amount: Option<i64>

Amount intended to be collected by this payment.

A positive integer representing how much to charge in the smallest currency unit (e.g., 100 cents to charge $1.00 or 100 to charge ¥100, a zero-decimal currency). The minimum amount is $0.50 US or equivalent in charge currency. The amount value supports up to eight digits (e.g., a value of 99999999 for a USD charge of $999,999.99).

§application_fee: Option<i64>§application_fee_amount: Option<i64>

A fee in cents (or local equivalent) that will be applied to the charge and transferred to the application owner’s Stripe account.

The request must be made with an OAuth key or the Stripe-Account header in order to take an application fee. For more information, see the application fees documentation.

§capture: Option<bool>

Whether to immediately capture the charge.

Defaults to true. When false, the charge issues an authorization (or pre-authorization), and will need to be captured later. Uncaptured charges expire after a set number of days (7 by default). For more information, see the authorizing charges and settling later documentation.

§currency: Option<Currency>

Three-letter ISO currency code, in lowercase.

Must be a supported currency.

§customer: Option<CustomerId>

The ID of an existing customer that will be charged in this request.

§description: Option<&'a str>

An arbitrary string which you can attach to a Charge object.

It is displayed when in the web interface alongside the charge. Note that if you use Stripe to send automatic email receipts to your customers, your receipt emails will include the description of the charge(s) that they are describing.

§destination: Option<DestinationSpecs>§expand: &'a [&'a str]

Specifies which fields in the response should be expanded.

§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. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to metadata.

§on_behalf_of: Option<&'a str>

The Stripe account ID for which these funds are intended.

Automatically set if you use the destination parameter. For details, see Creating Separate Charges and Transfers.

§radar_options: Option<CreateChargeRadarOptions>

Options to configure Radar.

See Radar Session for more information.

§receipt_email: Option<&'a str>

The email address to which this charge’s receipt will be sent.

The receipt will not be sent until the charge is paid, and no receipts will be sent for test mode charges. If this charge is for a Customer, the email address specified here will override the customer’s email address. If receipt_email is specified for a charge in live mode, a receipt will be sent regardless of your email settings.

§shipping: Option<Shipping>

Shipping information for the charge.

Helps prevent fraud on charges for physical goods.

§source: Option<ChargeSourceParams>

A payment source to be charged.

This can be the ID of a card (i.e., credit or debit card), a bank account, a source, a token, or a connected account. For certain sources—namely, cards, bank accounts, and attached sources—you must also pass the ID of the associated customer.

§statement_descriptor: Option<&'a str>

For card charges, use statement_descriptor_suffix instead.

Otherwise, you can use this value as the complete description of a charge on your customers’ statements. Must contain at least one letter, maximum 22 characters.

§statement_descriptor_suffix: Option<&'a str>

Provides information about the charge that customers see on their statements.

Concatenated with the prefix (shortened descriptor) or statement descriptor that’s set on the account to form the complete statement descriptor. Maximum 22 characters for the concatenated descriptor.

§transfer_data: Option<TransferDataParams>

An optional dictionary including the account to automatically transfer to as part of a destination charge.

See the Connect documentation for details.

§transfer_group: Option<&'a str>

A string that identifies this transaction as part of a group.

For details, see Grouping transactions.

Implementations§

source§

impl<'a> CreateCharge<'a>

source

pub fn new() -> Self

Trait Implementations§

source§

impl<'a> Clone for CreateCharge<'a>

source§

fn clone(&self) -> CreateCharge<'a>

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl<'a> Debug for CreateCharge<'a>

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'a> Default for CreateCharge<'a>

source§

fn default() -> CreateCharge<'a>

Returns the “default value” for a type. Read more
source§

impl<'a> Serialize for CreateCharge<'a>

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

§

impl<'a> Freeze for CreateCharge<'a>

§

impl<'a> RefUnwindSafe for CreateCharge<'a>

§

impl<'a> Send for CreateCharge<'a>

§

impl<'a> Sync for CreateCharge<'a>

§

impl<'a> Unpin for CreateCharge<'a>

§

impl<'a> UnwindSafe for CreateCharge<'a>

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> Same for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

source§

fn vzip(self) -> V

source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more