MollieAPI.Api.CustomersAPI (mollie_api v0.1.0-20260303)

View Source

API calls for all endpoints tagged CustomersAPI.

Summary

Functions

Create customer Creates a simple minimal representation of a customer. Payments, recurring mandates, and subscriptions can be linked to this customer object, which simplifies management of recurring payments. Once registered, customers will also appear in your Mollie dashboard.

Create customer payment Creates a payment for the customer. Linking customers to payments enables you to: Keep track of payment preferences for your customers Allow your customers to charge a previously used credit card with a single click in our hosted checkout Improve payment insights in the Mollie dashboard Use recurring payments This endpoint is effectively an alias of the Create payment endpoint with the customerId parameter predefined.

Delete customer Delete a customer. All mandates and subscriptions created for this customer will be canceled as well.

Get customer Retrieve a single customer by its ID.

List customer payments Retrieve all payments linked to the customer.

List customers Retrieve a list of all customers. The results are paginated.

Update customer Update an existing customer. For an in-depth explanation of each parameter, refer to the Create customer endpoint.

Functions

create_customer(connection, opts \\ [])

@spec create_customer(
  Tesla.Env.client(),
  keyword()
) ::
  {:ok, MollieAPI.Model.ErrorResponse.t()}
  | {:ok, MollieAPI.Model.CustomerResponse.t()}
  | {:error, Tesla.Env.t()}

Create customer Creates a simple minimal representation of a customer. Payments, recurring mandates, and subscriptions can be linked to this customer object, which simplifies management of recurring payments. Once registered, customers will also appear in your Mollie dashboard.

Parameters

  • connection (MollieAPI.Connection): Connection to server
  • opts (keyword): Optional parameters
    • :"idempotency-key" (String.t): A unique key to ensure idempotent requests. This key should be a UUID v4 string.
    • :body (EntityCustomer):

Returns

  • {:ok, MollieAPI.Model.CustomerResponse.t} on success
  • {:error, Tesla.Env.t} on failure

create_customer_payment(connection, customer_id, opts \\ [])

@spec create_customer_payment(Tesla.Env.client(), String.t(), keyword()) ::
  {:ok, MollieAPI.Model.ErrorResponse.t()}
  | {:ok, MollieAPI.Model.PaymentResponse.t()}
  | {:error, Tesla.Env.t()}

Create customer payment Creates a payment for the customer. Linking customers to payments enables you to: Keep track of payment preferences for your customers Allow your customers to charge a previously used credit card with a single click in our hosted checkout Improve payment insights in the Mollie dashboard Use recurring payments This endpoint is effectively an alias of the Create payment endpoint with the customerId parameter predefined.

Parameters

  • connection (MollieAPI.Connection): Connection to server
  • customer_id (String.t): Provide the ID of the related customer.
  • opts (keyword): Optional parameters
    • :"idempotency-key" (String.t): A unique key to ensure idempotent requests. This key should be a UUID v4 string.
    • :body (PaymentRequest):

Returns

  • {:ok, MollieAPI.Model.PaymentResponse.t} on success
  • {:error, Tesla.Env.t} on failure

delete_customer(connection, customer_id, opts \\ [])

@spec delete_customer(Tesla.Env.client(), String.t(), keyword()) ::
  {:ok, nil}
  | {:ok, MollieAPI.Model.ErrorResponse.t()}
  | {:error, Tesla.Env.t()}

Delete customer Delete a customer. All mandates and subscriptions created for this customer will be canceled as well.

Parameters

  • connection (MollieAPI.Connection): Connection to server
  • customer_id (String.t): Provide the ID of the related customer.
  • opts (keyword): Optional parameters
    • :"idempotency-key" (String.t): A unique key to ensure idempotent requests. This key should be a UUID v4 string.
    • :body (DeletePaymentLinkRequest):

Returns

  • {:ok, nil} on success
  • {:error, Tesla.Env.t} on failure

get_customer(connection, customer_id, opts \\ [])

Get customer Retrieve a single customer by its ID.

Parameters

  • connection (MollieAPI.Connection): Connection to server
  • customer_id (String.t): Provide the ID of the related customer.
  • opts (keyword): Optional parameters
    • :include (String.t): This endpoint allows you to include additional information via the include query string parameter.
    • :testmode (boolean()): Most API credentials are specifically created for either live mode or test mode. In those cases the testmode query parameter must not be sent. For organization-level credentials such as OAuth access tokens, you can enable test mode by setting the testmode query parameter to true. Test entities cannot be retrieved when the endpoint is set to live mode, and vice versa.
    • :"idempotency-key" (String.t): A unique key to ensure idempotent requests. This key should be a UUID v4 string.

Returns

  • {:ok, MollieAPI.Model.GetCustomer200Response.t} on success
  • {:error, Tesla.Env.t} on failure

list_customer_payments(connection, customer_id, opts \\ [])

List customer payments Retrieve all payments linked to the customer.

Parameters

  • connection (MollieAPI.Connection): Connection to server
  • customer_id (String.t): Provide the ID of the related customer.
  • opts (keyword): Optional parameters
    • :from (String.t): Provide an ID to start the result set from the item with the given ID and onwards. This allows you to paginate the result set.
    • :limit (integer()): The maximum number of items to return. Defaults to 50 items.
    • :sort (Sorting): Used for setting the direction of the result set. Defaults to descending order, meaning the results are ordered from newest to oldest.
    • :profileId (String.t): The identifier referring to the profile you wish to retrieve the resources for. Most API credentials are linked to a single profile. In these cases the profileId must not be sent. For organization-level credentials such as OAuth access tokens however, the profileId parameter is required.
    • :testmode (boolean()): Most API credentials are specifically created for either live mode or test mode. In those cases the testmode query parameter must not be sent. For organization-level credentials such as OAuth access tokens, you can enable test mode by setting the testmode query parameter to true. Test entities cannot be retrieved when the endpoint is set to live mode, and vice versa.
    • :"idempotency-key" (String.t): A unique key to ensure idempotent requests. This key should be a UUID v4 string.

Returns

  • {:ok, MollieAPI.Model.ListSettlementPayments200Response.t} on success
  • {:error, Tesla.Env.t} on failure

list_customers(connection, opts \\ [])

@spec list_customers(
  Tesla.Env.client(),
  keyword()
) ::
  {:ok, MollieAPI.Model.ErrorResponse.t()}
  | {:ok, MollieAPI.Model.ListCustomers200Response.t()}
  | {:error, Tesla.Env.t()}

List customers Retrieve a list of all customers. The results are paginated.

Parameters

  • connection (MollieAPI.Connection): Connection to server
  • opts (keyword): Optional parameters
    • :from (String.t): Provide an ID to start the result set from the item with the given ID and onwards. This allows you to paginate the result set.
    • :limit (integer()): The maximum number of items to return. Defaults to 50 items.
    • :sort (Sorting): Used for setting the direction of the result set. Defaults to descending order, meaning the results are ordered from newest to oldest.
    • :testmode (boolean()): Most API credentials are specifically created for either live mode or test mode. In those cases the testmode query parameter must not be sent. For organization-level credentials such as OAuth access tokens, you can enable test mode by setting the testmode query parameter to true. Test entities cannot be retrieved when the endpoint is set to live mode, and vice versa.
    • :"idempotency-key" (String.t): A unique key to ensure idempotent requests. This key should be a UUID v4 string.

Returns

  • {:ok, MollieAPI.Model.ListCustomers200Response.t} on success
  • {:error, Tesla.Env.t} on failure

update_customer(connection, customer_id, opts \\ [])

@spec update_customer(Tesla.Env.client(), String.t(), keyword()) ::
  {:ok, MollieAPI.Model.ErrorResponse.t()}
  | {:ok, MollieAPI.Model.CustomerResponse.t()}
  | {:error, Tesla.Env.t()}

Update customer Update an existing customer. For an in-depth explanation of each parameter, refer to the Create customer endpoint.

Parameters

  • connection (MollieAPI.Connection): Connection to server
  • customer_id (String.t): Provide the ID of the related customer.
  • opts (keyword): Optional parameters
    • :"idempotency-key" (String.t): A unique key to ensure idempotent requests. This key should be a UUID v4 string.
    • :body (UpdateCustomerRequest):

Returns

  • {:ok, MollieAPI.Model.CustomerResponse.t} on success
  • {:error, Tesla.Env.t} on failure