REST Resource: inventory.partners.merchants

資源:Merchant

集結網站平台上商家的相關資訊。

JSON 表示法
{
  "name": string,
  "merchantName": string,
  "telephone": string,
  "url": string,
  "geo": {
    object (GeoCoordinates)
  },
  "category": string,
  "numBookings30d": string,
  "taxRateBasisPoints": integer,
  "taxRate": {
    object (TaxRate)
  },
  "paymentRestrictions": {
    object (PaymentRestrictions)
  },
  "paymentOption": [
    {
      object (PaymentOption)
    }
  ],
  "paymentProcessorConfig": {
    object (PaymentProcessorConfig)
  },
  "tokenizationConfig": {
    object (TokenizationConfig)
  },
  "terms": {
    object (Terms)
  },
  "brandId": string,
  "matchingHints": {
    object (MerchantMatchingHints)
  },
  "serviceAttribute": [
    {
      object (ServiceAttribute)
    }
  ],
  "actionLink": [
    {
      object (ActionLink)
    }
  ],
  "waitlistAdvisement": {
    object (Advisement)
  }
}
欄位
name

string

商家資源名稱,格式為 partners/{partner_id}/merchants/{merchantId}

merchantName

string

系統會使用 merchantName、telephone、url 和 geo 來輔助比對合作夥伴清單與 Google 地圖上的現有商家;這項資訊不會顯示。

此為商家名稱。

telephone

string

商家的公開電話號碼 (包含所在國家/地區代碼,例如 +14567891234)。

url

string

商家公開網站的網址。

geo

object (GeoCoordinates)

商家的地理資訊,包括經緯度和地址。

category

string

集結網站平台中的商家類別。

numBookings30d
(deprecated)

string (int64 format)

這個欄位現已淘汰。

taxRateBasisPoints
(deprecated)

integer (uint32 format)

商家的稅率,以基準點 (一個百分點的百分之一) 表示。舉例來說,如果稅率是 7.5%,這個欄位應設為 750。

如果這個欄位未設定或設為 0,則此商家就其提供的任何服務向使用者收取的總價格就是 Service.price 指定的實際價格。系統會假設服務價格為免稅或已包含適用稅金。系統不會在獨立的明細項目中向使用者顯示稅金。

如果將這個欄位設定為任何非零值,則此商家就其提供的任何服務向使用者收取的總價格,將包含服務價格加上以此處提供的稅率計算的稅金。最小貨幣單位的小數 (例如 1 美分後面的小數) 會採用銀行家捨入法。系統會另以獨立的明細項目向消費者顯示稅金。

這個欄位現已淘汰,請改用 taxRate。

taxRate

object (TaxRate)

此為商家稅率。這個欄位 (如果使用的話) 會覆寫已淘汰的 taxRateBasisPoints 欄位。空白訊息 (即 TaxRate { }) 會將套用的稅率重設為零。

paymentRestrictions

object (PaymentRestrictions)

針對這個商家接受的付款方式的相關限制。如未設定這個欄位,系統會假設沒有任何限制。

paymentOption[]

object (PaymentOption)

此為這個商家提供的付款方式;這個商家提供的服務將可個別限制他們允許的付款方式。

paymentProcessorConfig
(deprecated)

object (PaymentProcessorConfig)

提供代碼化技術的付款處理方的設定 (如果商家能夠支援的話)。

tokenizationConfig

object (TokenizationConfig)

提供代碼化技術的付款處理方的設定 (如果商家能夠支援的話)。

terms

object (Terms)

如果使用者是「透過 Google 預訂」功能來預訂服務,則系統會向其顯示這項相關商家的《條款及細則》。除上述內容外,系統一律會向使用者顯示集結網站合作夥伴的條款及細則,請勿在這裡提供。

brandId

string

此為用來識別消費性品牌的隱晦字串,在顯示合作夥伴屬性時使用。這個欄位可讓擁有多個消費性品牌的合作夥伴,在同一份動態饋給內為所有品牌提供商家。

品牌是由多個向消費者顯示的元素 (例如名稱、標誌、服務條款和隱私權政策) 組成。

如果只有一個消費性合作夥伴品牌,就不需要設定這個欄位,可予以忽略。

請根據合作夥伴的情況決定:

合作夥伴沒有多個消費性品牌。--> 忽略此欄位

合作夥伴已設定多個品牌。

  If this field is set
    --> Associated consumer-facing brand attribution is used

  If this field is unset or the empty string
    --> Default consumer-facing brand attribution is used

注意事項:大多數合作夥伴都不需要設定這個欄位。如果合作夥伴想要使用這個欄位,請務必先聯絡我們設定個別品牌 (包括預設品牌)。

matchingHints

object (MerchantMatchingHints)

協助 Google 比對商家與地圖上現有地點的提示。注意:大多數合作夥伴都不需要設定這個欄位,因為 Google 會使用上述欄位中提供的資訊來比對商家和 Google 地圖上的地點。(選用)

serviceAttribute[]

object (ServiceAttribute)

任何服務屬性的定義,用於描述此商家提供的服務。(選用)

waitlistAdvisement

object (Advisement)

選用設定。特定商家的一般建議:使用者透過「透過 Google 預訂」加入等候名單的使用者。建議中的個別文字欄位長度上限為 100 個位元組。

PaymentRestrictions

此為這個商家所接受付款方式的相關限制。

JSON 表示法
{
  "creditCardRestrictions": {
    object (CreditCardRestrictions)
  }
}
欄位
creditCardRestrictions

object (CreditCardRestrictions)

針對這個商家接受的信用卡的相關限制。如未設定此欄位,系統會假設商家接受所有信用卡。請注意,CreditCardType 支援的信用卡清單會隨著時間增加,也就是說,如果將這個欄位留空,系統日後會需要調整設定。

CreditCardRestrictions

此為這個商家所接受信用卡類型的相關限制。

JSON 表示法
{
  "creditCardType": [
    enum (CreditCardType)
  ]
}
欄位
creditCardType[]

enum (CreditCardType)

受支援信用卡的清單。如果留空,則不支援任何信用卡。

CreditCardType

信用卡的類型。

列舉
CREDIT_CARD_TYPE_UNSPECIFIED 未使用。
VISA Visa 信用卡。
MASTERCARD Mastercard 信用卡。
AMERICAN_EXPRESS 美國運通卡。
DISCOVER Discover 信用卡。
JCB JCB 信用卡。

PaymentOption

用來支付商家服務費用的付款方式。付款方式可由多個商家共用 (例如隸屬於同一個連鎖品牌的商家)。

JSON 表示法
{
  "paymentOptionId": string,
  "name": string,
  "description": string,
  "price": {
    object (Price)
  },
  "taxRate": {
    object (TaxRate)
  },
  "paymentOptionType": enum (PaymentOptionType),
  "sessionCount": string,
  "purchaseInterval": {
    object (TimeRange)
  },
  "validInterval": {
    object (TimeRange)
  },
  "validDuration": string,
  "activationType": enum (ActivationType),
  "userRestriction": {
    object (UserPurchaseRestriction)
  }
}
欄位
paymentOptionId

string

此 ID 用來識別這個付款方式。

在整個集結網站中通用。您可以針對多個商家重複使用同一個 ID 值,讓消費者以相同的付款方式向這些商家付費。

如果針對多個商家重複使用同一個 ID,則只要為其中一個商家更新付款方式的任何值,其他商家中所有使用相同 ID 的付款方式就會一併更新。因此,最佳做法是讓所有付款方式共用相同的 ID,並一律更新為相同的值,以避免發生任何非決定性的行為。

name

string

此為付款方式名稱,使用者可以看見這項內容。

description

string

此為付款方式相關說明,使用者可以看見這項內容。

price

object (Price)

付款方式的價格。

taxRate

object (TaxRate)

此為這個付款方式的稅率。這個欄位 (如果使用的話) 會覆寫商家或服務中的 taxRate 欄位。空白訊息 (即 TaxRate { }) 會將套用的稅率重設為零。

paymentOptionType

enum (PaymentOptionType)

此為這個付款方式的類型。單次使用即用

sessionCount

string (int64 format)

用來指定這個付款方式可用於幾個工作階段。僅適用於多工作階段 / 包,值應大於 1。

purchaseInterval

object (TimeRange)

可在這個期間內購買付款方式。

validInterval

object (TimeRange)

付款方式可在這個期間內 (例如 2017 年 1 月份限定優惠價) 使用。這個欄位 (如有) 會覆寫 validDuration 和 activateType。

validDuration

string (Duration format)

此為付款方式的有效期間 (例如 30 天會員效期)。

持續時間以秒為單位,最多 9 個小數位數,結尾為「s」,例如:"3.5s"

activationType

enum (ActivationType)

定義如何判定這個付款方式的生效日期。

userRestriction

object (UserPurchaseRestriction)

用來限定哪些消費者有資格用此付款方式購物,可限制只向部分消費者顯示含促銷優惠的付款方式。如未設定,則所有使用者都符合資格。

PaymentOptionType

此為付款方式類型。

列舉
PAYMENT_OPTION_TYPE_UNSPECIFIED 未使用。
PAYMENT_OPTION_SINGLE_USE 付款方式只能使用一次。
PAYMENT_OPTION_MULTI_USE 工作階段計數大於 0 時可用的付款方式。
PAYMENT_OPTION_UNLIMITED 可在付款方式的有效時間範圍內使用此方式付費 (工作階段計數不適用)。

ActivationType

用來定義如何判定開始生效日期。

列舉
ACTIVATION_TYPE_UNSPECIFIED 未使用。
ACTIVATION_ON_PURCHASE 有效期自購買時開始算起。
ACTIVATION_ON_FIRST_USE 有效期自首次使用該付款方式開始算起。

UserPurchaseRestriction

用來限定哪些使用者有資格用此付款方式購物。

JSON 表示法
{
  "newToMerchant": boolean,
  "newToPaymentOption": boolean
}
欄位
newToMerchant

boolean

只有從未向同一個商家購物的使用者,才能使用這個付款方式。

newToPaymentOption

boolean

只有先前從未購買過相同付款方式的使用者,才能使用此付款方式。

PaymentProcessorConfig

此為付款處理方設定,為個別商家分別設置。

JSON 表示法
{
  "processor": enum (Processor),
  "publicKey": string,
  "version": string
}
欄位
processor

enum (Processor)

定義這項設定適用的付款處理方合作夥伴。

publicKey

string

這個金鑰用來識別採用此付款處理方服務的商家。

Stripe 相關說明請參閱:https://stripe.com/docs/dashboard#api-keys;Braintree 相關說明請參閱:https://articles.braintreepayments.com/control-panel/important-gateway-credentials

version

string

連同付款要求一併傳送給付款處理方的 API 版本號碼。

處理器

定義特定付款處理方合作夥伴。

列舉
PROCESSOR_UNSPECIFIED 未使用
PROCESSOR_STRIPE 透過 Stripe 付款的相關設定。
PROCESSOR_BRAINTREE 透過 Braintree 付款的相關設定。

TokenizationConfig

付款處理方的代碼化技術設定,為個別商家分別設置。

JSON 表示法
{
  "tokenizationParameter": {
    string: string,
    ...
  },
  "billingInformationFormat": enum (BillingInformationFormat)
}
欄位
tokenizationParameter

map (key: string, value: string)

代碼化技術的設定通常會有一個 tokenizationParameter,其金鑰為「gateway」,其值則是處理方的名稱。

其餘參數則視處理方而異,若想進一步瞭解相關詳情,請參閱 Google Pay 的說明文件。

Braintree 範例:tokenizationParameter { key: "gateway" value: "braintree" } tokenizationParameter { key: "braintree:apiVersion" value: "v1" } tokenizationParameter { key: "braintree:sdkVersion" value: "2.30.0" } tokenizationParameter { key: "braintree:merchantId" value: "abcdef" } tokenizationParameter { key: "braintree:clientKey" value: "production_xxx_yyy" }

Stripe 範例:tokenizationParameter { key: "gateway" value: "stripe" } tokenizationParameter { key: "stripe:version" value: "2018-02-28" } tokenizationParameter { key: "stripe:publishableKey" value: "pk_1234" }

Adyen 範例:tokenizationParameter { key: "gateway" value: "adyen" } tokenizationParameter { key: "gatewayMerchantId" value: "yourId" }

這個物件中包含 "key": value 組合的清單,例如:{ "name": "wrench", "mass": "1.3kg", "count": "3" }.

billingInformationFormat

enum (BillingInformationFormat)

在付款代碼中納入消費者在 Google Pay 中為付款方式提供的帳單資訊 (請見上方說明)。將這個欄位留白等同於指定 MIN。

BillingInformationFormat

指明消費者需要提供的帳單地址資訊詳細程度,以及要在代碼中納入多細的帳單地址資訊。此列舉值與 Google Pay API 中的參數相同 (詳情請參閱 https://developers.google.com/pay/api/web/reference/object#BillingAddressParameters)

列舉
BILLING_INFORMATION_FORMAT_UNSPECIFIED 未指定,由系統預設為 MIN。
MIN 姓名、國家/地區代碼和郵遞區號 (Google Pay 預設設定)。
FULL 姓名、街道地址、縣市、地區、國家/地區代碼與郵遞區號

條款

向消費者顯示的一組規則與規範,必須遵守才能經由「透過 Google 預訂」進行預訂。

JSON 表示法
{
  "url": string,
  "text": string,
  "localizedText": {
    object (Text)
  }
}
欄位
url

string

(選用) 條款及細則的網址。

text

string

此為要向消費者顯示的文字內容。請為新的整合使用下方的 localizedText。

localizedText

object (Text)

要向使用者顯示的本地化文字。

MerchantMatchingHints

此為提示,用來輔助 Google 比對商家與 Google 地圖上的地點。

JSON 表示法
{
  "placeId": string
}
欄位
placeId

string

Google 地方資訊資料庫和 Google 地圖上特定地點的地點 ID。請參閱 https://developers.google.com/places/web-service/place-id,進一步瞭解地點 ID。

ServiceAttribute

服務屬性是合作夥伴定義的類別,用來說明「商家」提供的「服務」。舉例來說,銀行可以定義「帳戶類型」服務屬性,可能的值則是「個人」和「公司」;美髮沙龍則可以定義「服務類型」服務屬性,可能的值為「剪髮」、「染髮」和「造型」。

JSON 表示法
{
  "attributeId": string,
  "attributeName": string,
  "value": [
    {
      object (Value)
    }
  ]
}
欄位
attributeId

string

專屬 ID,可用來識別相同商家的其他服務屬性,例如「account-type」。

attributeName

string

使用者看到這項屬性的名稱,例如「帳戶類型」。

value[]

object (Value)

這個服務屬性的所有可能值。

代表特定服務屬性的可能值。

JSON 表示法
{
  "valueId": string,
  "valueName": string
}
欄位
valueId

string

這個 ID 可用來識別這個服務屬性在眾多項目中的不重複值,例如「personal」。

valueName

string

使用者看到的值名稱,例如「個人」。

諮詢服務

當使用者透過「透過 Google 預訂」功能預訂時,系統會顯示建議。

JSON 表示法
{
  "text": {
    object (Text)
  }
}
欄位
text

object (Text)

在使用者透過「透過 Google 預訂」進行預訂時,向使用者顯示的自訂訊息。

方法

create

建立並傳回由指定集結網站管理的新 Merchant

delete

刪除由指定集結網站管理的現有 Merchant

getStatus

取得 MerchantMerchantStatus

patch

更新並傳回由指定集結網站管理的現有 Merchant