REST Resource: externaltransactions

แหล่งข้อมูล: ExternalTransaction

รายละเอียดของธุรกรรมภายนอก

การแสดง JSON
{
  "packageName": string,
  "externalTransactionId": string,
  "originalPreTaxAmount": {
    object (Price)
  },
  "originalTaxAmount": {
    object (Price)
  },
  "currentPreTaxAmount": {
    object (Price)
  },
  "currentTaxAmount": {
    object (Price)
  },
  "testPurchase": {
    object (ExternalTransactionTestPurchase)
  },
  "transactionTime": string,
  "createTime": string,
  "transactionState": enum (TransactionState),
  "userTaxAddress": {
    object (ExternalTransactionAddress)
  },
  "transactionProgramCode": integer,

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "oneTimeTransaction": {
    object (OneTimeExternalTransaction)
  },
  "recurringTransaction": {
    object (RecurringExternalTransaction)
  }
  // End of mutually exclusive fields.

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "externalOfferDetails": {
    object (ExternalOfferDetails)
  },
  "externalContentLinkDetails": {
    object (ExternalContentLinkDetails)
  }
  // End of mutually exclusive fields.
}
ช่อง
packageName

string

เอาต์พุตเท่านั้น ชื่อทรัพยากรของธุรกรรมภายนอก ชื่อแพ็กเกจของแอปพลิเคชันที่ขายไอเทมที่ซื้อในแอป (เช่น "com.some.app")

externalTransactionId

string

เอาต์พุตเท่านั้น รหัสของธุรกรรมนี้ รหัสธุรกรรมทั้งหมดภายใต้ชื่อแพ็กเกจเดียวกันต้องไม่ซ้ำกัน ตั้งค่าเมื่อสร้างธุรกรรมภายนอก

originalPreTaxAmount

object (Price)

ต้องระบุ จำนวนเงินเดิมของธุรกรรมก่อนรวมภาษี ซึ่งแสดงถึงจำนวนเงินก่อนภาษีที่แจ้งให้ Google ทราบในตอนแรกก่อนที่จะมีการคืนเงิน

originalTaxAmount

object (Price)

ต้องระบุ จำนวนภาษีเดิม ซึ่งแสดงถึงจำนวนภาษีที่แจ้งให้ Google ทราบในตอนแรกก่อนที่จะมีการคืนเงิน

currentPreTaxAmount

object (Price)

เอาต์พุตเท่านั้น จำนวนเงินของธุรกรรมปัจจุบันก่อนรวมภาษี ซึ่งแสดงถึงจำนวนเงินก่อนภาษีปัจจุบัน รวมถึงการคืนเงินที่อาจมีผลกับธุรกรรมนี้

currentTaxAmount

object (Price)

เอาต์พุตเท่านั้น จำนวนภาษีปัจจุบัน นี่คือจำนวนภาษีปัจจุบัน รวมทั้งเงินคืนภาษีใดๆ ที่อาจมีการนำมาใช้กับธุรกรรมนี้แล้ว

testPurchase

object (ExternalTransactionTestPurchase)

เอาต์พุตเท่านั้น หากตั้งค่าไว้ ธุรกรรมนี้เป็นการซื้อทดสอบ Google จะไม่เรียกเก็บเงินสำหรับธุรกรรมทดสอบ

transactionTime

string (Timestamp format)

ต้องระบุ เวลาที่ทำธุรกรรมเสร็จสมบูรณ์

ใช้ RFC 3339 โดยเอาต์พุตที่สร้างขึ้นจะได้รับการแปลงเป็นรูปแบบ Z เสมอ และใช้ตัวเลขเศษส่วน 0, 3, 6 หรือ 9 หลัก นอกจากนี้ ระบบยังยอมรับออฟเซ็ตอื่นๆ นอกเหนือจาก "Z" ด้วย เช่น "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" หรือ "2014-10-02T15:01:23+05:30"

createTime

string (Timestamp format)

เอาต์พุตเท่านั้น เวลาที่สร้างธุรกรรมนี้ นี่คือเวลาที่ Google ได้รับแจ้งเกี่ยวกับธุรกรรม

ใช้ RFC 3339 โดยเอาต์พุตที่สร้างขึ้นจะได้รับการแปลงเป็นรูปแบบ Z เสมอ และใช้ตัวเลขเศษส่วน 0, 3, 6 หรือ 9 หลัก นอกจากนี้ ระบบยังยอมรับออฟเซ็ตอื่นๆ นอกเหนือจาก "Z" ด้วย เช่น "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" หรือ "2014-10-02T15:01:23+05:30"

transactionState

enum (TransactionState)

เอาต์พุตเท่านั้น สถานะปัจจุบันของธุรกรรม

userTaxAddress

object (ExternalTransactionAddress)

ต้องระบุ ที่อยู่ของผู้ใช้สำหรับการคำนวณภาษี

transactionProgramCode

integer

ไม่บังคับ รหัสโปรแกรมธุรกรรมซึ่งใช้เพื่อช่วยกำหนดค่าบริการสำหรับแอปที่มีสิทธิ์ซึ่งเข้าร่วมโปรแกรมพาร์ทเนอร์ นักพัฒนาแอปที่เข้าร่วม Play Media Experience Program (https://play.google.com/console/about/programs/mediaprogram/) ต้องระบุรหัสโปรแกรมเมื่อรายงานธุรกรรมการเรียกเก็บเงินระบบอื่น หากคุณเป็นนักพัฒนาแอปที่มีสิทธิ์ โปรดติดต่อ BDM เพื่อขอข้อมูลเพิ่มเติมเกี่ยวกับวิธีตั้งค่าฟิลด์นี้ หมายเหตุ: ช่องนี้ใช้กับธุรกรรมข้อเสนอภายนอกไม่ได้

ประเภทธุรกรรมที่ดำเนินการ ต่อไปนี้คือรายการฟิลด์ที่ใช้ร่วมกันไม่ได้ ระบบจะตั้งค่าช่องใดช่องหนึ่งต่อไปนี้ในการตอบกลับ
oneTimeTransaction

object (OneTimeExternalTransaction)

นี่คือธุรกรรมแบบครั้งเดียวและไม่ได้เป็นส่วนหนึ่งของการสมัครใช้บริการ

recurringTransaction

object (RecurringExternalTransaction)

ธุรกรรมนี้เป็นส่วนหนึ่งของชุดธุรกรรมที่เกิดขึ้นซ้ำๆ

สิ้นสุดฟิลด์ที่แยกกัน
รายละเอียดเฉพาะของโปรแกรมที่จำเป็นสำหรับการรายงานธุรกรรม คุณควรกำหนดรายละเอียดสำหรับโปรแกรมที่ธุรกรรมเชื่อมโยงด้วยเท่านั้น ต่อไปนี้คือรายการฟิลด์ที่ใช้ร่วมกันไม่ได้ ระบบจะตั้งค่าช่องใดช่องหนึ่งต่อไปนี้ในการตอบกลับ
externalOfferDetails

object (ExternalOfferDetails)

ไม่บังคับ รายละเอียดที่จำเป็นต่อการรายงานธุรกรรมข้อเสนอภายนอกอย่างถูกต้อง

สิ้นสุดฟิลด์ที่แยกกัน

ExternalTransactionTestPurchase

ประเภทนี้ไม่มีฟิลด์

แสดงถึงธุรกรรมที่ดำเนินการโดยใช้บัญชีทดสอบ Google จะไม่เรียกเก็บเงินสำหรับธุรกรรมเหล่านี้

OneTimeExternalTransaction

แสดงถึงธุรกรรมแบบครั้งเดียว

การแสดง JSON
{
  "externalTransactionToken": string
}
ช่อง
externalTransactionToken

string

อินพุตเท่านั้น ระบุระหว่างการโทรเพื่อสร้าง ดึงข้อมูลจากไคลเอ็นต์เมื่อเริ่มโฟลว์การเรียกเก็บเงินระบบอื่น

RecurringExternalTransaction

แสดงถึงธุรกรรมที่เป็นส่วนหนึ่งของชุดการชำระเงินที่เกิดขึ้นซ้ำๆ ซึ่งอาจเป็นการสมัครใช้บริการหรือผลิตภัณฑ์แบบเรียกเก็บเงินครั้งเดียวที่มีการชำระเงินหลายครั้ง (เช่น การสั่งจองล่วงหน้า)

การแสดง JSON
{

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "initialExternalTransactionId": string,
  "externalTransactionToken": string,
  "migratedTransactionProgram": enum (ExternalTransactionProgram)
  // End of mutually exclusive fields.

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "externalSubscription": {
    object (ExternalSubscription)
  },
  "otherRecurringProduct": {
    object (OtherRecurringProduct)
  }
  // End of mutually exclusive fields.
}
ช่อง
ต่อไปนี้คือรายการฟิลด์ที่ใช้ร่วมกันไม่ได้ ระบบจะตั้งค่าช่องใดช่องหนึ่งต่อไปนี้ในการตอบกลับ
initialExternalTransactionId

string

รหัสธุรกรรมภายนอกของธุรกรรมแรกในชุดธุรกรรมที่เกิดซ้ำนี้ เช่น สำหรับการสมัครใช้บริการ รหัสนี้จะเป็นรหัสธุรกรรมของการชำระเงินครั้งแรก จำเป็นต้องระบุเมื่อสร้างธุรกรรมภายนอกแบบประจำ

externalTransactionToken

string

อินพุตเท่านั้น ระบุระหว่างการโทรเพื่อสร้าง ดึงข้อมูลจากไคลเอ็นต์เมื่อเปิดตัวโฟลว์การเรียกเก็บเงินระบบอื่น จำเป็นสำหรับการซื้อครั้งแรกเท่านั้น

migratedTransactionProgram

enum (ExternalTransactionProgram)

อินพุตเท่านั้น ระบุระหว่างการโทรเพื่อสร้าง ควรใช้เฉพาะเมื่อทำการเปลี่ยนระบบการรายงานรายเดือนจากแบบรายงานด้วยตนเองไปเป็นแบบรายงานอัตโนมัติเท่านั้น

สิ้นสุดฟิลด์ที่แยกกัน
ต้องระบุ รายละเอียดของผลิตภัณฑ์ในธุรกรรมภายนอกที่เกิดขึ้นซ้ำ ต่อไปนี้คือรายการฟิลด์ที่ใช้ร่วมกันไม่ได้ ระบบจะตั้งค่าช่องใดช่องหนึ่งต่อไปนี้ในการตอบกลับ
externalSubscription

object (ExternalSubscription)

รายละเอียดการสมัครใช้บริการภายนอก

otherRecurringProduct

object (OtherRecurringProduct)

รายละเอียดของผลิตภัณฑ์ธุรกรรมภายนอกแบบเรียกเก็บเงินตามรอบซึ่งไม่ได้อยู่ในหมวดหมู่ที่เฉพาะเจาะจงอื่นๆ

สิ้นสุดฟิลด์ที่แยกกัน

ExternalTransactionProgram

แสดงโปรแกรมธุรกรรมภายนอกที่ผู้ใช้ได้รับเพื่อทำธุรกรรมให้เสร็จสมบูรณ์

Enum
EXTERNAL_TRANSACTION_PROGRAM_UNSPECIFIED โปรแกรมธุรกรรมที่ไม่ได้ระบุ ไม่ได้ใช้
USER_CHOICE_BILLING การเรียกเก็บเงินแบบให้ผู้ใช้ตัดสินใจ ซึ่งผู้ใช้สามารถเลือกระหว่าง Google Play Billing กับการเรียกเก็บเงินที่นักพัฒนาแอปจัดการ
ALTERNATIVE_BILLING_ONLY การเรียกเก็บเงินระบบอื่นเท่านั้น ซึ่งผู้ใช้จะใช้ได้เฉพาะการเรียกเก็บเงินของบัญชีดูแลจัดการนักพัฒนาแอป

ExternalSubscription

รายละเอียดการสมัครใช้บริการภายนอก

การแสดง JSON
{
  "subscriptionType": enum (SubscriptionType)
}
ช่อง
subscriptionType

enum (SubscriptionType)

ต้องระบุ ประเภทของการสมัครสมาชิกภายนอก

SubscriptionType

ประเภทของการสมัครใช้บริการภายนอก

Enum
SUBSCRIPTION_TYPE_UNSPECIFIED ไม่ระบุ โปรดอย่าใช้
RECURRING การสมัครใช้บริการแบบต่อเนื่องซึ่งระบบจะเรียกเก็บเงินจากผู้ใช้ทุกรอบการเรียกเก็บเงิน
PREPAID การสมัครใช้บริการนี้เป็นแบบชำระเงินล่วงหน้าซึ่งผู้ใช้จะชำระเงินล่วงหน้า

OtherRecurringProduct

ประเภทนี้ไม่มีฟิลด์

รายละเอียดของผลิตภัณฑ์ธุรกรรมภายนอกที่เกิดขึ้นซ้ำ ซึ่งไม่จัดอยู่ในหมวดหมู่เฉพาะเจาะจงอื่นใด

TransactionState

สถานะของธุรกรรมที่ดำเนินการ

Enum
TRANSACTION_STATE_UNSPECIFIED สถานะธุรกรรมที่ไม่ได้ระบุ ไม่ได้ใช้
TRANSACTION_REPORTED การทำธุรกรรมดังกล่าวได้รับการรายงานไปยัง Google เรียบร้อยแล้ว
TRANSACTION_CANCELED ธุรกรรมดังกล่าวได้รับการคืนเงินเต็มจำนวนแล้ว

ExternalTransactionAddress

ที่อยู่ของผู้ใช้สำหรับการทำธุรกรรมภายนอก

การแสดง JSON
{
  "regionCode": string,
  "administrativeArea": string
}
ช่อง
regionCode

string

ต้องระบุ รหัสภูมิภาคแบบ 2 ตัวอักษรตาม ISO-3166-1 Alpha-2 (รหัสภูมิภาคของสหประชาชาติ)

administrativeArea

string

ไม่บังคับ เขตบริหารย่อยระดับสูงสุดของประเทศ/ภูมิภาค จำเป็นสำหรับธุรกรรมในประเทศอินเดียเท่านั้น ค่าที่ใช้ได้ ได้แก่ "ANDAMAN AND NICOBAR ISLANDS", "ANDHRA PRADESH", "ARUNACHAL PRADESH", "ASSAM", "BIHAR", "CHANDIGARH", "CHHATTISGARH", "DADRA AND NAGAR HAVELI", "DADRA AND NAGAR HAVELI AND DAMAN AND DIU", "DAMAN AND DIU", "DELHI", "GOA", "GUJARAT", "HARYANA", "HIMACHAL PRADESH", "JAMMU AND KASHMIR", "JHARKHAND", "KARNATAKA", "KERALA", "LADAKH", "LAKSHADWEEP", "MADHYA PRADESH", "MAHARASHTRA", "MANIPUR", "MEGHALAYA", "MIZORAM", "NAGALAND", "ODISHA", "PUDUCHERRY", "PUNJAB", "RAJASTHAN", "SIKKIM", "TAMIL NADU", "TELANGANA", "TRIPURA", "UTTAR PRADESH", "UTTARAKHAND" และ "WEST BENGAL"

ExternalOfferDetails

รายละเอียดการรายงานเฉพาะสำหรับโปรแกรมข้อเสนอภายนอก

การแสดง JSON
{
  "linkType": enum (ExternalOfferLinkType),
  "installedAppPackage": string,
  "installedAppCategory": enum (ExternalOfferAppCategory),
  "appDownloadEventExternalTransactionId": string
}
ฟิลด์
installedAppPackage

string

ไม่บังคับ ชื่อแพ็กเกจของแอปที่ดาวน์โหลดผ่านธุรกรรมนี้ ต้องระบุเมื่อ linkType คือ LINK_TO_APP_DOWNLOAD

installedAppCategory

enum (ExternalOfferAppCategory)

ไม่บังคับ หมวดหมู่ของแอปที่ดาวน์โหลดผ่านธุรกรรมนี้ โดยต้องตรงกับหมวดหมู่ที่ระบุใน Play Console ระหว่างกระบวนการยืนยันแอปภายนอก จำเป็นสำหรับการดาวน์โหลดแอปเท่านั้น

appDownloadEventExternalTransactionId

string

ไม่บังคับ รหัสธุรกรรมภายนอกที่เชื่อมโยงกับเหตุการณ์การดาวน์โหลดแอปผ่านลิงก์ภายนอก จำเป็นต้องระบุเมื่อรายงานธุรกรรมที่เกิดขึ้นในแอปพลิเคชันที่ติดตั้งภายนอก

ExternalOfferLinkType

ประเภทของลิงก์ภายนอก

Enum

ExternalOfferAppCategory

หมวดหมู่ของแอปที่ดาวน์โหลด ดู https://support.google.com/googleplay/android-developer/answer/9859673 สำหรับข้อมูลเพิ่มเติมเกี่ยวกับหมวดหมู่ของแอป

Enum
EXTERNAL_OFFER_APP_CATEGORY_UNSPECIFIED ไม่ระบุ โปรดอย่าใช้
APP แอปนี้ถูกจัดอยู่ในหมวดหมู่แอป
GAME แอปจัดอยู่ในหมวดหมู่เกม

ExternalContentLinkDetails

รายละเอียดการรายงานเฉพาะสำหรับโปรแกรมลิงก์เนื้อหาภายนอก

การแสดง JSON
{
  "linkType": enum (ExternalContentLinkType),
  "installedAppPackage": string,
  "externalAppCategory": enum (ExternalContentAppCategory)
}
ช่อง
installedAppPackage

string

ไม่บังคับ ชื่อแพ็กเกจของแอปที่ดาวน์โหลดผ่านธุรกรรมนี้ จำเป็นสำหรับการติดตั้งแอปเท่านั้น

externalAppCategory

enum (ExternalContentAppCategory)

ไม่บังคับ หมวดหมู่ของแอปที่ดาวน์โหลด ต้องตรงกับหมวดหมู่ที่แสดงใน Play Console ระหว่างขั้นตอนการตรวจสอบแอปจากภายนอก จำเป็นสำหรับการติดตั้งแอปเท่านั้น

ExternalContentLinkType

ประเภทของลิงก์ภายนอก

Enum

ExternalContentAppCategory

หมวดหมู่ของแอปที่ดาวน์โหลด ดูข้อมูลเพิ่มเติมเกี่ยวกับหมวดหมู่แอปได้ที่ https://support.google.com/googleplay/android-developer/answer/9859673

Enum
EXTERNAL_CONTENT_APP_CATEGORY_UNSPECIFIED ไม่ระบุ โปรดอย่าใช้
APP แอปนี้ถูกจัดอยู่ในหมวดหมู่แอป
GAME แอปจัดอยู่ในหมวดหมู่เกม

เมธอด

createexternaltransaction

สร้างธุรกรรมภายนอกใหม่

getexternaltransaction

รับธุรกรรมภายนอกที่มีอยู่

refundexternaltransaction

คืนเงินหรือคืนเงินบางส่วนสำหรับธุรกรรมภายนอกที่มีอยู่

รหัสข้อผิดพลาด

การดำเนินการของทรัพยากรนี้จะแสดงรหัสข้อผิดพลาดของ HTTP ต่อไปนี้

รหัสข้อผิดพลาด เหตุผล คำอธิบาย ความละเอียด