Inttegro.Customers (inttegro v0.2.0)

Copy Markdown View Source

Creates and maintains customer records owned by an Inttegro application.

Customers connect contact information, addresses, orders, and saved payment methods. Use a stable customer ID for repeat relationships and keep application-specific identifiers in custom_data rather than overloading personal fields.

Summary

Functions

Create a reusable customer profile for orders and saved payment methods.

Retrieve a page of customers for the authenticated application.

Replace any supplied customer profile fields while leaving omitted fields unchanged.

Functions

create(client, request, options \\ [])

Create a reusable customer profile for orders and saved payment methods.

Parameters

Returns

Returns {:ok, Inttegro.Customers.Customer.t()} when Inttegro accepts and decodes the operation. Returns {:error, exception} for API, transport, or decoding failures. A successful API response can still describe an asynchronous resource that has not reached its terminal state.

Example

request = Inttegro.Customers.CreateRequest.new!(request_attributes)

case Inttegro.Customers.create(client, request) do
  {:ok, result} -> result
  {:error, error} -> {:error, error}
end

lookup(client, request, options \\ [])

Look up a customer

Parameters

Returns

Returns {:ok, Inttegro.Customers.Customer.t()} when Inttegro accepts and decodes the operation. Returns {:error, exception} for API, transport, or decoding failures. A successful API response can still describe an asynchronous resource that has not reached its terminal state.

Example

request = Inttegro.Customers.LookupRequest.new!(request_attributes)

case Inttegro.Customers.lookup(client, request) do
  {:ok, result} -> result
  {:error, error} -> {:error, error}
end

page(client, request, options \\ [])

Retrieve a page of customers for the authenticated application.

Parameters

Returns

Returns {:ok, Inttegro.Customers.Page.t()} when Inttegro accepts and decodes the operation. Returns {:error, exception} for API, transport, or decoding failures. A successful API response can still describe an asynchronous resource that has not reached its terminal state.

Example

request = Inttegro.Customers.PageRequest.new!(request_attributes)

case Inttegro.Customers.page(client, request) do
  {:ok, result} -> result
  {:error, error} -> {:error, error}
end

update(client, request, options \\ [])

Replace any supplied customer profile fields while leaving omitted fields unchanged.

Parameters

Returns

Returns {:ok, Inttegro.Customers.Customer.t()} when Inttegro accepts and decodes the operation. Returns {:error, exception} for API, transport, or decoding failures. A successful API response can still describe an asynchronous resource that has not reached its terminal state.

Example

request = Inttegro.Customers.UpdateRequest.new!(request_attributes)

case Inttegro.Customers.update(client, request) do
  {:ok, result} -> result
  {:error, error} -> {:error, error}
end