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,

  // Union field transaction_type can be only one of the following:
  "oneTimeTransaction": {
    object (OneTimeExternalTransaction)
  },
  "recurringTransaction": {
    object (RecurringExternalTransaction)
  }
  // End of list of possible types for union field transaction_type.
}
ช่อง
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 เพื่อขอข้อมูลเพิ่มเติมเกี่ยวกับวิธีตั้งค่าช่องนี้ หมายเหตุ: ช่องนี้ใช้กับธุรกรรมข้อเสนอภายนอกไม่ได้

ฟิลด์ Union transaction_type ประเภทธุรกรรมที่ดำเนินการ transaction_type ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น
oneTimeTransaction

object (OneTimeExternalTransaction)

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

recurringTransaction

object (RecurringExternalTransaction)

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

ExternalTransactionTestPurchase

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

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

OneTimeExternalTransaction

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

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

string

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

RecurringExternalTransaction

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

การแสดง JSON
{

  // Union field source can be only one of the following:
  "initialExternalTransactionId": string,
  "externalTransactionToken": string,
  "migratedTransactionProgram": enum (ExternalTransactionProgram)
  // End of list of possible types for union field source.

  // Union field product_details can be only one of the following:
  "externalSubscription": {
    object (ExternalSubscription)
  },
  "otherRecurringProduct": {
    object (OtherRecurringProduct)
  }
  // End of list of possible types for union field product_details.
}
ช่อง

ฟิลด์ Union source

source ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น

initialExternalTransactionId

string

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

externalTransactionToken

string

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

migratedTransactionProgram

enum (ExternalTransactionProgram)

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

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

object (ExternalSubscription)

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

otherRecurringProduct

object (OtherRecurringProduct)

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

ExternalTransactionProgram

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

Enum
EXTERNAL_TRANSACTION_PROGRAM_UNSPECIFIED โปรแกรมธุรกรรมที่ไม่ได้ระบุ ไม่ได้ใช้
USER_CHOICE_BILLING การเรียกเก็บเงินแบบให้ผู้ใช้ตัดสินใจ ซึ่งผู้ใช้สามารถเลือกระหว่างการเรียกเก็บเงินของ Google Play กับการเรียกเก็บเงินที่นักพัฒนาแอปจัดการ
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"

เมธอด

createexternaltransaction

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

getexternaltransaction

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

refundexternaltransaction

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

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

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

รหัสข้อผิดพลาด เหตุผล ความละเอียด
5xx ข้อผิดพลาดทั่วไปในเซิร์ฟเวอร์ Google Play ลองส่งคำขออีกครั้ง

หากยังคงพบปัญหาอยู่ โปรดติดต่อผู้จัดการลูกค้า Google Play หรือส่งคำขอรับการสนับสนุน โปรดตรวจสอบแดชบอร์ดสถานะของ Play เพื่อดูการหยุดทำงานที่ทราบ

409 ข้อผิดพลาดในการอัปเดตพร้อมกัน

มีการพยายามอัปเดตออบเจ็กต์ที่กำลังอัปเดตอยู่ เช่น การตอบรับการซื้อ จะทำได้โดยการเรียกใช้เมธอด acknowledgePurchase() ของ Play Billing Library และเรียกใช้ purchases.products.acknowledge ของ Play Developer API พร้อมกัน

ลองส่งคำขออีกครั้ง