pub struct TransactionCreate<'a> { /* private fields */ }
Expand description
Request builder for creating a transaction in Paddle.
Implementations§
Source§impl<'a> TransactionCreate<'a>
impl<'a> TransactionCreate<'a>
pub fn new(client: &'a Paddle) -> Self
Sourcepub fn include(
&mut self,
includes: impl IntoIterator<Item = impl Into<String>>,
) -> &mut Self
pub fn include( &mut self, includes: impl IntoIterator<Item = impl Into<String>>, ) -> &mut Self
Include related entities in the response.
§Valid values are:
address
adjustments
adjustments_totals
available_payment_methods
business
customer
discount
Sourcepub fn append_catalog_item(
&mut self,
price_id: impl Into<PriceID>,
quantity: u32,
) -> &mut Self
pub fn append_catalog_item( &mut self, price_id: impl Into<PriceID>, quantity: u32, ) -> &mut Self
Append to the list of items to charge for.
You can charge for items that you’ve added to your catalog by passing the Paddle ID of an existing price entity,
To charge for non-catalog items see append_non_catalog_item.
Sourcepub fn append_non_catalog_item(
&mut self,
price: TransactionItemNonCatalogPrice,
quantity: u32,
) -> &mut Self
pub fn append_non_catalog_item( &mut self, price: TransactionItemNonCatalogPrice, quantity: u32, ) -> &mut Self
Append to the list of items to charge for.
You can charge for non-catalog items by passing a TransactionItemNonCatalogPrice
object.
Sourcepub fn status(&mut self, status: TransactionStatus) -> &mut Self
pub fn status(&mut self, status: TransactionStatus) -> &mut Self
Status of this transaction. You may set a transaction to billed when creating, or omit to let Paddle set the status.
Transactions are created as ready if they have an address_id, customer_id, and items, otherwise they are created as draft.
Marking as billed when creating is typically used when working with manually-collected transactions as part of an invoicing workflow. Billed transactions cannot be updated, only canceled.
Sourcepub fn customer_id(&mut self, customer_id: impl Into<CustomerID>) -> &mut Self
pub fn customer_id(&mut self, customer_id: impl Into<CustomerID>) -> &mut Self
Paddle ID of the customer that this transaction is for.
If omitted, transaction status is draft
.
Sourcepub fn address_id(&mut self, address_id: impl Into<AddressID>) -> &mut Self
pub fn address_id(&mut self, address_id: impl Into<AddressID>) -> &mut Self
Paddle ID of the address that this transaction is for.
Requires customer_id. If omitted, transaction status is draft.
Sourcepub fn business_id(&mut self, business_id: impl Into<BusinessID>) -> &mut Self
pub fn business_id(&mut self, business_id: impl Into<BusinessID>) -> &mut Self
Paddle ID of the business that this transaction is for.
Requires customer_id
Sourcepub fn custom_data(&mut self, custom_data: HashMap<String, String>) -> &mut Self
pub fn custom_data(&mut self, custom_data: HashMap<String, String>) -> &mut Self
Your own structured key-value data.
Sourcepub fn currency_code(&mut self, currency_code: CurrencyCode) -> &mut Self
pub fn currency_code(&mut self, currency_code: CurrencyCode) -> &mut Self
Supported three-letter ISO 4217 currency code. Must be USD
, EUR
, or GBP
if collection_mode
is manual
.
Sourcepub fn collection_mode(&mut self, mode: CollectionMode) -> &mut Self
pub fn collection_mode(&mut self, mode: CollectionMode) -> &mut Self
How payment is collected for this transaction. automatic
for checkout, manual
for invoices. If omitted, defaults to automatic
.
Sourcepub fn discount_id(&mut self, discount_id: impl Into<DiscountID>) -> &mut Self
pub fn discount_id(&mut self, discount_id: impl Into<DiscountID>) -> &mut Self
Paddle ID of the discount applied to this transaction.
Sourcepub fn billing_details(&mut self, billing_details: BillingDetails) -> &mut Self
pub fn billing_details(&mut self, billing_details: BillingDetails) -> &mut Self
Details for invoicing. Required if collection_mode
is manual
.
Sourcepub fn billing_period(&mut self, billing_period: TimePeriod) -> &mut Self
pub fn billing_period(&mut self, billing_period: TimePeriod) -> &mut Self
Time period that this transaction is for. Set automatically by Paddle for subscription renewals to describe the period that charges are for.
Sourcepub fn checkout_url(&mut self, url: String) -> &mut Self
pub fn checkout_url(&mut self, url: String) -> &mut Self
Paddle Checkout URL for creating or updating an automatically-collected transaction, or when creating or updating a manually-collected transaction
where billing_details.enable_checkout
is true
.
Pass the URL for an approved domain, or null to set to your default payment URL.
Paddle returns a unique payment link composed of the URL passed or your default payment URL + ?_ptxn= and the Paddle ID for this transaction.
Sourcepub async fn send(&self) -> Result<SuccessResponse<Transaction>, Error>
pub async fn send(&self) -> Result<SuccessResponse<Transaction>, Error>
Send the request to Paddle and return the response.