generateCustomerId method

Future<GenerateCustomerIdResult> generateCustomerId()

Generate a new customer ID from the server.

Customer IDs are now generated server-side with cryptographic signing. This replaces the previous client-side generation approach.

Implementation

Future<GenerateCustomerIdResult> generateCustomerId() async {
  final response = await _post(
    '/api/customers/generate',
    json.encode({'clientId': _clientId}),
  );

  if (response.statusCode != 200) {
    final error = json.decode(response.body) as Map<String, dynamic>;
    throw Exception(error['error'] ?? 'Failed to generate customer ID');
  }

  return GenerateCustomerIdResult.fromJson(
    json.decode(response.body) as Map<String, dynamic>,
  );
}