ÿÿ Lưu sá»± kiện giao dịch (API)
POST /api/v1/profile/transaction-event/save/

Lưu sự kiện giao dịch

Ghi lại má»™t sá»± kiện giao dịch từ cá»­a hàng cho má»™t hồ sÆ¡ ngưá»i dùng. Adapty Mail sá»­ dụng các sá»± kiện giao dịch để đặt hồ sÆ¡ vào các flow dá»±a trên giao dịch mua — event_type ánh xạ đến các flow như renewal cancelled, billing issue, expired và refunded — cÅ©ng như cho attribution doanh thu.

Gá»­i các sá»± kiện này khi bạn xá»­ lý các giao dịch mua, gia hạn và há»§y bá». Chỉ có flow never purchased hoạt động mà không cần chúng.

Request body

event_typestringrequired

Loại sự kiện giao dịch. Các flow dựa trên giao dịch mua được kích hoạt bởi các giá trị này.

One of: "subscription_started", "subscription_renewed", "subscription_renewal_cancelled", "subscription_renewal_reactivated", "billing_issue_detected", "entered_grace_period", "subscription_refunded", "subscription_expired", "non_subscription_purchase", "non_subscription_purchase_refunded"

event_idstringrequired

Mã định danh duy nhất cho sự kiện này, do hệ thống của bạn quản lý. Sử dụng để đảm bảo tính idempotent của các sự kiện.

event_datetimestringrequired

Thá»i Ä‘iểm sá»± kiện được ghi lại, theo định dạng ISO 8601.

external_profile_idstringrequired

Cùng má»™t external_profile_id ổn định bạn gá»­i khi lưu hồ sÆ¡ ngưá»i dùng. Liên kết giao dịch vá»›i đúng hồ sÆ¡.

storestringrequired

Cửa hàng mà giao dịch đến từ, ví dụ: app_store, play_store hoặc stripe.

store_product_idstringrequired

Mã định danh của sản phẩm đã mua trong cửa hàng.

store_transaction_idstringrequired

Mã định danh của giao dịch này trong cửa hàng.

store_original_transaction_idstringrequired

Mã định danh cá»§a giao dịch đầu tiên trong chuá»—i gói đăng ký. Äối vá»›i giao dịch mua đầu tiên, giá trị này bằng store_transaction_id.

purchased_atstringrequired

Thá»i Ä‘iểm giao dịch này xảy ra, theo định dạng ISO 8601.

originally_purchased_atstringrequired

Thá»i Ä‘iểm gói đăng ký được mua lần đầu tiên, theo định dạng ISO 8601.

price_usdstring

Số tiá»n giao dịch bằng USD, dưới dạng chuá»—i thập phân (ví dụ: "9.99").

expires_atstring

Thá»i Ä‘iểm gói đăng ký hết hạn hoặc đã hết hạn, theo định dạng ISO 8601. Bá» qua đối vá»›i các giao dịch mua không phải gói đăng ký.

offerobject

Chi tiết của một ưu đãi hoặc ưu đãi giới thiệu được áp dụng cho giao dịch.

categorystringrequired

One of: "introductory", "promotional", "offer_code", "win_back"

offer_typestringrequired

One of: "free_trial", "pay_as_you_go", "pay_up_front"

offer_idstring

Mã định danh của ưu đãi trong cửa hàng, nếu có.

Responses

Sự kiện giao dịch đã được lưu thành công. Nội dung phản hồi là một đối tượng rỗng.

Schema
object
Example
{}

Xác thá»±c thất bại — má»™t trưá»ng bắt buá»™c bị thiếu hoặc không hợp lệ. field_name cho biết trưá»ng nào.

Schema

Phản hồi lá»—i chuẩn. Má»i lá»—i Ä‘á»u trả vá» trạng thái 4XX vá»›i cấu trúc này.

errorsarray of object
messagestring

Mô tả lá»—i dá»… Ä‘á»c cho ngưá»i dùng.

error_codestring

Mã định danh lá»—i dá»… Ä‘á»c cho máy.

status_codeinteger

Mã trạng thái HTTP cho lỗi này.

field_namestring

Trưá»ng trong yêu cầu gây ra lá»—i, hoặc null nếu lá»—i không liên quan đến trưá»ng cụ thể nào.

Example
{
  "errors": [
    {
      "message": "Field required",
      "error_code": "base_error",
      "status_code": 400,
      "field_name": "event_type"
    }
  ]
}

Thiếu hoặc sai secret API key.

Schema

Phản hồi lá»—i chuẩn. Má»i lá»—i Ä‘á»u trả vá» trạng thái 4XX vá»›i cấu trúc này.

errorsarray of object
messagestring

Mô tả lá»—i dá»… Ä‘á»c cho ngưá»i dùng.

error_codestring

Mã định danh lá»—i dá»… Ä‘á»c cho máy.

status_codeinteger

Mã trạng thái HTTP cho lỗi này.

field_namestring

Trưá»ng trong yêu cầu gây ra lá»—i, hoặc null nếu lá»—i không liên quan đến trưá»ng cụ thể nào.

Example
{
  "errors": [
    {
      "message": "Secret key doesn't exist",
      "error_code": "secret_key_does_not_exist_error",
      "status_code": 403,
      "field_name": null
    }
  ]
}
ÿÿÿÿ