Skip to main content

AsyncAPI for wallet service 0.0.1 documentation

info

In this document, PUB means "publish" and SUB means "subscribe". This refers to the "publish/subscribe" (pub/sub) messaging framework, where "publish" means that the service sends data to Kafka topics, and "subscribe" means the service acts as a consumer that subscribes to specific Kafka topics to receive data.

Table of Contents

Operations

PUB walletProcessing Operation

Accepts one of the following messages:

Message walletDisabled

message is sent when wallet is disabled

Payload
NameTypeDescriptionValueConstraintsNotes
(root)object allOf---additional properties are allowed
payloadobject---additional properties are allowed
payload.walletStatusChangeobject---additional properties are allowed
payload.walletStatusChange.walletIdstringwallet id---
payload.walletStatusChange.userIdstringuser id---
payload.walletStatusChange.statusstringwallet status---
payload.walletStatusChange.previousStatusstringwallet status before change---
payload.x-uid0--"AnonymousSchema1"--
0 (allOf item)object---additional properties are allowed
idstringevent id---
versioninteger----
namestringevent name---
namespacestringevent namespace---
parentNamespacestring----
timestampstring--format (date-time)-
clientIdstringclient id---
userIdstringthe operator id---
traceIdstringtrace id---
sessionIdstringsession id---

Examples of payload (generated)

{
"payload": {
"walletStatusChange": {
"walletId": "string",
"userId": "string",
"status": "string",
"previousStatus": "string"
}
},
"id": "string",
"version": 0,
"name": "string",
"namespace": "string",
"parentNamespace": "string",
"timestamp": "2019-08-24T14:15:22Z",
"clientId": "string",
"userId": "string",
"traceId": "string",
"sessionId": "string"
}

Message walletEnabled

message is sent when wallet is enabled

Payload
NameTypeDescriptionValueConstraintsNotes
(root)object allOf---additional properties are allowed
payloadobject---additional properties are allowed
payload.walletStatusChangeobject---additional properties are allowed
payload.walletStatusChange.walletIdstringwallet id---
payload.walletStatusChange.userIdstringuser id---
payload.walletStatusChange.statusstringwallet status---
payload.walletStatusChange.previousStatusstringwallet status before change---
payload.x-uid0--"AnonymousSchema2"--
0 (allOf item)object---additional properties are allowed
idstringevent id---
versioninteger----
namestringevent name---
namespacestringevent namespace---
parentNamespacestring----
timestampstring--format (date-time)-
clientIdstringclient id---
userIdstringthe operator id---
traceIdstringtrace id---
sessionIdstringsession id---

Examples of payload (generated)

{
"payload": {
"walletStatusChange": {
"walletId": "string",
"userId": "string",
"status": "string",
"previousStatus": "string"
}
},
"id": "string",
"version": 0,
"name": "string",
"namespace": "string",
"parentNamespace": "string",
"timestamp": "2019-08-24T14:15:22Z",
"clientId": "string",
"userId": "string",
"traceId": "string",
"sessionId": "string"
}

Message walletCredited

message is sent when credit wallet

Payload
NameTypeDescriptionValueConstraintsNotes
(root)object allOf---additional properties are allowed
payloadobject---additional properties are allowed
payload.walletBalanceChangeobject---additional properties are allowed
payload.walletBalanceChange.walletIdstringwallet id, this field has been deprecated.--deprecated
payload.walletBalanceChange.namespacestringnamespace---
payload.walletBalanceChange.userIdstringuser id---
payload.walletBalanceChange.currencyCodestringcurrency code---
payload.walletBalanceChange.balanceintegerthe balance after change. this field has been deprecated.-format (int64)deprecated
payload.walletBalanceChange.amountintegerchange amount, positive for both credit & debit-format (int64)-
payload.walletBalanceChange.sourcestringThe credit source only has value if the event is walletCredited.allowed ("PURCHASE", "IAP", "PROMOTION", "ACHIEVEMENT", "REFERRAL_BONUS", "REDEEM_CODE", "REWARD", "GIFT", "REFUND", "DLC", "OTHER", "SELL_BACK", "TRADE", "CONSUME_ENTITLEMENT", "IAP_CHARGEBACK_REVERSED")--
payload.walletBalanceChange.reasonstringreason---
payload.walletBalanceChange.originstringThe credit origin only has value if the event is walletCredited.allowed ("Playstation", "Xbox", "Steam", "Epic", "IOS", "GooglePlay", "Twitch", "Nintendo", "Oculus", "System", "Other")--
payload.walletBalanceChange.detailsarray<object>Details of specific wallet balance changes---
payload.walletBalanceChange.details.originstringwallet originallowed ("Playstation", "Xbox", "Steam", "Epic", "IOS", "GooglePlay", "Twitch", "Nintendo", "Oculus", "System", "Other")--
payload.walletBalanceChange.details.balanceintegerthe balance after change.-format (int64)-
payload.walletBalanceChange.details.amountintegerchange amount, positive for both credit & debit-format (int64)-
payload.walletBalanceChange.metadataobjectwallet balance change metadata, it's from wallet operation request body. only available in AGS version 3.79+--additional properties are allowed
payload.x-uid--"AnonymousSchema3"--
0 (allOf item)object---additional properties are allowed
idstringevent id---
versioninteger----
namestringevent name---
namespacestringevent namespace---
parentNamespacestring----
timestampstring--format (date-time)-
clientIdstringclient id---
userIdstringthe operator id---
traceIdstringtrace id---
sessionIdstringsession id---

Examples of payload (generated)

{
"payload": {
"walletBalanceChange": {
"walletId": "string",
"namespace": "string",
"userId": "string",
"currencyCode": "string",
"balance": 0,
"amount": 0,
"source": "PURCHASE",
"reason": "string",
"origin": "Playstation",
"details": [
{
"origin": "Playstation",
"balance": 0,
"amount": 0
}
],
"metadata": {}
}
},
"id": "string",
"version": 0,
"name": "string",
"namespace": "string",
"parentNamespace": "string",
"timestamp": "2019-08-24T14:15:22Z",
"clientId": "string",
"userId": "string",
"traceId": "string",
"sessionId": "string"
}

Message walletDebited

message is sent when debit wallet

Payload
NameTypeDescriptionValueConstraintsNotes
(root)object allOf---additional properties are allowed
payloadobject---additional properties are allowed
payload.walletBalanceChangeobject---additional properties are allowed
payload.walletBalanceChange.walletIdstringwallet id, this field has been deprecated.--deprecated
payload.walletBalanceChange.namespacestringnamespace---
payload.walletBalanceChange.userIdstringuser id---
payload.walletBalanceChange.currencyCodestringcurrency code---
payload.walletBalanceChange.balanceintegerthe balance after change. this field has been deprecated.-format (int64)deprecated
payload.walletBalanceChange.amountintegerchange amount, positive for both credit & debit-format (int64)-
payload.walletBalanceChange.sourcestringThe credit source only has value if the event is walletCredited.allowed ("PURCHASE", "IAP", "PROMOTION", "ACHIEVEMENT", "REFERRAL_BONUS", "REDEEM_CODE", "REWARD", "GIFT", "REFUND", "DLC", "OTHER", "SELL_BACK", "TRADE", "CONSUME_ENTITLEMENT", "IAP_CHARGEBACK_REVERSED")--
payload.walletBalanceChange.reasonstringreason---
payload.walletBalanceChange.originstringThe credit origin only has value if the event is walletCredited.allowed ("Playstation", "Xbox", "Steam", "Epic", "IOS", "GooglePlay", "Twitch", "Nintendo", "Oculus", "System", "Other")--
payload.walletBalanceChange.detailsarray<object>Details of specific wallet balance changes---
payload.walletBalanceChange.details.originstringwallet originallowed ("Playstation", "Xbox", "Steam", "Epic", "IOS", "GooglePlay", "Twitch", "Nintendo", "Oculus", "System", "Other")--
payload.walletBalanceChange.details.balanceintegerthe balance after change.-format (int64)-
payload.walletBalanceChange.details.amountintegerchange amount, positive for both credit & debit-format (int64)-
payload.walletBalanceChange.metadataobjectwallet balance change metadata, it's from wallet operation request body. only available in AGS version 3.79+--additional properties are allowed
payload.x-uid--"AnonymousSchema4"--
0 (allOf item)object---additional properties are allowed
idstringevent id---
versioninteger----
namestringevent name---
namespacestringevent namespace---
parentNamespacestring----
timestampstring--format (date-time)-
clientIdstringclient id---
userIdstringthe operator id---
traceIdstringtrace id---
sessionIdstringsession id---

Examples of payload (generated)

{
"payload": {
"walletBalanceChange": {
"walletId": "string",
"namespace": "string",
"userId": "string",
"currencyCode": "string",
"balance": 0,
"amount": 0,
"source": "PURCHASE",
"reason": "string",
"origin": "Playstation",
"details": [
{
"origin": "Playstation",
"balance": 0,
"amount": 0
}
],
"metadata": {}
}
},
"id": "string",
"version": 0,
"name": "string",
"namespace": "string",
"parentNamespace": "string",
"timestamp": "2019-08-24T14:15:22Z",
"clientId": "string",
"userId": "string",
"traceId": "string",
"sessionId": "string"
}

Message walledPaid

message is sent when pay with wallet, this event has been deprecated, please use walletPaid event instead of it.

Payload
NameTypeDescriptionValueConstraintsNotes
(root)object allOf---additional properties are allowed
payloadobject---additional properties are allowed
payload.walletBalanceChangeobject---additional properties are allowed
payload.walletBalanceChange.walletIdstringwallet id, this field has been deprecated.--deprecated
payload.walletBalanceChange.namespacestringnamespace---
payload.walletBalanceChange.userIdstringuser id---
payload.walletBalanceChange.currencyCodestringcurrency code---
payload.walletBalanceChange.balanceintegerthe balance after change. this field has been deprecated.-format (int64)deprecated
payload.walletBalanceChange.amountintegerchange amount, positive for both credit & debit-format (int64)-
payload.walletBalanceChange.sourcestringThe credit source only has value if the event is walletCredited.allowed ("PURCHASE", "IAP", "PROMOTION", "ACHIEVEMENT", "REFERRAL_BONUS", "REDEEM_CODE", "REWARD", "GIFT", "REFUND", "DLC", "OTHER", "SELL_BACK", "TRADE", "CONSUME_ENTITLEMENT", "IAP_CHARGEBACK_REVERSED")--
payload.walletBalanceChange.reasonstringreason---
payload.walletBalanceChange.originstringThe credit origin only has value if the event is walletCredited.allowed ("Playstation", "Xbox", "Steam", "Epic", "IOS", "GooglePlay", "Twitch", "Nintendo", "Oculus", "System", "Other")--
payload.walletBalanceChange.detailsarray<object>Details of specific wallet balance changes---
payload.walletBalanceChange.details.originstringwallet originallowed ("Playstation", "Xbox", "Steam", "Epic", "IOS", "GooglePlay", "Twitch", "Nintendo", "Oculus", "System", "Other")--
payload.walletBalanceChange.details.balanceintegerthe balance after change.-format (int64)-
payload.walletBalanceChange.details.amountintegerchange amount, positive for both credit & debit-format (int64)-
payload.walletBalanceChange.metadataobjectwallet balance change metadata, it's from wallet operation request body. only available in AGS version 3.79+--additional properties are allowed
payload.x-uid--"AnonymousSchema5"--
0 (allOf item)object---additional properties are allowed
idstringevent id---
versioninteger----
namestringevent name---
namespacestringevent namespace---
parentNamespacestring----
timestampstring--format (date-time)-
clientIdstringclient id---
userIdstringthe operator id---
traceIdstringtrace id---
sessionIdstringsession id---

Examples of payload (generated)

{
"payload": {
"walletBalanceChange": {
"walletId": "string",
"namespace": "string",
"userId": "string",
"currencyCode": "string",
"balance": 0,
"amount": 0,
"source": "PURCHASE",
"reason": "string",
"origin": "Playstation",
"details": [
{
"origin": "Playstation",
"balance": 0,
"amount": 0
}
],
"metadata": {}
}
},
"id": "string",
"version": 0,
"name": "string",
"namespace": "string",
"parentNamespace": "string",
"timestamp": "2019-08-24T14:15:22Z",
"clientId": "string",
"userId": "string",
"traceId": "string",
"sessionId": "string"
}

Message walledExpired

message is sent when wallet balance is expired, this event has been deprecated, please use walletExpired event instead of it.

Payload
NameTypeDescriptionValueConstraintsNotes
(root)object allOf---additional properties are allowed
payloadobject---additional properties are allowed
payload.walletBalanceChangeobject---additional properties are allowed
payload.walletBalanceChange.walletIdstringwallet id, this field has been deprecated.--deprecated
payload.walletBalanceChange.namespacestringnamespace---
payload.walletBalanceChange.userIdstringuser id---
payload.walletBalanceChange.currencyCodestringcurrency code---
payload.walletBalanceChange.balanceintegerthe balance after change. this field has been deprecated.-format (int64)deprecated
payload.walletBalanceChange.amountintegerchange amount, positive for both credit & debit-format (int64)-
payload.walletBalanceChange.sourcestringThe credit source only has value if the event is walletCredited.allowed ("PURCHASE", "IAP", "PROMOTION", "ACHIEVEMENT", "REFERRAL_BONUS", "REDEEM_CODE", "REWARD", "GIFT", "REFUND", "DLC", "OTHER", "SELL_BACK", "TRADE", "CONSUME_ENTITLEMENT", "IAP_CHARGEBACK_REVERSED")--
payload.walletBalanceChange.reasonstringreason---
payload.walletBalanceChange.originstringThe credit origin only has value if the event is walletCredited.allowed ("Playstation", "Xbox", "Steam", "Epic", "IOS", "GooglePlay", "Twitch", "Nintendo", "Oculus", "System", "Other")--
payload.walletBalanceChange.detailsarray<object>Details of specific wallet balance changes---
payload.walletBalanceChange.details.originstringwallet originallowed ("Playstation", "Xbox", "Steam", "Epic", "IOS", "GooglePlay", "Twitch", "Nintendo", "Oculus", "System", "Other")--
payload.walletBalanceChange.details.balanceintegerthe balance after change.-format (int64)-
payload.walletBalanceChange.details.amountintegerchange amount, positive for both credit & debit-format (int64)-
payload.walletBalanceChange.metadataobjectwallet balance change metadata, it's from wallet operation request body. only available in AGS version 3.79+--additional properties are allowed
payload.x-uid0--"AnonymousSchema6"--
0 (allOf item)object---additional properties are allowed
idstringevent id---
versioninteger----
namestringevent name---
namespacestringevent namespace---
parentNamespacestring----
timestampstring--format (date-time)-
clientIdstringclient id---
userIdstringthe operator id---
traceIdstringtrace id---
sessionIdstringsession id---

Examples of payload (generated)

{
"payload": {
"walletBalanceChange": {
"walletId": "string",
"namespace": "string",
"userId": "string",
"currencyCode": "string",
"balance": 0,
"amount": 0,
"source": "PURCHASE",
"reason": "string",
"origin": "Playstation",
"details": [
{
"origin": "Playstation",
"balance": 0,
"amount": 0
}
],
"metadata": {}
}
},
"id": "string",
"version": 0,
"name": "string",
"namespace": "string",
"parentNamespace": "string",
"timestamp": "2019-08-24T14:15:22Z",
"clientId": "string",
"userId": "string",
"traceId": "string",
"sessionId": "string"
}

Message walletTransactionCancelled

message is sent when cancelling wallet transaction

Payload
NameTypeDescriptionValueConstraintsNotes
(root)object allOf---additional properties are allowed
payloadobject---additional properties are allowed
payload.walletBalanceChangeobject---additional properties are allowed
payload.walletBalanceChange.walletIdstringwallet id, this field has been deprecated.--deprecated
payload.walletBalanceChange.namespacestringnamespace---
payload.walletBalanceChange.userIdstringuser id---
payload.walletBalanceChange.currencyCodestringcurrency code---
payload.walletBalanceChange.balanceintegerthe balance after change. this field has been deprecated.-format (int64)deprecated
payload.walletBalanceChange.amountintegerchange amount, positive for both credit & debit-format (int64)-
payload.walletBalanceChange.sourcestringThe credit source only has value if the event is walletCredited.allowed ("PURCHASE", "IAP", "PROMOTION", "ACHIEVEMENT", "REFERRAL_BONUS", "REDEEM_CODE", "REWARD", "GIFT", "REFUND", "DLC", "OTHER", "SELL_BACK", "TRADE", "CONSUME_ENTITLEMENT", "IAP_CHARGEBACK_REVERSED")--
payload.walletBalanceChange.reasonstringreason---
payload.walletBalanceChange.originstringThe credit origin only has value if the event is walletCredited.allowed ("Playstation", "Xbox", "Steam", "Epic", "IOS", "GooglePlay", "Twitch", "Nintendo", "Oculus", "System", "Other")--
payload.walletBalanceChange.detailsarray<object>Details of specific wallet balance changes---
payload.walletBalanceChange.details.originstringwallet originallowed ("Playstation", "Xbox", "Steam", "Epic", "IOS", "GooglePlay", "Twitch", "Nintendo", "Oculus", "System", "Other")--
payload.walletBalanceChange.details.balanceintegerthe balance after change.-format (int64)-
payload.walletBalanceChange.details.amountintegerchange amount, positive for both credit & debit-format (int64)-
payload.walletBalanceChange.metadataobjectwallet balance change metadata, it's from wallet operation request body. only available in AGS version 3.79+--additional properties are allowed
payload.x-uid0--"AnonymousSchema7"--
0 (allOf item)object---additional properties are allowed
idstringevent id---
versioninteger----
namestringevent name---
namespacestringevent namespace---
parentNamespacestring----
timestampstring--format (date-time)-
clientIdstringclient id---
userIdstringthe operator id---
traceIdstringtrace id---
sessionIdstringsession id---

Examples of payload (generated)

{
"payload": {
"walletBalanceChange": {
"walletId": "string",
"namespace": "string",
"userId": "string",
"currencyCode": "string",
"balance": 0,
"amount": 0,
"source": "PURCHASE",
"reason": "string",
"origin": "Playstation",
"details": [
{
"origin": "Playstation",
"balance": 0,
"amount": 0
}
],
"metadata": {}
}
},
"id": "string",
"version": 0,
"name": "string",
"namespace": "string",
"parentNamespace": "string",
"timestamp": "2019-08-24T14:15:22Z",
"clientId": "string",
"userId": "string",
"traceId": "string",
"sessionId": "string"
}

Message walletPaid

message is sent when pay with wallet, only available in AGS version 3.79+

Payload
NameTypeDescriptionValueConstraintsNotes
(root)object allOf---additional properties are allowed
payloadobject---additional properties are allowed
payload.walletBalanceChangeobject---additional properties are allowed
payload.walletBalanceChange.walletIdstringwallet id, this field has been deprecated.--deprecated
payload.walletBalanceChange.namespacestringnamespace---
payload.walletBalanceChange.userIdstringuser id---
payload.walletBalanceChange.currencyCodestringcurrency code---
payload.walletBalanceChange.balanceintegerthe balance after change. this field has been deprecated.-format (int64)deprecated
payload.walletBalanceChange.amountintegerchange amount, positive for both credit & debit-format (int64)-
payload.walletBalanceChange.sourcestringThe credit source only has value if the event is walletCredited.allowed ("PURCHASE", "IAP", "PROMOTION", "ACHIEVEMENT", "REFERRAL_BONUS", "REDEEM_CODE", "REWARD", "GIFT", "REFUND", "DLC", "OTHER", "SELL_BACK", "TRADE", "CONSUME_ENTITLEMENT", "IAP_CHARGEBACK_REVERSED")--
payload.walletBalanceChange.reasonstringreason---
payload.walletBalanceChange.originstringThe credit origin only has value if the event is walletCredited.allowed ("Playstation", "Xbox", "Steam", "Epic", "IOS", "GooglePlay", "Twitch", "Nintendo", "Oculus", "System", "Other")--
payload.walletBalanceChange.detailsarray<object>Details of specific wallet balance changes---
payload.walletBalanceChange.details.originstringwallet originallowed ("Playstation", "Xbox", "Steam", "Epic", "IOS", "GooglePlay", "Twitch", "Nintendo", "Oculus", "System", "Other")--
payload.walletBalanceChange.details.balanceintegerthe balance after change.-format (int64)-
payload.walletBalanceChange.details.amountintegerchange amount, positive for both credit & debit-format (int64)-
payload.walletBalanceChange.metadataobjectwallet balance change metadata, it's from wallet operation request body. only available in AGS version 3.79+--additional properties are allowed
0 (allOf item)object---additional properties are allowed
idstringevent id---
versioninteger----
namestringevent name---
namespacestringevent namespace---
parentNamespacestring----
timestampstring--format (date-time)-
clientIdstringclient id---
userIdstringthe operator id---
traceIdstringtrace id---
sessionIdstringsession id---

Examples of payload (generated)

{
"payload": {
"walletBalanceChange": {
"walletId": "string",
"namespace": "string",
"userId": "string",
"currencyCode": "string",
"balance": 0,
"amount": 0,
"source": "PURCHASE",
"reason": "string",
"origin": "Playstation",
"details": [
{
"origin": "Playstation",
"balance": 0,
"amount": 0
}
],
"metadata": {}
}
},
"id": "string",
"version": 0,
"name": "string",
"namespace": "string",
"parentNamespace": "string",
"timestamp": "2019-08-24T14:15:22Z",
"clientId": "string",
"userId": "string",
"traceId": "string",
"sessionId": "string"
}

Message walletExpired

message is sent when wallet balance is expired, only available in AGS version 3.79+

Payload
NameTypeDescriptionValueConstraintsNotes
(root)object allOf---additional properties are allowed
payloadobject---additional properties are allowed
payload.walletBalanceChangeobject---additional properties are allowed
payload.walletBalanceChange.walletIdstringwallet id, this field has been deprecated.--deprecated
payload.walletBalanceChange.namespacestringnamespace---
payload.walletBalanceChange.userIdstringuser id---
payload.walletBalanceChange.currencyCodestringcurrency code---
payload.walletBalanceChange.balanceintegerthe balance after change. this field has been deprecated.-format (int64)deprecated
payload.walletBalanceChange.amountintegerchange amount, positive for both credit & debit-format (int64)-
payload.walletBalanceChange.sourcestringThe credit source only has value if the event is walletCredited.allowed ("PURCHASE", "IAP", "PROMOTION", "ACHIEVEMENT", "REFERRAL_BONUS", "REDEEM_CODE", "REWARD", "GIFT", "REFUND", "DLC", "OTHER", "SELL_BACK", "TRADE", "CONSUME_ENTITLEMENT", "IAP_CHARGEBACK_REVERSED")--
payload.walletBalanceChange.reasonstringreason---
payload.walletBalanceChange.originstringThe credit origin only has value if the event is walletCredited.allowed ("Playstation", "Xbox", "Steam", "Epic", "IOS", "GooglePlay", "Twitch", "Nintendo", "Oculus", "System", "Other")--
payload.walletBalanceChange.detailsarray<object>Details of specific wallet balance changes---
payload.walletBalanceChange.details.originstringwallet originallowed ("Playstation", "Xbox", "Steam", "Epic", "IOS", "GooglePlay", "Twitch", "Nintendo", "Oculus", "System", "Other")--
payload.walletBalanceChange.details.balanceintegerthe balance after change.-format (int64)-
payload.walletBalanceChange.details.amountintegerchange amount, positive for both credit & debit-format (int64)-
payload.walletBalanceChange.metadataobjectwallet balance change metadata, it's from wallet operation request body. only available in AGS version 3.79+--additional properties are allowed
0 (allOf item)object---additional properties are allowed
idstringevent id---
versioninteger----
namestringevent name---
namespacestringevent namespace---
parentNamespacestring----
timestampstring--format (date-time)-
clientIdstringclient id---
userIdstringthe operator id---
traceIdstringtrace id---
sessionIdstringsession id---

Examples of payload (generated)

{
"payload": {
"walletBalanceChange": {
"walletId": "string",
"namespace": "string",
"userId": "string",
"currencyCode": "string",
"balance": 0,
"amount": 0,
"source": "PURCHASE",
"reason": "string",
"origin": "Playstation",
"details": [
{
"origin": "Playstation",
"balance": 0,
"amount": 0
}
],
"metadata": {}
}
},
"id": "string",
"version": 0,
"name": "string",
"namespace": "string",
"parentNamespace": "string",
"timestamp": "2019-08-24T14:15:22Z",
"clientId": "string",
"userId": "string",
"traceId": "string",
"sessionId": "string"
}