Interface LoyaltyCustomerMatchServiceGrpc.AsyncService (0.3.0)

public static interface LoyaltyCustomerMatchServiceGrpc.AsyncService

Manages customer loyalty program memberships for merchants. This service allows all merchants, including non-advertisers, to share their first-party customer data of loyalty program members. Google uses this data to personalize organic free listing shopping experiences, in compliance with the Merchant Center Terms of Service. The service follows a non-standard, imperative pattern, exposing a single ManageLoyaltyCustomerMatch method rather than conventional resource identifiers and CRUD operations. This design protects user privacy by preventing the discovery of a customer's presence or membership status through standard GET or LIST methods.

Methods

manageLoyaltyCustomerMatch(ManageLoyaltyCustomerMatchRequest request, StreamObserver<ManageLoyaltyCustomerMatchResponse> responseObserver)

public default void manageLoyaltyCustomerMatch(ManageLoyaltyCustomerMatchRequest request, StreamObserver<ManageLoyaltyCustomerMatchResponse> responseObserver)

Manages (inserts, updates, or removes) a customer's loyalty tier information. This method serves as a single interface for all changes to a customer's loyalty status. The specific action (insert, update, or remove) is determined by the current state of the merchant-to-customer association and the loyalty_tier value provided in the request. Operation Logic:

  • Upsert (Insert/Update): Providing any valid tier other than NON_MEMBER will associate the customer with that tier. If an association already exists, it will be updated; otherwise, a new one will be created.
  • Removal: Setting loyalty_tier to NON_MEMBER will remove any existing loyalty association for the customer. Privacy Note: To protect user privacy, this method consistently returns a 200 OK status with a default LoyaltyCustomer response if the customer's identifier cannot be matched to a Google account or if the user has not opted into loyalty personalization.
Parameters
Name Description
request ManageLoyaltyCustomerMatchRequest
responseObserver io.grpc.stub.StreamObserver<ManageLoyaltyCustomerMatchResponse>