Trong chiến lược quảng cáo hiện đại, việc theo dõi và tối ưu hóa dữ liệu bán hàng tại cửa hàng thực tế đóng vai trò quan trọng. Google Ads cung cấp tính năng tải dữ liệu giao dịch từ cửa hàng lên hệ thống, giúp bạn có thể đo lường chính xác hiệu quả quảng cáo và khả năng chuyển đổi từ trực tuyến sang ngoại tuyến. Tuy nhiên, việc thiết lập và sử dụng tính năng này yêu cầu bạn phải thực hiện đúng quy trình và tuân thủ các điều kiện cần thiết để đảm bảo dữ liệu được xử lý chính xác. Bài viết này sẽ hướng dẫn bạn từng bước cách tải lượt bán hàng tại cửa hàng thực tế lên Google Ads một cách hiệu quả nhất.
Lưu ý quan trọng: Tính năng này chỉ khả dụng cho các tài khoản nằm trong danh sách được phép sử dụng. Để truy cập, bạn cần liên hệ với đại diện Google của mình để được cấp quyền.
API Google Ads hỗ trợ việc tải dữ liệu bán hàng tại cửa hàng thực tế lên dưới dạng lượt chuyển đổi, cho phép bạn nhập trực tiếp các giao dịch ngoại tuyến vào Google Ads hoặc thông qua đối tác thứ ba. Bằng cách đồng bộ dữ liệu giao dịch từ hệ thống POS (point-of-sale) hoặc cơ sở dữ liệu khách hàng, bạn có thể đo lường chính xác hiệu quả của các chiến dịch quảng cáo trong việc thúc đẩy hành vi mua hàng tại cửa hàng.
Hãy tham khảo Trung tâm trợ giúp của Google Ads để tìm hiểu chi tiết về cách sử dụng dữ liệu lượt bán hàng tại cửa hàng thực tế, và theo dõi danh sách kiểm tra để nắm rõ các yêu cầu cần thiết để triển khai tính năng này một cách hiệu quả.
Lưu ý quan trọng: Để biết hướng dẫn chi tiết về cách thiết lập theo dõi lượt chuyển đổi và các điều kiện cần thiết trước khi tải lên dữ liệu, hãy tham khảo hướng dẫn cài đặt theo dõi chuyển đổi của Google Ads. Đảm bảo rằng tính năng theo dõi chuyển đổi đã được kích hoạt trước khi bạn cố gắng tải dữ liệu chuyển đổi lên hệ thống.
Thiết lập tài khoản Google Ads cho lượt bán hàng tại cửa hàng thực tế
Trước tiên, hãy kiểm tra xem tài khoản của bạn có đủ điều kiện không. Nếu đủ điều kiện, làm việc với đại diện của Google để tài khoản của bạn được thêm vào danh sách cho phép. Sau đó, bạn cần tạo một hành động chuyển đổi bằng cách tuân theo hướng dẫn trong bài viết “Thiết lập tài khoản Google Ads cho doanh số bán hàng tại cửa hàng thực tế.”
Bạn chỉ có thể tạo các hành động chuyển đổi liên quan đến lượt bán hàng tại cửa hàng thực tế thông qua giao diện web của Google Ads. Khi truy cập các hành động chuyển đổi qua API Google Ads, bạn sẽ nhận được một đối tượng ConversionAction với thuộc tính type là STORE_SALES.
Loại hành động chuyển đổi này có thể dựa trên dữ liệu giao dịch của bên thứ nhất hoặc từ các đối tác thứ ba, bao gồm cả các giao dịch mua hàng tại cửa hàng qua thẻ từ các mạng thanh toán.
Tạo biến tùy chỉnh
Bạn có thể thiết lập các biến tùy chỉnh cho hành động chuyển đổi lượt bán hàng tại cửa hàng thực tế, cho phép tải dữ liệu giao dịch ngoại tuyến thông qua các phương thức thanh toán tùy chỉnh với các giá trị biến đã được xác định trước. Điều này giúp bạn có khả năng theo dõi chi tiết hơn các chuyển đổi từ trực tuyến đến ngoại tuyến, đồng thời đánh giá ROI của chiến dịch trên những khía cạnh quan trọng đối với doanh nghiệp.
Lưu ý quan trọng: Để kích hoạt tính năng này, bạn cần thiết lập tài khoản Google Ads phù hợp cho việc đo lường lượt bán hàng tại cửa hàng thực tế. Liên hệ với đại diện bán hàng của Google để được hỗ trợ chi tiết.
Bạn cần tạo biến tùy chỉnh cho hành động chuyển đổi lượt bán hàng tại cửa hàng thực tế, cũng như xác định giá trị biến tương ứng trước khi tải lên qua giao diện web của Google Ads. Mỗi giao dịch chỉ có thể gắn một giá trị biến tùy chỉnh, nếu không sẽ dẫn đến báo cáo không chính xác.
Khi tải dữ liệu bán hàng tại cửa hàng thực tế thông qua API Google Ads, bạn cần chỉ định biến tùy chỉnh trong trường custom_key của StoreSalesMetadata, và cung cấp giá trị biến tương ứng trong TransactionAttribute.
Các lỗi API biến tùy chỉnh có thể gặp phải bao gồm:
- CUSTOM_KEY_DISABLED
- CUSTOM_KEY_NOT_PREDEFINED
- CUSTOM_KEY_NOT_SET
Quy trình tải dữ liệu bán hàng tại cửa hàng thực tế
Sau khi đã tạo hành động chuyển đổi, bạn có thể bắt đầu tải dữ liệu bán hàng lên hệ thống bằng cách sử dụng giao diện web hoặc API. Các bước cụ thể bao gồm:
- Đặt giá trị trường
customer_idtrong yêu cầu của OfflineUserDataJobService, với mã khách hàng của tài khoản Google Ads liên quan đến lượt chuyển đổi. - Xác định bạn là bên thứ nhất hay bên thứ ba. Nếu bạn có quan hệ đối tác với Google liên quan đến bán hàng tại cửa hàng thực tế, bạn sẽ là bên thứ ba. Nếu không, bạn là bên thứ nhất.
- Tạo một công việc OfflineUserDataJob. Nếu bạn là bên thứ ba, chọn loại công việc là
STORE_SALES_UPLOAD_THIRD_PARTY, nếu không, chọnSTORE_SALES_UPLOAD_FIRST_PARTY. Chỉ điền vào trường StoreSalesMetadata.third_party_metadata nếu đây là công việc của bên thứ ba. - Thêm các giao dịch bán hàng tại cửa hàng thực tế vào công việc. Liên kết các giao dịch này với hành động chuyển đổi bằng cách chuyển tên tài nguyên hành động và lưu trữ các giao dịch vào một đối tượng UserData, sau đó thêm vào công việc OfflineUserDataJob thông qua OfflineUserDataJobService.
Kể từ phiên bản 15 của API Google Ads, bạn nên điền vào trườngconsentcủa đối tượng UserData. Dữ liệu bán hàng tại cửa hàng thực tế cần kèm theo giá trị sự đồng ý của người dùng đối với quảng cáo dữ liệu và cá nhân hóa quảng cáo, đặc biệt là người dùng tại khu vực kinh tế châu Âu (EEA). Chỉ những dữ liệu đã được người dùng đồng ý mới có thể sử dụng cho tính năng So khớp khách hàng. - Chạy công việc không đồng bộ bằng cách gọi
RunOfflineUserDataJob. Trạng thái của công việc sẽ chuyển từPENDINGsangRUNNINGkhi quá trình bắt đầu. - Các công việc liên quan đến dữ liệu ngoại tuyến có thể mất đến 24 giờ để hoàn tất. Bạn có thể kiểm tra trạng thái công việc thường xuyên thông qua
GoogleAdsService.SearchStream. Công việc sẽ hoàn tất khi trạng thái của nó chuyển thànhSUCCESShoặcFAILED.
Yêu cầu
Khi thêm một đối tượng UserData vào OfflineUserDataJob, bạn cần tuân thủ một số yêu cầu cụ thể để tránh lỗi và đảm bảo quá trình tải dữ liệu diễn ra suôn sẻ.
Để tránh lỗi OfflineUserDataJobError.INVALID_CONVERSION_ACTION, điều kiện sau cần được đáp ứng:
- Conversion_action phải tham chiếu đến ConversionAction có trạng thái ENABLED.
- ConversionAction phải thuộc loại STORE_SALES.
- ConversionAction phải tồn tại trong tài khoản Google Ads của khách hàng liên quan đến lượt nhấp.
Giới hạn khi tải dữ liệu giao dịch bán hàng tại cửa hàng thực tế lên:
- Mỗi yêu cầu AddOfflineUserDataJobOperationsRequest có thể chứa tối đa 100.000 giá trị nhận dạng trong các đối tượng UserData.
- Mặc dù không có giới hạn về số lượng thao tác bạn có thể thêm vào một công việc, để đảm bảo quá trình xử lý tối ưu, bạn nên giới hạn tối đa 10.000 thao tác trong mỗi lần gọi OfflineUserDataJobService.AddOfflineUserDataJobOperations và tối đa 1.000.000 thao tác cho mỗi công việc.
- Tải lên công việc với số lượng giao dịch không đủ có thể dẫn đến thất bại với lỗi OfflineUserDataJobFailureReason.INSUFFICIENT_MATCHED_TRANSACTIONS. Để tăng khả năng thành công, bạn nên tải lên ít nhất vài trăm giao dịch.
Điều kiện bổ sung cần tuân thủ:
- Tại thời điểm người dùng nhấp vào, tính năng theo dõi chuyển đổi phải được bật trong tài khoản Google Ads liên quan đến lượt nhấp.
- Transaction_amount_micros phải có giá trị lớn hơn 0.
- Transaction_date_time có thể chỉ định múi giờ tùy chọn theo định dạng yyyy-mm-dd HH:mm
+|-HH
. Ví dụ: 2022-01-01 19:32:45-05:00. Múi giờ không nhất thiết phải khớp với múi giờ của tài khoản mà phải phản ánh đúng thời gian diễn ra giao dịch. Nếu không cung cấp múi giờ, hệ thống sẽ tự động sử dụng múi giờ của tài khoản.
- Các dữ liệu cá nhân như email, số điện thoại và tên phải được chuẩn hóa và băm bằng thuật toán SHA-256 trước khi tải lên.
Ví dụ về mã
Dưới đây là ví dụ sử dụng Java để minh họa quá trình tải dữ liệu bán hàng tại cửa hàng thực tế lên Google Ads thông qua API.
// Copyright 2020 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// You may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// https://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.package com.google.ads.googleads.examples.remarketing;
import com.google.ads.googleads.lib.GoogleAdsClient;
import com.google.ads.googleads.v17.common.Consent;
import com.google.ads.googleads.v17.common.OfflineUserAddressInfo;
import com.google.ads.googleads.v17.common.StoreSalesMetadata;
import com.google.ads.googleads.v17.enums.ConsentStatusEnum.ConsentStatus;
import com.google.ads.googleads.v17.enums.OfflineUserDataJobStatusEnum.OfflineUserDataJobStatus;
import com.google.ads.googleads.v17.enums.OfflineUserDataJobTypeEnum.OfflineUserDataJobType;
import com.google.ads.googleads.v17.resources.OfflineUserDataJob;
import com.google.ads.googleads.v17.services.OfflineUserDataJobServiceClient;
import com.google.ads.googleads.v17.utils.ErrorUtils;
import java.security.MessageDigest;
import java.util.ArrayList;
import java.util.List;
/**
* Tải dữ liệu bán hàng tại cửa hàng thực tế lên Google Ads thông qua API.
*
* Chức năng này chỉ khả dụng cho các tài khoản có trong danh sách cho phép.
* Xem thêm tại https://support.google.com/google-ads/answer/7620302.
*/
public class UploadStoreSalesTransactions {
public static void main(String[] args) {
// Tạo Google Ads Client từ tệp cấu hình.
GoogleAdsClient googleAdsClient = GoogleAdsClient.newBuilder().fromPropertiesFile().build();
// Tạo đối tượng công việc để tải dữ liệu bán hàng.
String offlineUserDataJobResourceName = createOfflineUserDataJob(googleAdsClient, 123456L);
// Thêm giao dịch bán hàng vào công việc.
addTransactionsToOfflineUserDataJob(googleAdsClient, offlineUserDataJobResourceName);
// Chạy công việc tải dữ liệu.
runOfflineUserDataJob(googleAdsClient, offlineUserDataJobResourceName);
}
// Tạo công việc tải dữ liệu bán hàng
private static String createOfflineUserDataJob(GoogleAdsClient client, long customerId) {
// Logic để tạo công việc OfflineUserDataJob.
return “offlineUserDataJobResourceName”;
}
// Thêm các giao dịch bán hàng vào công việc
private static void addTransactionsToOfflineUserDataJob(GoogleAdsClient client, String jobName) {
// Logic để thêm giao dịch bán hàng vào công việc.
}
// Chạy công việc tải dữ liệu không đồng bộ
private static void runOfflineUserDataJob(GoogleAdsClient client, String jobName) {
// Logic để chạy công việc.
}
}
Việc theo dõi và tải dữ liệu lượt bán hàng tại cửa hàng thực tế lên Google Ads không chỉ giúp bạn hiểu rõ hơn về hiệu quả chiến dịch quảng cáo mà còn hỗ trợ tối ưu hóa khả năng chuyển đổi từ trực tuyến sang ngoại tuyến. Bằng cách thực hiện theo đúng quy trình và lưu ý các điều kiện quan trọng, bạn có thể khai thác tối đa tiềm năng từ quảng cáo của mình. Đừng quên liên hệ với đại diện của Google để được hỗ trợ thêm nếu cần quyền truy cập hoặc gặp khó khăn trong quá trình triển khai.
