# Order model
The Order
model represents a customer's completed order.
A Order
model is created as soon as the customer hits the checkout button.
The order is persisted even if the payment fails. This enables a
customer to retry the payment at any time.
# Payment ID for offline payments
If you offer offline payments you might want to have a unique payment ID to
identify any incoming payments. This can be done using the payment_hash
attribute
on the Order model.
echo $order->id;
=> 17
echo $order->payment_hash;
=> "ng4gNkm5"
2
3
4
The payment_hash
is presented to the shop admin on the orders backend page.
# Display offline payment info in checkout mails
Any payment instructions are by default rendered in the confirmation mails
via the payment_state
mail partial.
See Payment methods for further information on how to use payment instructions.
# Access pricing information
You can access the following price relationships on the Order
model. Refer
to the pricing information page for more
information on how to use these.
Relation | Description |
---|---|
totalPreTaxes | Grand total before taxes |
totalTaxes | Grand total taxes |
totalPostTaxes | Grand total after taxes |
totalProductPreTaxes | Product total before taxes |
totalProductTaxes | Product total taxes |
totalProductPostTaxes | Product total after taxes |
totalShippingPreTaxes | Shipping cost before taxes |
totalShippingTaxes | Shipping cost taxes |
totalShippingPostTaxes | Shipping cost after taxes |
totalPaymentPreTaxes | Payment provider cost before taxes |
totalPaymentTaxes | Payment provider cost taxes |
totalPaymentPostTaxes | Payment provider cost after taxes |
# Download PDF invoice
To download a PDF invoice for an Order, use the getPDFInvoice
method to
get a Barryvdh\DomPDF\PDF
instance.
Beware that only orders that have a payment method with a
valid pdf_partial
assigned will support this feature.
$pdf = $order->getPDFInvoice();
$pdf->save('/path/invoice.pdf'); // Save to disk
$pdf->stream(); // Return download response
$pdf->output(); // Return string representation
2
3
4
5