Pennylane API Client
    Preparing search index...

    Variable CustomersApiConst

    CustomersApi: {
        categorizeCustomer: (
            id: string,
            body: CategorizeCustomerBody,
        ) => Effect<
            readonly {
                analytical_code: string
                | null;
                category_group: { id: number };
                created_at: string;
                id: number;
                label: string;
                updated_at: string;
                weight: string;
            }[],
            CategorizeCustomerError,
            PennylaneClient,
        >;
        createCompanyCustomer: (
            body: CreateCompanyCustomerBody,
        ) => Effect<
            {
                billing_address: {
                    address: string;
                    city: string;
                    country_alpha2: string;
                    postal_code: string;
                };
                billing_iban: string
                | null;
                billing_language: "fr_FR" | "en_GB" | "de_DE";
                contacts: { url: string };
                created_at: string;
                delivery_address: {
                    address: string;
                    city: string;
                    country_alpha2: string;
                    postal_code: string;
                };
                emails: readonly string[];
                external_reference: string;
                id: number;
                ledger_account: { id: number }
                | null;
                mandates: { url: string };
                name: string;
                notes: string | null;
                payment_conditions:
                    | "upon_receipt"
                    | "custom"
                    | "7_days"
                    | "15_days"
                    | "30_days"
                    | "30_days_end_of_month"
                    | "45_days"
                    | "45_days_end_of_month"
                    | "60_days";
                phone: string;
                pro_account_mandates: { url: string };
                recipient: string;
                reference: string | null;
                reg_no: string;
                updated_at: string;
                vat_number: string;
            },
            CreateCompanyCustomerError,
            PennylaneClient,
        >;
        createIndividualCustomer: (
            body: CreateIndividualCustomerBody,
        ) => Effect<
            {
                billing_address: {
                    address: string;
                    city: string;
                    country_alpha2: string;
                    postal_code: string;
                };
                billing_iban: string
                | null;
                billing_language: "fr_FR" | "en_GB" | "de_DE";
                contacts: { url: string };
                created_at: string;
                delivery_address: {
                    address: string;
                    city: string;
                    country_alpha2: string;
                    postal_code: string;
                };
                emails: readonly string[];
                external_reference: string;
                first_name: string;
                id: number;
                last_name: string;
                ledger_account: { id: number }
                | null;
                mandates: { url: string };
                name: string;
                notes: string | null;
                payment_conditions:
                    | "upon_receipt"
                    | "custom"
                    | "7_days"
                    | "15_days"
                    | "30_days"
                    | "30_days_end_of_month"
                    | "45_days"
                    | "45_days_end_of_month"
                    | "60_days";
                phone: string;
                pro_account_mandates: { url: string };
                recipient: string;
                reference: string | null;
                updated_at: string;
            },
            CreateIndividualCustomerError,
            PennylaneClient,
        >;
        getCompanyCustomer: (
            id: string,
        ) => Effect<
            {
                billing_address: {
                    address: string;
                    city: string;
                    country_alpha2: string;
                    postal_code: string;
                };
                billing_iban: string
                | null;
                billing_language: "fr_FR" | "en_GB" | "de_DE";
                contacts: { url: string };
                created_at: string;
                delivery_address: {
                    address: string;
                    city: string;
                    country_alpha2: string;
                    postal_code: string;
                };
                emails: readonly string[];
                external_reference: string;
                id: number;
                ledger_account: { id: number }
                | null;
                mandates: { url: string };
                name: string;
                notes: string | null;
                payment_conditions:
                    | "upon_receipt"
                    | "custom"
                    | "7_days"
                    | "15_days"
                    | "30_days"
                    | "30_days_end_of_month"
                    | "45_days"
                    | "45_days_end_of_month"
                    | "60_days";
                phone: string;
                pro_account_mandates: { url: string };
                recipient: string;
                reference: string | null;
                reg_no: string;
                updated_at: string;
                vat_number: string;
            },
            GetCompanyCustomerError,
            PennylaneClient,
        >;
        getCustomer: (
            id: string,
        ) => Effect<
            | {
                billing_address: {
                    address: string;
                    city: string;
                    country_alpha2: string;
                    postal_code: string;
                };
                billing_iban: string
                | null;
                billing_language: "fr_FR" | "en_GB" | "de_DE";
                contacts: { url: string };
                created_at: string;
                customer_type: "company";
                delivery_address: {
                    address: string;
                    city: string;
                    country_alpha2: string;
                    postal_code: string;
                };
                emails: readonly string[];
                external_reference: string;
                id: number;
                ledger_account: { id: number }
                | null;
                mandates: { url: string };
                name: string;
                notes: string | null;
                payment_conditions:
                    | "upon_receipt"
                    | "custom"
                    | "7_days"
                    | "15_days"
                    | "30_days"
                    | "30_days_end_of_month"
                    | "45_days"
                    | "45_days_end_of_month"
                    | "60_days";
                phone: string;
                pro_account_mandates: { url: string };
                recipient: string;
                reference: string | null;
                reg_no: string;
                updated_at: string;
                vat_number: string;
            }
            | {
                billing_address: {
                    address: string;
                    city: string;
                    country_alpha2: string;
                    postal_code: string;
                };
                billing_iban: string
                | null;
                billing_language: "fr_FR" | "en_GB" | "de_DE";
                contacts: { url: string };
                created_at: string;
                customer_type: "individual";
                delivery_address: {
                    address: string;
                    city: string;
                    country_alpha2: string;
                    postal_code: string;
                };
                emails: readonly string[];
                external_reference: string;
                first_name: string;
                id: number;
                last_name: string;
                ledger_account: { id: number }
                | null;
                mandates: { url: string };
                name: string;
                notes: string | null;
                payment_conditions:
                    | "upon_receipt"
                    | "custom"
                    | "7_days"
                    | "15_days"
                    | "30_days"
                    | "30_days_end_of_month"
                    | "45_days"
                    | "45_days_end_of_month"
                    | "60_days";
                phone: string;
                pro_account_mandates: { url: string };
                recipient: string;
                reference: string | null;
                updated_at: string;
            },
            GetCustomerError,
            PennylaneClient,
        >;
        getCustomerCategories: (
            customerId: string,
            params?: GetCustomerCategoriesQueryParams,
        ) => Effect<
            {
                has_more: boolean;
                items: readonly {
                    analytical_code: string
                    | null;
                    category_group: { id: number };
                    created_at: string;
                    id: number;
                    label: string;
                    updated_at: string;
                    weight: string;
                }[];
                next_cursor?: string
                | null;
            },
            GetCustomerCategoriesError,
            PennylaneClient,
        >;
        getCustomerContacts: (
            customerId: string,
            params?: GetCustomerContactsQueryParams,
        ) => Effect<
            {
                has_more: boolean;
                items: readonly {
                    created_at: string;
                    email: string;
                    first_name: string;
                    id: number;
                    last_name: string;
                    mobile_number: string;
                    role: string;
                    telephone_number: string;
                    updated_at: string;
                }[];
                next_cursor?: string
                | null;
            },
            GetCustomerContactsError,
            PennylaneClient,
        >;
        getCustomers: (
            params?: GetCustomersQueryParams,
        ) => Effect<
            {
                has_more: boolean;
                items: readonly (
                    | {
                        billing_address: {
                            address: string;
                            city: string;
                            country_alpha2: string;
                            postal_code: string;
                        };
                        billing_iban: string
                        | null;
                        billing_language: "fr_FR" | "en_GB" | "de_DE";
                        contacts: { url: string };
                        created_at: string;
                        customer_type: "company";
                        delivery_address: {
                            address: string;
                            city: string;
                            country_alpha2: string;
                            postal_code: string;
                        };
                        emails: readonly string[];
                        external_reference: string;
                        id: number;
                        ledger_account: { id: number }
                        | null;
                        mandates: { url: string };
                        name: string;
                        notes: string | null;
                        payment_conditions:
                            | "upon_receipt"
                            | "custom"
                            | "7_days"
                            | "15_days"
                            | "30_days"
                            | "30_days_end_of_month"
                            | "45_days"
                            | "45_days_end_of_month"
                            | "60_days";
                        phone: string;
                        pro_account_mandates: { url: string };
                        recipient: string;
                        reference: string | null;
                        reg_no: string;
                        updated_at: string;
                        vat_number: string;
                    }
                    | {
                        billing_address: {
                            address: string;
                            city: string;
                            country_alpha2: string;
                            postal_code: string;
                        };
                        billing_iban: string
                        | null;
                        billing_language: "fr_FR" | "en_GB" | "de_DE";
                        contacts: { url: string };
                        created_at: string;
                        customer_type: "individual";
                        delivery_address: {
                            address: string;
                            city: string;
                            country_alpha2: string;
                            postal_code: string;
                        };
                        emails: readonly string[];
                        external_reference: string;
                        first_name: string;
                        id: number;
                        last_name: string;
                        ledger_account: { id: number }
                        | null;
                        mandates: { url: string };
                        name: string;
                        notes: string | null;
                        payment_conditions:
                            | "upon_receipt"
                            | "custom"
                            | "7_days"
                            | "15_days"
                            | "30_days"
                            | "30_days_end_of_month"
                            | "45_days"
                            | "45_days_end_of_month"
                            | "60_days";
                        phone: string;
                        pro_account_mandates: { url: string };
                        recipient: string;
                        reference: string | null;
                        updated_at: string;
                    }
                )[];
                next_cursor?: string
                | null;
            },
            GetCustomersError,
            PennylaneClient,
        >;
        getIndividualCustomer: (
            id: string,
        ) => Effect<
            {
                billing_address: {
                    address: string;
                    city: string;
                    country_alpha2: string;
                    postal_code: string;
                };
                billing_iban: string
                | null;
                billing_language: "fr_FR" | "en_GB" | "de_DE";
                contacts: { url: string };
                created_at: string;
                delivery_address: {
                    address: string;
                    city: string;
                    country_alpha2: string;
                    postal_code: string;
                };
                emails: readonly string[];
                external_reference: string;
                first_name: string;
                id: number;
                last_name: string;
                ledger_account: { id: number }
                | null;
                mandates: { url: string };
                name: string;
                notes: string | null;
                payment_conditions:
                    | "upon_receipt"
                    | "custom"
                    | "7_days"
                    | "15_days"
                    | "30_days"
                    | "30_days_end_of_month"
                    | "45_days"
                    | "45_days_end_of_month"
                    | "60_days";
                phone: string;
                pro_account_mandates: { url: string };
                recipient: string;
                reference: string | null;
                updated_at: string;
            },
            GetIndividualCustomerError,
            PennylaneClient,
        >;
        updateCompanyCustomer: (
            id: string,
            body: UpdateCompanyCustomerBody,
        ) => Effect<
            {
                billing_address: {
                    address: string;
                    city: string;
                    country_alpha2: string;
                    postal_code: string;
                };
                billing_iban: string
                | null;
                billing_language: "fr_FR" | "en_GB" | "de_DE";
                contacts: { url: string };
                created_at: string;
                delivery_address: {
                    address: string;
                    city: string;
                    country_alpha2: string;
                    postal_code: string;
                };
                emails: readonly string[];
                external_reference: string;
                id: number;
                ledger_account: { id: number }
                | null;
                mandates: { url: string };
                name: string;
                notes: string | null;
                payment_conditions:
                    | "upon_receipt"
                    | "custom"
                    | "7_days"
                    | "15_days"
                    | "30_days"
                    | "30_days_end_of_month"
                    | "45_days"
                    | "45_days_end_of_month"
                    | "60_days";
                phone: string;
                pro_account_mandates: { url: string };
                recipient: string;
                reference: string | null;
                reg_no: string;
                updated_at: string;
                vat_number: string;
            },
            UpdateCompanyCustomerError,
            PennylaneClient,
        >;
        updateIndividualCustomer: (
            id: string,
            body: UpdateIndividualCustomerBody,
        ) => Effect<
            {
                billing_address: {
                    address: string;
                    city: string;
                    country_alpha2: string;
                    postal_code: string;
                };
                billing_iban: string
                | null;
                billing_language: "fr_FR" | "en_GB" | "de_DE";
                contacts: { url: string };
                created_at: string;
                delivery_address: {
                    address: string;
                    city: string;
                    country_alpha2: string;
                    postal_code: string;
                };
                emails: readonly string[];
                external_reference: string;
                first_name: string;
                id: number;
                last_name: string;
                ledger_account: { id: number }
                | null;
                mandates: { url: string };
                name: string;
                notes: string | null;
                payment_conditions:
                    | "upon_receipt"
                    | "custom"
                    | "7_days"
                    | "15_days"
                    | "30_days"
                    | "30_days_end_of_month"
                    | "45_days"
                    | "45_days_end_of_month"
                    | "60_days";
                phone: string;
                pro_account_mandates: { url: string };
                recipient: string;
                reference: string | null;
                updated_at: string;
            },
            UpdateIndividualCustomerError,
            PennylaneClient,
        >;
    } = ...

    Service containing methods for the "customers" endpoints.

    Type Declaration

    • categorizeCustomer: (
          id: string,
          body: CategorizeCustomerBody,
      ) => Effect<
          readonly {
              analytical_code: string
              | null;
              category_group: { id: number };
              created_at: string;
              id: number;
              label: string;
              updated_at: string;
              weight: string;
          }[],
          CategorizeCustomerError,
          PennylaneClient,
      >

      Updates the categories assigned to a customer. The sum of weights for each category group must equal 1.

    • createCompanyCustomer: (
          body: CreateCompanyCustomerBody,
      ) => Effect<
          {
              billing_address: {
                  address: string;
                  city: string;
                  country_alpha2: string;
                  postal_code: string;
              };
              billing_iban: string
              | null;
              billing_language: "fr_FR" | "en_GB" | "de_DE";
              contacts: { url: string };
              created_at: string;
              delivery_address: {
                  address: string;
                  city: string;
                  country_alpha2: string;
                  postal_code: string;
              };
              emails: readonly string[];
              external_reference: string;
              id: number;
              ledger_account: { id: number }
              | null;
              mandates: { url: string };
              name: string;
              notes: string | null;
              payment_conditions:
                  | "upon_receipt"
                  | "custom"
                  | "7_days"
                  | "15_days"
                  | "30_days"
                  | "30_days_end_of_month"
                  | "45_days"
                  | "45_days_end_of_month"
                  | "60_days";
              phone: string;
              pro_account_mandates: { url: string };
              recipient: string;
              reference: string | null;
              reg_no: string;
              updated_at: string;
              vat_number: string;
          },
          CreateCompanyCustomerError,
          PennylaneClient,
      >

      Creates a new company customer.

    • createIndividualCustomer: (
          body: CreateIndividualCustomerBody,
      ) => Effect<
          {
              billing_address: {
                  address: string;
                  city: string;
                  country_alpha2: string;
                  postal_code: string;
              };
              billing_iban: string
              | null;
              billing_language: "fr_FR" | "en_GB" | "de_DE";
              contacts: { url: string };
              created_at: string;
              delivery_address: {
                  address: string;
                  city: string;
                  country_alpha2: string;
                  postal_code: string;
              };
              emails: readonly string[];
              external_reference: string;
              first_name: string;
              id: number;
              last_name: string;
              ledger_account: { id: number }
              | null;
              mandates: { url: string };
              name: string;
              notes: string | null;
              payment_conditions:
                  | "upon_receipt"
                  | "custom"
                  | "7_days"
                  | "15_days"
                  | "30_days"
                  | "30_days_end_of_month"
                  | "45_days"
                  | "45_days_end_of_month"
                  | "60_days";
              phone: string;
              pro_account_mandates: { url: string };
              recipient: string;
              reference: string | null;
              updated_at: string;
          },
          CreateIndividualCustomerError,
          PennylaneClient,
      >

      Creates a new individual customer.

    • getCompanyCustomer: (
          id: string,
      ) => Effect<
          {
              billing_address: {
                  address: string;
                  city: string;
                  country_alpha2: string;
                  postal_code: string;
              };
              billing_iban: string
              | null;
              billing_language: "fr_FR" | "en_GB" | "de_DE";
              contacts: { url: string };
              created_at: string;
              delivery_address: {
                  address: string;
                  city: string;
                  country_alpha2: string;
                  postal_code: string;
              };
              emails: readonly string[];
              external_reference: string;
              id: number;
              ledger_account: { id: number }
              | null;
              mandates: { url: string };
              name: string;
              notes: string | null;
              payment_conditions:
                  | "upon_receipt"
                  | "custom"
                  | "7_days"
                  | "15_days"
                  | "30_days"
                  | "30_days_end_of_month"
                  | "45_days"
                  | "45_days_end_of_month"
                  | "60_days";
              phone: string;
              pro_account_mandates: { url: string };
              recipient: string;
              reference: string | null;
              reg_no: string;
              updated_at: string;
              vat_number: string;
          },
          GetCompanyCustomerError,
          PennylaneClient,
      >

      Retrieves a company customer by its unique identifier.

    • getCustomer: (
          id: string,
      ) => Effect<
          | {
              billing_address: {
                  address: string;
                  city: string;
                  country_alpha2: string;
                  postal_code: string;
              };
              billing_iban: string
              | null;
              billing_language: "fr_FR" | "en_GB" | "de_DE";
              contacts: { url: string };
              created_at: string;
              customer_type: "company";
              delivery_address: {
                  address: string;
                  city: string;
                  country_alpha2: string;
                  postal_code: string;
              };
              emails: readonly string[];
              external_reference: string;
              id: number;
              ledger_account: { id: number }
              | null;
              mandates: { url: string };
              name: string;
              notes: string | null;
              payment_conditions:
                  | "upon_receipt"
                  | "custom"
                  | "7_days"
                  | "15_days"
                  | "30_days"
                  | "30_days_end_of_month"
                  | "45_days"
                  | "45_days_end_of_month"
                  | "60_days";
              phone: string;
              pro_account_mandates: { url: string };
              recipient: string;
              reference: string | null;
              reg_no: string;
              updated_at: string;
              vat_number: string;
          }
          | {
              billing_address: {
                  address: string;
                  city: string;
                  country_alpha2: string;
                  postal_code: string;
              };
              billing_iban: string
              | null;
              billing_language: "fr_FR" | "en_GB" | "de_DE";
              contacts: { url: string };
              created_at: string;
              customer_type: "individual";
              delivery_address: {
                  address: string;
                  city: string;
                  country_alpha2: string;
                  postal_code: string;
              };
              emails: readonly string[];
              external_reference: string;
              first_name: string;
              id: number;
              last_name: string;
              ledger_account: { id: number }
              | null;
              mandates: { url: string };
              name: string;
              notes: string | null;
              payment_conditions:
                  | "upon_receipt"
                  | "custom"
                  | "7_days"
                  | "15_days"
                  | "30_days"
                  | "30_days_end_of_month"
                  | "45_days"
                  | "45_days_end_of_month"
                  | "60_days";
              phone: string;
              pro_account_mandates: { url: string };
              recipient: string;
              reference: string | null;
              updated_at: string;
          },
          GetCustomerError,
          PennylaneClient,
      >

      Retrieves a customer (company or individual) by its unique identifier.

    • getCustomerCategories: (
          customerId: string,
          params?: GetCustomerCategoriesQueryParams,
      ) => Effect<
          {
              has_more: boolean;
              items: readonly {
                  analytical_code: string
                  | null;
                  category_group: { id: number };
                  created_at: string;
                  id: number;
                  label: string;
                  updated_at: string;
                  weight: string;
              }[];
              next_cursor?: string
              | null;
          },
          GetCustomerCategoriesError,
          PennylaneClient,
      >

      Retrieves categories of a customer.

    • getCustomerContacts: (
          customerId: string,
          params?: GetCustomerContactsQueryParams,
      ) => Effect<
          {
              has_more: boolean;
              items: readonly {
                  created_at: string;
                  email: string;
                  first_name: string;
                  id: number;
                  last_name: string;
                  mobile_number: string;
                  role: string;
                  telephone_number: string;
                  updated_at: string;
              }[];
              next_cursor?: string
              | null;
          },
          GetCustomerContactsError,
          PennylaneClient,
      >

      Retrieves contacts of a customer.

    • getCustomers: (
          params?: GetCustomersQueryParams,
      ) => Effect<
          {
              has_more: boolean;
              items: readonly (
                  | {
                      billing_address: {
                          address: string;
                          city: string;
                          country_alpha2: string;
                          postal_code: string;
                      };
                      billing_iban: string
                      | null;
                      billing_language: "fr_FR" | "en_GB" | "de_DE";
                      contacts: { url: string };
                      created_at: string;
                      customer_type: "company";
                      delivery_address: {
                          address: string;
                          city: string;
                          country_alpha2: string;
                          postal_code: string;
                      };
                      emails: readonly string[];
                      external_reference: string;
                      id: number;
                      ledger_account: { id: number }
                      | null;
                      mandates: { url: string };
                      name: string;
                      notes: string | null;
                      payment_conditions:
                          | "upon_receipt"
                          | "custom"
                          | "7_days"
                          | "15_days"
                          | "30_days"
                          | "30_days_end_of_month"
                          | "45_days"
                          | "45_days_end_of_month"
                          | "60_days";
                      phone: string;
                      pro_account_mandates: { url: string };
                      recipient: string;
                      reference: string | null;
                      reg_no: string;
                      updated_at: string;
                      vat_number: string;
                  }
                  | {
                      billing_address: {
                          address: string;
                          city: string;
                          country_alpha2: string;
                          postal_code: string;
                      };
                      billing_iban: string
                      | null;
                      billing_language: "fr_FR" | "en_GB" | "de_DE";
                      contacts: { url: string };
                      created_at: string;
                      customer_type: "individual";
                      delivery_address: {
                          address: string;
                          city: string;
                          country_alpha2: string;
                          postal_code: string;
                      };
                      emails: readonly string[];
                      external_reference: string;
                      first_name: string;
                      id: number;
                      last_name: string;
                      ledger_account: { id: number }
                      | null;
                      mandates: { url: string };
                      name: string;
                      notes: string | null;
                      payment_conditions:
                          | "upon_receipt"
                          | "custom"
                          | "7_days"
                          | "15_days"
                          | "30_days"
                          | "30_days_end_of_month"
                          | "45_days"
                          | "45_days_end_of_month"
                          | "60_days";
                      phone: string;
                      pro_account_mandates: { url: string };
                      recipient: string;
                      reference: string | null;
                      updated_at: string;
                  }
              )[];
              next_cursor?: string
              | null;
          },
          GetCustomersError,
          PennylaneClient,
      >

      Retrieves a list of customers (company and individual).

    • getIndividualCustomer: (
          id: string,
      ) => Effect<
          {
              billing_address: {
                  address: string;
                  city: string;
                  country_alpha2: string;
                  postal_code: string;
              };
              billing_iban: string
              | null;
              billing_language: "fr_FR" | "en_GB" | "de_DE";
              contacts: { url: string };
              created_at: string;
              delivery_address: {
                  address: string;
                  city: string;
                  country_alpha2: string;
                  postal_code: string;
              };
              emails: readonly string[];
              external_reference: string;
              first_name: string;
              id: number;
              last_name: string;
              ledger_account: { id: number }
              | null;
              mandates: { url: string };
              name: string;
              notes: string | null;
              payment_conditions:
                  | "upon_receipt"
                  | "custom"
                  | "7_days"
                  | "15_days"
                  | "30_days"
                  | "30_days_end_of_month"
                  | "45_days"
                  | "45_days_end_of_month"
                  | "60_days";
              phone: string;
              pro_account_mandates: { url: string };
              recipient: string;
              reference: string | null;
              updated_at: string;
          },
          GetIndividualCustomerError,
          PennylaneClient,
      >

      Retrieves an individual customer by its unique identifier.

    • updateCompanyCustomer: (
          id: string,
          body: UpdateCompanyCustomerBody,
      ) => Effect<
          {
              billing_address: {
                  address: string;
                  city: string;
                  country_alpha2: string;
                  postal_code: string;
              };
              billing_iban: string
              | null;
              billing_language: "fr_FR" | "en_GB" | "de_DE";
              contacts: { url: string };
              created_at: string;
              delivery_address: {
                  address: string;
                  city: string;
                  country_alpha2: string;
                  postal_code: string;
              };
              emails: readonly string[];
              external_reference: string;
              id: number;
              ledger_account: { id: number }
              | null;
              mandates: { url: string };
              name: string;
              notes: string | null;
              payment_conditions:
                  | "upon_receipt"
                  | "custom"
                  | "7_days"
                  | "15_days"
                  | "30_days"
                  | "30_days_end_of_month"
                  | "45_days"
                  | "45_days_end_of_month"
                  | "60_days";
              phone: string;
              pro_account_mandates: { url: string };
              recipient: string;
              reference: string | null;
              reg_no: string;
              updated_at: string;
              vat_number: string;
          },
          UpdateCompanyCustomerError,
          PennylaneClient,
      >

      Updates an existing company customer.

    • updateIndividualCustomer: (
          id: string,
          body: UpdateIndividualCustomerBody,
      ) => Effect<
          {
              billing_address: {
                  address: string;
                  city: string;
                  country_alpha2: string;
                  postal_code: string;
              };
              billing_iban: string
              | null;
              billing_language: "fr_FR" | "en_GB" | "de_DE";
              contacts: { url: string };
              created_at: string;
              delivery_address: {
                  address: string;
                  city: string;
                  country_alpha2: string;
                  postal_code: string;
              };
              emails: readonly string[];
              external_reference: string;
              first_name: string;
              id: number;
              last_name: string;
              ledger_account: { id: number }
              | null;
              mandates: { url: string };
              name: string;
              notes: string | null;
              payment_conditions:
                  | "upon_receipt"
                  | "custom"
                  | "7_days"
                  | "15_days"
                  | "30_days"
                  | "30_days_end_of_month"
                  | "45_days"
                  | "45_days_end_of_month"
                  | "60_days";
              phone: string;
              pro_account_mandates: { url: string };
              recipient: string;
              reference: string | null;
              updated_at: string;
          },
          UpdateIndividualCustomerError,
          PennylaneClient,
      >

      Updates an existing individual customer.