pub struct Order {
pub create_time: Option<String>,
pub update_time: Option<String>,
pub id: Option<String>,
pub payment_source: Option<PaymentSourceResponse>,
pub intent: Option<OrderIntent>,
pub payer: Option<Payer>,
pub purchase_units: Option<Vec<PurchaseUnit>>,
pub processing_instruction: Option<ProcessingInstruction>,
pub status: Option<OrderStatus>,
pub links: Option<Vec<LinkDescription>>,
}
Fields§
§create_time: Option<String>
The date and time when the transaction occurred, in Internet date and time format.
update_time: Option<String>
The date and time when the transaction was last updated, in Internet date and time format.
id: Option<String>
The ID of the order.
payment_source: Option<PaymentSourceResponse>
The payment source used to fund the payment.
intent: Option<OrderIntent>
The intent to either capture payment immediately or authorize a payment for an order after order creation.
payer: Option<Payer>
The customer who approves and pays for the order. The customer is also known as the payer.
purchase_units: Option<Vec<PurchaseUnit>>
An array of purchase units. Each purchase unit establishes a contract between a customer and merchant. Each purchase unit represents either a full or partial order that the customer intends to purchase from the merchant.
processing_instruction: Option<ProcessingInstruction>
The instruction to process an order.
status: Option<OrderStatus>
The order status.
links: Option<Vec<LinkDescription>>
An array of request-related HATEOAS links. To complete payer approval, use the approve link to redirect the payer. The API caller has 3 hours (default setting, this which can be changed by your account manager to 24/48/72 hours to accommodate your use case) from the time the order is created, to redirect your payer. Once redirected, the API caller has 3 hours for the payer to approve the order and either authorize or capture the order. If you are not using the PayPal JavaScript SDK to initiate PayPal Checkout (in context) ensure that you include application_context.return_url is specified or you will get “We’re sorry, Things don’t appear to be working at the moment” after the payer approves the payment.
Implementations§
Source§impl Order
impl Order
Sourcepub async fn create(
client: &Client,
dto: CreateOrderDto,
) -> Result<Order, PayPalError>
pub async fn create( client: &Client, dto: CreateOrderDto, ) -> Result<Order, PayPalError>
Creates an order.
Sourcepub async fn show_details(
client: &Client,
id: &str,
) -> Result<Order, PayPalError>
pub async fn show_details( client: &Client, id: &str, ) -> Result<Order, PayPalError>
Shows details for an order, by ID.
Sourcepub async fn patch(
client: &Client,
id: &str,
dto: PatchOrderDto,
) -> Result<(), PayPalError>
pub async fn patch( client: &Client, id: &str, dto: PatchOrderDto, ) -> Result<(), PayPalError>
Updates an order with a CREATED or APPROVED status. You cannot update an order with the COMPLETED status.
To make an update, you must provide a reference_id. If you omit this value with an order that contains only one purchase unit, PayPal sets the value to default which enables you to use the path: “/purchase_units/@reference_id==‘default’/{attribute-or-object}”
Authorizes payment for an order. To successfully authorize payment for an order, the buyer must first approve the order or a valid payment_source must be provided in the request. A buyer can approve the order upon being redirected to the rel:approve URL that was returned in the HATEOAS links in the create order response.
Sourcepub async fn capture(
client: &Client,
id: &str,
payment_source: Option<PaymentSource>,
) -> Result<CapturePaymentForOrderResponse, PayPalError>
pub async fn capture( client: &Client, id: &str, payment_source: Option<PaymentSource>, ) -> Result<CapturePaymentForOrderResponse, PayPalError>
Captures payment for an order. To successfully capture payment for an order, the buyer must first approve the order or a valid payment_source must be provided in the request. A buyer can approve the order upon being redirected to the rel:approve URL that was returned in the HATEOAS links in the create order response.