pub struct InvoicesApi { /* private fields */ }
Expand description
Create and manage invoices.
Implementations§
Source§impl InvoicesApi
impl InvoicesApi
pub fn new(config: Configuration, client: HttpClient) -> Self
Sourcepub async fn list_invoices(
&self,
params: &ListInvoicesParameters,
) -> Result<ListInvoicesResponse, ApiError>
pub async fn list_invoices( &self, params: &ListInvoicesParameters, ) -> Result<ListInvoicesResponse, ApiError>
Returns a list of invoices for a given location.
The response is paginated. If truncated, the response includes a cursor
that you use in a
subsequent request to retrieve the next set of invoices.
Sourcepub async fn create_invoice(
&self,
body: &CreateInvoiceRequest,
) -> Result<CreateInvoiceResponse, ApiError>
pub async fn create_invoice( &self, body: &CreateInvoiceRequest, ) -> Result<CreateInvoiceResponse, ApiError>
Creates a draft [Invoice] for an order created using the Orders API.
A draft invoice remains in your account and no action is taken. You must publish the invoice before Square can process it (send it to the customer’s email address or charge the customer’s card on file).
Sourcepub async fn search_invoices(
&self,
body: &SearchInvoicesRequest,
) -> Result<SearchInvoicesResponse, ApiError>
pub async fn search_invoices( &self, body: &SearchInvoicesRequest, ) -> Result<SearchInvoicesResponse, ApiError>
Searches for invoices from a location specified in the filter.
You can optionally specify customers in the filter for whom to retrieve invoices. In the current implementation, you can only specify one location and optionally one customer.
The response is paginated. If truncated, the response includes a cursor
that you use in a
subsequent request to retrieve the next set of invoices.
Sourcepub async fn delete_invoice(
&self,
invoice_id: &str,
params: &DeleteInvoiceParameters,
) -> Result<DeleteInvoiceResponse, ApiError>
pub async fn delete_invoice( &self, invoice_id: &str, params: &DeleteInvoiceParameters, ) -> Result<DeleteInvoiceResponse, ApiError>
Deletes the specified invoice.
When an invoice is deleted, the associated order status changes to CANCELED. You can only delete a draft invoice (you cannot delete a published invoice, including one that is scheduled for processing).
Sourcepub async fn get_invoice(
&self,
invoice_id: &str,
) -> Result<GetInvoiceResponse, ApiError>
pub async fn get_invoice( &self, invoice_id: &str, ) -> Result<GetInvoiceResponse, ApiError>
Retrieves an invoice by invoice ID.
Sourcepub async fn update_invoice(
&self,
invoice_id: &str,
body: &UpdateInvoiceRequest,
) -> Result<UpdateInvoiceResponse, ApiError>
pub async fn update_invoice( &self, invoice_id: &str, body: &UpdateInvoiceRequest, ) -> Result<UpdateInvoiceResponse, ApiError>
Updates an invoice by modifying fields, clearing fields, or both.
For most updates, you can use a sparse [Invoice] object to add fields or change values and
use the fields_to_clear
field to specify fields to clear. However, some restrictions
apply. For example, you cannot change the order_id
or location_id
field and you must
provide the complete custom_fields
list to update a custom field. Published invoices have
additional restrictions.
Sourcepub async fn cancel_invoice(
&self,
invoice_id: &str,
body: &CancelInvoiceRequest,
) -> Result<CancelInvoiceResponse, ApiError>
pub async fn cancel_invoice( &self, invoice_id: &str, body: &CancelInvoiceRequest, ) -> Result<CancelInvoiceResponse, ApiError>
Cancels an invoice.
The seller cannot collect payments for the canceled invoice.
You cannot cancel an invoice in the DRAFT
state or in a terminal state: PAID
,
REFUNDED
, CANCELED
, or FAILED
.
Sourcepub async fn publish_invoice(
&self,
invoice_id: &str,
body: &PublishInvoiceRequest,
) -> Result<PublishInvoiceResponse, ApiError>
pub async fn publish_invoice( &self, invoice_id: &str, body: &PublishInvoiceRequest, ) -> Result<PublishInvoiceResponse, ApiError>
Publishes the specified draft invoice.
After an invoice is published, Square follows up based on the invoice configuration. For example, Square sends the invoice to the customer’s email address, charges the customer’s card on file, or does nothing. Square also makes the invoice available on a Square-hosted invoice page.
The invoice status
also changes from DRAFT
to a status based on the invoice
configuration. For example, the status changes to UNPAID
if Square emails the invoice or
PARTIALLY_PAID
if Square charge a card on file for a portion of the invoice amount.