Anda sedang melihat dokumentasi Apigee Edge.
Buka
Dokumentasi Apigee X. info
Konfigurasi kebijakan pencatatan transaksi untuk setiap produk API dalam paket produk API Anda, seperti yang dijelaskan di bagian berikut.
Pengantar
Kebijakan pencatatan transaksi memungkinkan monetisasi untuk menangkap parameter transaksi dan atribut khusus. Monetisasi memerlukan informasi ini untuk menjalankan pemrosesan monetisasinya seperti menerapkan paket tarif.
Misalnya, jika Anda menyiapkan rencana tarif pembagian keuntungan, pendapatan yang dihasilkan dari setiap transaksi yang melibatkan produk API yang dimonetisasi dibagikan bersama developer aplikasi yang mengeluarkan permintaan tersebut. Pembagian keuntungan didasarkan pada jumlah bersih atau kotor harga transaksi (Anda dapat menentukan yang mana), yaitu, persentase dari harga kotor atau bersih dari setiap transaksi digunakan untuk menentukan bagi hasil. Oleh karena itu, monetisasi membutuhkan untuk mengetahui harga kotor atau bersih dari transaksi, sebagaimana yang berlaku. Harga tersebut mendapatkan harga kotor atau bersih dari pengaturan yang Anda buat dalam kebijakan pencatatan transaksi.
Jika Anda menyiapkan kartu tarif Anda, di mana Anda menagih developer untuk setiap transaksi, Anda dapat menetapkan tarif untuk paket tersebut berdasarkan atribut khusus seperti jumlah byte yang ditransmisikan dalam transaksi. Monetisasi perlu mengetahui apa yang dimaksud dengan atribut khusus dan di mana menemukannya. Anda perlu tentukan atribut khusus dalam kebijakan pencatatan transaksi.
Selain menentukan atribut transaksi dalam kebijakan pencatatan transaksi, Anda dapat menentukan kriteria keberhasilan transaksi untuk menentukan kapan transaksi berhasil (untuk untuk tujuan pengisian daya). Untuk contoh cara menetapkan kriteria keberhasilan transaksi, lihat Contoh penetapan kriteria keberhasilan transaksi dalam rekaman transaksi kebijakan kami. Anda juga dapat menentukan atribut khusus untuk produk API (yang menjadi dasar tarif biaya paket).
Mengonfigurasi kebijakan pencatatan transaksi
Akses halaman Paket Produk, seperti yang dijelaskan di bawah ini.
Edge
Saat menambahkan paket produk API menggunakan UI Edge, Anda perlu mengonfigurasi kebijakan pencatatan transaksi dengan melakukan langkah-langkah berikut:
- Pilih produk API yang akan dikonfigurasi di bagian Kebijakan Perekaman Transaksi (jika ada beberapa produk API dalam paket produk).
- Mengonfigurasi atribut transaksi.
- Konfigurasi atribut khusus.
- Tautkan resource dengan ID transaksi unik.
- Mengonfigurasi pengembalian dana.
- Ulangi untuk setiap produk API yang ditentukan dalam paket produk API.
Edge Klasik (Private Cloud)
Untuk mengonfigurasi kebijakan perekaman transaksi menggunakan UI Classic Edge:
- Login ke
http://ms-ip:9000
, dengan ms-ip sebagai Alamat IP atau nama DNS node Server Pengelolaan. - Pilih Publikasikan > Produk di menu navigasi atas.
- Klik + Transaction Recording Policy di baris untuk API yang berlaku Google. Jendela New Transaction Recording Policy akan ditampilkan.
- Konfigurasi kebijakan pencatatan transaksi dengan melakukan langkah-langkah berikut:
- Klik Simpan.
Mengonfigurasi atribut transaksi
Di bagian Transaction Attributes, tentukan kriteria yang menunjukkan transaksi monetisasi yang berhasil.
- Di kolom Transaction Success Criteria, tentukan ekspresi berdasarkan nilai atribut Status
(dijelaskan berikutnya) untuk menentukan kapan transaksi berhasil (untuk tujuan penagihan). Transaksi yang tidak berhasil
(yaitu, mereka tidak memenuhi kriteria dalam ekspresi) akan dicatat, tetapi paket tarif tidak diterapkan pada kolom tersebut. Contoh:
txProviderStatus == 'OK'
- Atribut Status berisi nilai yang digunakan oleh ekspresi yang dikonfigurasi di
kolom Transaction Success Criteria. Konfigurasikan atribut Status dengan menentukan kolom berikut:
Kolom Deskripsi Resource API Pola URI yang ditentukan dalam produk API yang akan digunakan dalam mengidentifikasi transaksi yang dimonetisasi. Lokasi Respons Lokasi respons tempat atribut ditentukan. Nilai yang valid mencakup: Variabel Alur, Header, Isi JSON, dan Isi XML. Nilai Nilai dari respons. Untuk menentukan lebih dari satu nilai, klik + Tambahkan x (misalnya, + Tambahkan Variabel Alur). - Untuk mengonfigurasi atribut transaksi opsional, aktifkan tombol Gunakan Atribut Opsional dan konfigurasikan
atribut transaksi yang ditentukan dalam tabel berikut.
Atribut Deskripsi Harga kotor Atribut ini hanya berlaku untuk paket tarif yang menggunakan model pembagian keuntungan. Untuk paket tarif tersebut, Harga Kotor atau Harga Bersih bersifat wajib. Pastikan bahwa nilai numerik dinyatakan sebagai jenis String. Harga kotor untuk transaksi. Sebagai paket pembagian keuntungan, Anda perlu mencatat atribut Harga Kotor atau Harga Bersih . Atribut yang diperlukan bergantung pada dasar pembagian keuntungan. Sebagai Misalnya, Anda dapat menyiapkan rencana tarif pembagian keuntungan yang didasarkan pada harga kotor transaksi. Dalam hal ini, kolom Harga Kotor wajib diisi.
Harga bersih Atribut ini hanya berlaku untuk paket tarif yang menggunakan model pembagian keuntungan. Untuk paket tarif tersebut, Harga Kotor atau Harga Bersih bersifat wajib. Pastikan bahwa nilai numerik dinyatakan sebagai jenis String. Harga bersih untuk transaksi. Sebagai paket pembagian keuntungan, Anda perlu mencatat bidang Harga Bersih atau Harga Kotor kolom tersebut. Kolom yang wajib diisi bergantung pada dasar pembagian keuntungan. Misalnya, Anda dapat menyiapkan rencana tarif pembagian keuntungan yang didasarkan pada harga bersih transaksi. Dalam hal ini, kolom Harga Bersih wajib diisi.
Mata Uang Atribut ini diperlukan untuk paket tarif yang menggunakan model pembagian keuntungan. Jenis mata uang yang berlaku untuk transaksi.
Kode Error Kode error yang terkait dengan transaksi. Alat ini memberikan lebih informasi tentang transaksi yang gagal.
Deskripsi Item Deskripsi transaksi.
Pajak Atribut ini hanya relevan untuk model pembagian keuntungan dan hanya jika jumlah pajak akan dicatat dalam panggilan API. Memastikan nilai numerik dinyatakan sebagai jenis String. Jumlah pajak atas pembelian. Harga bersih ditambah pajak = harga kotor.
Misalnya, dengan menetapkan nilai berikut, monetisasi mendapatkan nilai variabel alur dari respons pesan dalam
variabel yang disebut response.reason.phrase
. Jika nilainya OKE, dan
kebijakan Pemeriksaan Batas Monetisasi
yang dilampirkan ke permintaan ProxyEndpoint proxy API, monetisasi akan menghitungnya sebagai transaksi.
Kolom | Nilai |
---|---|
Kriteria Keberhasilan Transaksi | txProviderStatus == 'OK' |
Status: Resource API | ** |
Status: Lokasi Respons | Variabel Aliran |
Status: Variabel Alur | response.reason.phrase |
Mengonfigurasi atribut khusus
Di bagian Atribut Khusus, Anda mengidentifikasi atribut khusus untuk disertakan dalam kebijakan pencatatan transaksi. Misalnya, jika Anda menyiapkan paket kartu tarif, Anda akan menagih developer untuk setiap paket transaksi, Anda dapat menetapkan tarif paket berdasarkan atribut khusus seperti jumlah {i>byte<i} yang ditransmisikan dalam sebuah transaksi. Anda kemudian harus menyertakan atribut khusus tersebut di kebijakan pencatatan transaksi.
Setiap atribut ini disimpan di log transaksi, yang dapat Anda kueri. Mereka juga ditampilkan saat Anda membuat paket tarif (sehingga Anda dapat memilih satu atau beberapa atribut ini yang menjadi dasar tarif paket Anda).
Anda dapat menyertakan atribut khusus yang ditentukan dalam kebijakan pencatatan transaksi di bagian pendapatan ringkasan, seperti yang dijelaskan dalam Termasuk transaksi kustom di laporan ringkasan pendapatan.
Untuk mengonfigurasi atribut khusus, aktifkan tombol Gunakan Atribut Khusus dan tentukan hingga 10 atribut khusus. Untuk setiap atribut khusus yang Anda sertakan dalam kebijakan pencatatan transaksi, Anda harus menentukan informasi berikut.
Kolom | Deskripsi |
---|---|
Nama Atribut Khusus | Masukkan nama yang mendeskripsikan atribut khusus. Jika paket tarif didasarkan pada atribut khusus, nama ini ditampilkan kepada pengguna di detail paket tarif. Misalnya, jika atribut khusus merekam durasi, Anda harus menamai durasi atribut. Unit sebenarnya untuk atribut khusus (seperti jam, menit, atau detik) ditetapkan di kolom unit rating saat membuat rencana tarif atribut khusus (lihat Menentukan paket tarif dengan detail atribut khusus). |
Resource API | Pilih satu atau beberapa akhiran URI (yaitu, fragmen URI yang mengikuti jalur dasar) dari resource API yang diakses dalam transaksi. Resource yang tersedia sama dengan atribut transaksi. |
Lokasi Respons | Pilih lokasi dalam respons tempat atribut ditentukan. Nilai yang valid mencakup: Variabel Alur, Header, Isi JSON, dan Isi XML. |
Nilai | Tentukan nilai untuk atribut khusus. Setiap nilai yang Anda tentukan sesuai dengan sebuah bidang, parameter,
atau elemen konten yang menyediakan atribut khusus di lokasi yang Anda tentukan. Untuk menentukan lebih dari satu nilai, klik + Tambahkan x (misalnya, + Tambahkan Variabel Alur).
Misalnya, jika Anda mengonfigurasi atribut khusus bernama
Content Length{i> <i}dan memilih Header sebagai lokasi respons,
jika nilai Panjang Konten diberikan di kolom Panjang Konten HTTP, Anda harus menentukan |
Tautkan resource dengan ID transaksi unik
Beberapa transaksi bersifat sederhana, yang melibatkan panggilan API ke satu resource. Namun, faktor lain transaksi bisa lebih kompleks. Misalnya, transaksi untuk pembelian dalam aplikasi dalam aplikasi game seluler melibatkan beberapa panggilan resource:
- Panggilan ke API cadangan yang memastikan bahwa pengguna prabayar memiliki kredit yang cukup untuk membeli dan mengalokasikan ("memesan") dana untuk pembelian tersebut.
- Panggilan ke API tagihan yang memotong dana dari akun pengguna prabayar.
Untuk memproses seluruh transaksi, monetisasi memerlukan cara untuk menautkan sumber daya pertama ( dan merespons ke dan dari API cadangan) dengan sumber daya kedua (panggilan dan respons ke dan dari API tagihan). Untuk melakukannya, model bergantung pada informasi yang Anda tentukan di Bagian Menautkan Resource dengan ID Transaksi Unik.
Untuk mengonfigurasi atribut khusus, aktifkan tombol Gunakan ID Transaksi Unik dan tautkan melakukan transaksi. Untuk setiap transaksi, Anda menentukan resource, lokasi respons, dan nilai atribut yang dengan nilai yang sesuai dengan metode transaksi.
Sebagai contoh, anggap saja panggilan API cadangan dan panggilan API biaya ditautkan sebagai berikut: a
kolom bernama session_id
di header respons dari API cadangan sesuai dengan
header respons bernama reference_id
dari API biaya. Dalam hal ini, Anda dapat mengatur entri
di bagian Tautkan Resource dengan ID Transaksi Unik sebagai berikut:
Resource | Lokasi respons | Nilai |
---|---|---|
reserve/{id}** |
Header |
session_id |
/charge/{id}** |
Header |
reference_id |
Mengonfigurasi pengembalian dana
Di bagian Pengembalian Dana, Anda menentukan atribut yang penggunaan monetisasi untuk memproses pengembalian dana.
Misalnya, anggaplah pengguna membeli produk dari aplikasi seluler yang menggunakan API Anda yang dimonetisasi. Transaksi dimonetisasi berdasarkan paket pendapatan. Namun, anggaplah pengguna tidak puas dengan produknya dan ingin mengembalikannya. Jika produk dikembalikan dananya menggunakan panggilan ke API Anda yang melakukan pengembalian dana, monetisasi akan penyesuaian monetisasi yang diperlukan. Hal ini dilakukan berdasarkan informasi yang Anda tentukan dalam Bagian pengembalian dana dalam kebijakan pencatatan transaksi.
Untuk mengonfigurasi pengembalian dana, aktifkan tombol Gunakan Atribut Pengembalian Dana dan tentukan detail pengembalian dana:
- Tentukan kriteria pengembalian dana dengan menentukan kolom berikut:
Kolom Deskripsi Lokasi Respons Referensi untuk transaksi pengembalian dana. Jika produk API memberikan beberapa sumber daya, Anda dapat memilih hanya sumber daya yang melakukan pengembalian dana. Kriteria Keberhasilan Pengembalian Dana Persamaan berdasarkan nilai atribut Status (dijelaskan berikutnya) untuk menentukan kapan transaksi pengembalian dana berhasil (untuk penagihan tujuan). Transaksi pengembalian dana yang tidak berhasil (yaitu, transaksi tersebut tidak memenuhi kriteria dalam ekspresi) dicatat, tetapi paket tarif tidak diterapkan. Contoh: txProviderStatus == 'OK'
- Konfigurasikan atribut Status dengan menentukan kolom berikut:
Kolom Deskripsi Lokasi Respons Lokasi respons tempat atribut ditentukan. Nilai yang valid mencakup: Variabel Alur, Header, Isi JSON, dan Isi XML. Nilai Nilai dari respons. Untuk menentukan lebih dari satu nilai, klik + Tambahkan x (misalnya, + Tambahkan Variabel Alur). - Konfigurasi atribut Parent ID dengan menentukan kolom berikut:
Kolom Deskripsi Lokasi Respons Lokasi respons tempat atribut ditentukan. Nilai yang valid mencakup: Variabel Alur, Header, Isi JSON, dan Isi XML. Nilai ID transaksi tempat pengembalian dana diproses. Misalnya, jika pengguna membeli produk dan kemudian meminta pengembalian dana, ID Transaksi Induk adalah ID transaksi pembelian. Untuk menentukan lebih dari satu nilai, klik + Tambahkan x (misalnya, + Tambahkan Variabel Alur). - Untuk mengonfigurasi atribut pengembalian dana opsional, aktifkan tombol Gunakan Atribut Pengembalian Dana Opsional dan konfigurasikan atribut-atribut tersebut. Atribut pengembalian dana opsional sama dengan atribut transaksi opsional, seperti yang dijelaskan di Mengonfigurasi atribut transaksi.
Mengelola kebijakan pencatatan transaksi menggunakan API
Bagian berikut menjelaskan cara mengelola kebijakan pencatatan transaksi menggunakan API.
Membuat kebijakan pencatatan transaksi menggunakan API
Anda menentukan kebijakan pencatatan transaksi sebagai atribut produk API. Nilai atribut mengidentifikasi:
- Akhiran URI resource produk yang memiliki kebijakan pencatatan transaksi
terlampir. Akhiran mencakup variabel pola yang diapit dalam tanda kurung kurawal. Polanya
variabel dievaluasi oleh Layanan API saat runtime. Misalnya, akhiran URI berikut
mencakup variabel pola
{id}
./reserve/{id}**
Dalam hal ini, Layanan API mengevaluasi akhiran URI resource sebagai
/reserve
diikuti dengan sub-direktori yang diawali dengan ID yang ditentukan oleh API penyedia layanan. - Resource dalam respons yang terlampir. Produk API dapat memiliki beberapa dan setiap resource dapat memiliki kebijakan pencatatan transaksi yang dilampirkan ke respons dari resource tersebut.
- Kebijakan variabel ekstrak yang memungkinkan kebijakan pencatatan transaksi mengekstrak konten dari pesan respons untuk parameter transaksi yang ingin Anda tangkap.
Anda menambahkan atribut kebijakan pencatatan transaksi ke produk API dengan mengeluarkan permintaan PUT
ke API pengelolaan
https://api.enterprise.apigee.com/v1/organizations/{org_name}/apiproducts/{apiproduct_Id}
(dan bukan ke API monetisasi).
Menentukan kriteria keberhasilan transaksi menggunakan API
Anda dapat menentukan kriteria keberhasilan transaksi untuk menentukan kapan transaksi berhasil (untuk tujuan pengisian daya). Transaksi yang tidak berhasil (yaitu, yang memenuhi kriteria dalam ekspresi) dicatat, tetapi paket tarif tidak diterapkan. Untuk contoh setelan kriteria keberhasilan transaksi, lihat Contoh cara menetapkan kriteria keberhasilan transaksi dalam kebijakan pencatatan transaksi.
Anda menentukan kriteria keberhasilan transaksi sebagai atribut produk API. Lakukan ini dengan
mengeluarkan permintaan PUT ke API pengelolaan
https://api.enterprise.apigee.com/v1/organizations/{org_name}/apiproducts/{apiproduct_Id}
(dan bukan ke monetization API).
Misalnya, dalam permintaan berikut, transaksi berhasil jika nilai
txProviderStatus
adalah success
(kriteria keberhasilan transaksi yang terkait
spesifikasi yang ditandai).
$ curl -H "Content-Type: application/json" -X PUT -d \ '{ "apiResources": [ "/reserve/{id}**" ], "approvalType": "auto", "attributes": [ { "name": "MINT_TRANSACTION_SUCCESS_CRITERIA", "value": "txProviderStatus == 'OK'" } ], "description": "Payment", "displayName": "Payment", "environments": [ "dev" ], "name": "payment", "proxies": [], "scopes": [ "" ] }' \ "https://api.enterprise.apigee.com/v1/organizations/{org_name}/apiproducts/payment" \ -u email:password
Menentukan atribut khusus menggunakan API
Anda dapat menentukan atribut khusus untuk produk API yang dikenai biaya paket tarif dasar. Sebagai misalnya, jika Anda menyiapkan paket kartu tarif, di mana Anda menagih pengembang untuk setiap transaksi, Anda dapat menetapkan tarif paket berdasarkan atribut khusus seperti jumlah byte yang ditransmisikan dalam transaksi. Saat membuat paket tarif, Anda dapat menentukan satu atau beberapa atribut khusus di tarif yang digunakan untuk rencana tersebut. Namun, produk tertentu dalam paket tarif hanya dapat memiliki satu atribut khusus yang digunakan sebagai dasar tarif paket.
Anda menetapkan atribut khusus sebagai atribut produk API. Lakukan ini dengan mengeluarkan PUT
ke API pengelolaan
https://api.enterprise.apigee.com/v1/organizations/{org_name}/apiproducts/{apiproduct_Id}
(dan bukan ke monetization API).
Untuk setiap atribut khusus yang Anda tambahkan ke produk API, Anda harus menentukan nama dan
nilai atribut. Nama harus dalam format MINT_CUSTOM_ATTRIBUTE_{num}
, dengan
{num} adalah bilangan bulat.
Misalnya, permintaan berikut menetapkan tiga atribut khusus.
$ curl -H "Content-Type: application/json" -X PUT -d \ '{ "apiResources": [ "/reserve/{id}**", "/charge/{id}**" ], "approvalType": "auto", "attributes": [ { "name": "MINT_CUSTOM_ATTRIBUTE_1", "value": "test1" }, { "name": "MINT_CUSTOM_ATTRIBUTE_2", "value": "test2" } ], "name": "payment", "proxies": [], "scopes": [ "" ] }' \ "https://api.enterprise.apigee.com/v1/organizations/{org_name}/apiproducts/payment" \ -u email:password
Contoh penetapan kriteria keberhasilan transaksi dalam transaksi kebijakan perekaman
Tabel berikut memberikan contoh transaksi yang berhasil dan gagal, berdasarkan
ekspresi kriteria keberhasilan transaksi dan nilai txProviderStatus
yang ditampilkan
oleh proxy API. txProviderStatus
adalah variabel internal yang digunakan monetisasi
untuk menentukan keberhasilan transaksi.
Ekspresi kriteria berhasil | Ekspresi yang valid? | Nilai txProviderStatus dari proxy API | Hasil evaluasi |
---|---|---|---|
null |
true | "200" |
false |
"" |
false | "200" |
false |
" " |
false | "200" |
false |
"sdfsdfsdf" |
false | "200" |
false |
"txProviderStatus =='100'" |
true | "200" |
false |
"txProviderStatus =='200'" |
true | "200" |
true |
"true" |
true | "200" |
true |
"txProviderStatus=='OK' OR |
true | "OK" |
true |
"txProviderStatus matches '(OK)|(Not Found)|(Bad Request)'" |
true | "OK" |
true |
"txProviderStatus matches '(OK)|(Not Found)|(Bad Request)'" |
true | "Not Found" |
true |
"txProviderStatus matches '(OK)|(Not Found)|(Bad Request)'" |
true | "Bad Request" |
true |
"(txProviderStatus?:'') matches '(?i)(OK)|(Not Found)|(Bad Request)'" |
true | "Bad Request" |
true |
"(txProviderStatus?:'') matches '(?i)(OK)|(Not Found)|(Bad Request)'" |
true | null |
false |
"txProviderStatus matches '(?i)(OK)|(Not Found)|(Bad Request)'" |
true | "bad request" |
true |
"txProviderStatus matches '(?i)(OK)|(Not Found)|(Bad Request)'" |
true | "Redirect" |
false |
"txProviderStatus matches '(?i)(OK)|(Not Found)|(Bad Request)'" |
true | "heeeelllooo" |
false |
"txProviderStatus matches '(?i)(OK)|(Not Found)|(Bad Request)'" |
true | null |
false |
"txProviderStatus == 100" |
true | "200" |
salah |