CaaS
📢Infinity Card Notification
Card
Event Types
| Event Type | Description |
|---|---|
| CARD.CREATED | card created. |
| CARD.UPDATED | card info updated |
| CARD.DELETED | card deleted |
Example
Create a infinity card, you should see a notification message on your local server shell that looks like the following.
{
"apiVersion": "v3",
"code": "000000",
"createTime": "1781165157031",
"eventType": "CARD.CREATED",
"id": "4a2c00ee-79e9-4a58-bd59-a2c101110447",
"message": "",
"resource": "{\n \"id\" : \"7013b62c-3804-4b6b-aab4-ab969084c50d\",\n \"accountId\" : \"579e92e6-e126-4d2b-b464-54897a414080\",\n \"status\" : \"ACTIVE\",\n \"currency\" : \"USD\",\n \"bin\" : \"45492416\",\n \"userName\" : \"Yue Huang\",\n \"createTime\" : \"1781165154071\",\n \"cardLastFour\" : \"1812\",\n \"billingAddress\" : {\n \"addressLine1\" : \"ghgf hgfhf\",\n \"addressLine2\" : \"\",\n \"city\" : \"Florida\",\n \"country\" : \"US\",\n \"postalCode\" : \"354344\",\n \"state\" : \"FL\"\n },\n \"label\" : \"默认\",\n \"balanceId\" : \"818d1aa9-0456-4093-99a9-09b65c19697f\",\n \"budgetId\" : \"5726a59f-547c-429f-882c-14c75362734a\",\n \"cardMode\" : \"VIRTUAL_CARD\",\n \"transactionLimits\" : [ {\n \"type\" : \"LIFETIME\",\n \"value\" : \"1.0\",\n \"currency\" : \"USD\"\n } ],\n \"cardStatusChangeRecordList\" : [ {\n \"userId\" : \"4fa1c488-c668-4f44-811c-b599b53deec0\",\n \"accountId\" : \"579e92e6-e126-4d2b-b464-54897a414080\",\n \"cardId\" : \"7013b62c-3804-4b6b-aab4-ab969084c50d\",\n \"operationTime\" : \"1781165156713\",\n \"beforeStatus\" : \"\",\n \"afterStatus\" : \"Active\",\n \"reasonCode\" : \"7001\"\n } ]\n}"
}The resource payload will be JSON format of Card Object.
Event Types
| Event Type | Description |
|---|---|
| CARD.SETTING.UPDATED | ard Payment Mode Updated |
Example
{
"apiVersion": "v3",
"code": "000000",
"createTime": "1759391981658",
"eventType": "CARD.SETTING.UPDATED",
"id": "bd7dcb29-0c1e-472e-8c11-68e1a7e4385e",
"message": "",
"resource": "{\"accountId\":\"bccc7727-4748-4af9-b8e9-f947e920352a\",\"cardId\":\"5e465c7d-d61d-4603-9b4c-8071adf038ab\",\"transactionMode\":[\"CREDENTIAL\"]}"
}Event Types
| Event Type | Description |
|---|---|
| CARD.SCENE.UPDATED | Card Consumption Scene Updated |
Example
{
"apiVersion": "v3",
"code": "000000",
"createTime": "1780456025285",
"eventType": "CARD.SCENE.UPDATED",
"id": "f37100d0-9188-47d0-909d-3c258f0e3dfc",
"message": "",
"resource": "{\n \"id\" : \"9e174c39-841b-4cc3-a0e6-f6bba1b8a87a\",\n \"accountId\" : \"579e92e6-e126-4d2b-b464-54897a414080\",\n \"scenes\" : [41 ],\n \"type\" : \"WHITE_LIST\"\n}"
}Event Type
| Event Type | Description |
|---|---|
| CARD.BALANCE.NEGATIVE | card balance negative |
Example
When transaction occurs, you should see a notification message on your local server shell that looks like the following.
{
"id": "6a94b9c7-40d6-4007-a5d0-a96d714a1108",
"eventType": "CARD.BALANCE.NEGATIVE",
"code": "000000",
"message": "",
"resource": "...",
"apiVersion": "v3",
"createTime":"1756879969964"
}Event Types
| Event Type | Description |
|---|---|
| CARD.BALANCE.NEGATIVE | Negative Card Balance |
Example
{
"apiVersion": "v3",
"code": "000000",
"createTime": "1781167872291",
"eventType": "CARD.BALANCE.NEGATIVE",
"id": "c08b5cb7-5e33-45e9-95ae-2517ca000913",
"message": "",
"resource": "{\"card\":{\"accountId\":\"743ee88e-dfcc-4946-ad91-9b25470eec93\",\"balanceId\":\"510e6b2d-305a-4141-b00a-b26fa8159aff\",\"bin\":\"40024200\",\"cardLastFour\":\"2069\",\"cardMode\":\"VIRTUAL_CARD\",\"createTime\":\"1775101096618\",\"currency\":\"USD\",\"id\":\"774161a0-13e6-4095-9ca8-5c1eb042b83c\",\"label\":\"默认\",\"status\":\"ACTIVE\",\"transactionLimits\":[{\"currency\":\"USD\",\"type\":\"NA\"}],\"userName\":\"Ming Fan\"},\"cardWallet\":{\"accountId\":\"743ee88e-dfcc-4946-ad91-9b25470eec93\",\"available\":\"-6.00\",\"createTime\":\"1775101096618\",\"currency\":\"USD\",\"frozen\":\"0.00\",\"id\":\"510e6b2d-305a-4141-b00a-b26fa8159aff\",\"objectType\":2,\"walletType\":2}}"
}The resource payload will be JSON format of Card Balance Negative Object.
Card Transaction
Event Types
| Event Type | Description |
|---|---|
| CARD_TRANSACTION.CREATED | card transaction created. |
| CARD_TRANSACTION.UPDATED | card transaction updated. |
Example
When transaction occurs, you should see a notification message on your local server shell that looks like the following.
{
"apiVersion": "v3",
"code": "000000",
"createTime": "1781166485610",
"eventType": "CARD_TRANSACTION.CREATED",
"id": "f042080e-67c2-482f-a903-6690db023988",
"message": "",
"resource": "{\"accountId\":\"579e92e6-e126-4d2b-b464-54897a414080\",\"amount\":\"10.0\",\"businessCodeList\":[],\"cardId\":\"7013b62c-3804-4b6b-aab4-ab969084c50d\",\"cardTransactionId\":\"37cc04e2-9d92-4492-a280-684e9f77aaf6\",\"clientTransactionId\":\"2064988012430352386\",\"createTime\":\"1781166483835\",\"currency\":\"USD\",\"detail\":\"apple CA US\",\"direction\":2,\"fee\":\"2.2\",\"feeDetails\":[{\"amount\":\"0.2\",\"currency\":\"USD\",\"feeType\":0},{\"amount\":\"2\",\"currency\":\"USD\",\"feeType\":8}],\"id\":\"b30d3f80-62b1-423e-b575-ab46774e3cb0\",\"mcc\":\"4812\",\"mccCategory\":\"\",\"merchantCity\":\"CA\",\"merchantCountry\":\"US\",\"merchantMid\":\"784959000762203\",\"merchantName\":\"apple\",\"merchantState\":\"\",\"merchantZipcode\":\"\",\"remark\":\"\",\"status\":\"PENDING\",\"transactionAmount\":\"10.0\",\"transactionCurrency\":\"USD\",\"transactionDisplayId\":\"2606111628135775\",\"transactionScope\":0,\"transactionTime\":\"1781166482442\",\"type\":1}"
}The resource payload will be JSON format of Card Transaction Object.
For detailed definitions of code returned in card transaction notifications, please refer to the Card Business Code Reference.
📢Physical Card Notification
Physical Card
Event Types
| Event Type | Description |
|---|---|
| PHYSICAL_CARD.ACTIVATED | physical card activated |
Example
Activate a physical card, you should see a notification message on your local server shell that looks like the following.
{
"apiVersion": "v3",
"code": "000000",
"createTime": "1781145844178",
"eventType": "PHYSICAL_CARD.ACTIVATED",
"id": "2c71180d-92ad-4790-bfdb-b4873c677c4b",
"message": "",
"resource": "{\n \"id\" : \"4deccef3-0caf-4000-bd41-adca78a3eb8c\",\n \"accountId\" : \"de758323-5263-4312-98d7-df47a1f1e8df\",\n \"cardId\" : \"a278392e-9d89-4bb9-86aa-5a29a3989fc8\",\n \"shippingAddress\" : {\n \"addressLine1\" : \"Room 101, Road 1\",\n \"addressLine2\" : \"Building A\",\n \"city\" : \"Shanghai\",\n \"country\" : \"CN\",\n \"postalCode\" : \"200000\",\n \"state\" : \"Shanghai\"\n },\n \"phoneNumber\" : \"13800138000\",\n \"email\" : \"[email protected]\",\n \"phoneCountryCode\" : \"86\",\n \"firstName\" : \"San\",\n \"lastName\" : \"Zhang\",\n \"batchNumber\" : \"71f9c9ec-9613-4f34-83a3-419e3e9cd9cf\",\n \"cardStyle\" : \"Plastic\"\n}"
}The resource payload will be JSON format of Physical Card Object.
Event Types
| Event Type | Description |
|---|---|
| PHYSICAL_CARD.SHIPPING | physical card shipping information |
Example
{
"apiVersion": "v3",
"code": "000000",
"createTime": "1777543510699",
"eventType": "PHYSICAL_CARD.SHIPPING",
"id": "a9e27312-64a5-4d25-b171-f4794f08b95d",
"message": "",
"resource": "{\"trackingUrl\":\"www.ewr33.com\",\"cardId\":\"de83c53b-adc3-4e35-b548-175667c20134\",\"expressCompany\":\"顺丰\",\"trackingNumber\":\"sf24332\"}"
}Event Types
| Event Type | Description |
|---|---|
| PHYSICAL_CARD.VERIFY | physical card verify |
Example
{
"apiVersion": "v3",
"code": "000000",
"createTime": "1764830001154",
"eventType": "PHYSICAL_CARD.VERIFY",
"id": "92dd0b86-8040-4728-89c6-faefc8293c6b",
"message": "",
"resource": "{\"cardId\":\"ca3a6f77-307b-49aa-ba8c-1d0f9ebebd4c\",\"firstName\":\"Knope\",\"lastName\":\"Leslie\",\"status\":\"Success\",\"reason\":\"\",\"accountId\":\"78f4348c-cf66-4578-9ecc-21ace7b96148\"}"
}📢Infinity Account Transaction Notification
Infinity Account
Event Types
| Event Type | Description |
|---|---|
| INFINITY_ACCOUNT_WALLET_TRANSACTION.CREATED | infinity account wallet transaction created. |
Example
Create an account wallet transaction, you should see a notification message on your local server shell that looks like the following.
{
"apiVersion": "v3",
"code": "000000",
"createTime": "1781159808233",
"eventType": "INFINITY_ACCOUNT_WALLET_TRANSACTION.CREATED",
"id": "f56752b8-1d53-44e9-afe3-2f8e6c40b24f",
"message": "",
"resource": "{\n \"id\" : \"3d9a70f7-e676-47e6-add7-f8b3c13de79a\",\n \"accountId\" : \"2cdf2484-26df-43e1-847b-72d5f5cda6ec\",\n \"amount\" : \"0\",\n \"fee\" : \"0\",\n \"type\" : 1,\n \"status\" : \"CLOSED\",\n \"createTime\" : \"1781159807483\",\n \"transactionDisplayId\" : \"2606111436135735\",\n \"direction\" : 2\n}"
}The resource payload will be JSON format of InfinityAccountTransaction Resource.
📢Budget
Budget
Event Types
| Event Type | Description |
|---|---|
| BUDGET.CREATED | budget created. |
| BUDGET.UPDATED | budget info updated |
| BUDGET.DELETED | budget deleted |
Example
Create a budget, you should see a notification message on your local server shell that looks like the following.
{
"apiVersion": "v3",
"code": "000000",
"createTime": "1781066254990",
"eventType": "BUDGET.CREATED",
"id": "5d6705e1-1a27-4c9e-9fd4-a6dbfbde55c6",
"message": "",
"resource": "{\n \"id\" : \"9937ff99-be76-49a3-9042-b6e9bb7e7506\",\n \"accountId\" : \"6adc6355-84a5-4982-b7a9-3eb2e35fc531\",\n \"createTime\" : \"1781066254450\",\n \"name\" : \"CHUNFANG FU:35571565\",\n \"balance\" : {\n \"id\" : \"7a2b3fce-6edc-4cd1-b547-f7804bce3ad7\",\n \"available\" : \"0.00000000\",\n \"currency\" : \"USD\"\n },\n \"status\" : \"ACTIVE\"\n}"
}The resource payload will be JSON format of Budget Object.
📢Budget Transaction
Event Types
| Event Type | Description |
|---|---|
| BUDGET_TRANSACTION.CREATED | budget transaction created. |
Example
{
"apiVersion": "v3",
"code": "000000",
"createTime": "1781167051847",
"eventType": "BUDGET_TRANSACTION.CREATED",
"id": "bfee2abc-b243-4a3f-939f-c88f217f21c0",
"message": "",
"resource": "{\n \"id\" : \"31e5d928-a5b5-49e0-97f1-180349576893\",\n \"accountId\" : \"579e92e6-e126-4d2b-b464-54897a414080\",\n \"budgetId\" : \"9cf3ab0e-25e9-4d0e-b424-6a96ee6a14bf\",\n \"amount\" : \"11\",\n \"fee\" : \"0\",\n \"feeDetails\" : [ ],\n \"clientTransactionId\" : \"MERCHANT__CREATE_579e92e6-e126-4d2b-b464-54897a414080_9cf3ab0e-25e9-4d0e-b424-6a96ee6a14bf_1781167049650\",\n \"transactionDisplayId\" : \"2606111637135780\",\n \"type\" : \"0\",\n \"status\" : \"CLOSED\",\n \"createTime\" : \"1781167049915\",\n \"transactionCurrency\" : \"USD\",\n \"transactionAmount\" : \"11\",\n \"direction\" : 1\n}"
}The resource payload will be JSON format of Budget Transaction Object.
📢Cardholder
Event Types
| Event Type | Description |
|---|---|
| CARDHOLDER.CREATED | cardholder created. |
| CARDHOLDER.UPDATED | cardholder info updated |
| CARDHOLDER.DELETED | cardholder deleted |
Example
Create a cardholder, you should see a notification message on your local server shell that looks like the following.
{
"apiVersion": "v3",
"code": "000000",
"createTime": "1780475069474",
"eventType": "CARDHOLDER.CREATED",
"id": "fd030ee8-8496-45ae-8dc2-274404844fa6",
"message": "",
"resource": "{\n \"id\" : \"2062088010615816194\",\n \"status\" : \"PENDING\",\n \"accountId\" : \"579e92e6-e126-4d2b-b464-54897a414080\",\n \"firstName\" : \"xu\",\n \"lastName\" : \"mingru\",\n \"userName\" : \"xu mingru\",\n \"email\" : \"[email protected]\",\n \"phoneCountryCode\" : \"86\",\n \"phoneNumber\" : \"19921638716\",\n \"dob\" : \"2001-01-01\",\n \"nationality\" : \"EE\",\n \"cardholderTier\" : \"CONSUMER\",\n \"businessModel\" : \"B2C_MOR\",\n \"address\" : {\n \"addressLine1\" : \"pingan jinrongzhongxin\",\n \"addressLine2\" : \"1801\",\n \"postalCode\" : \"321000\",\n \"country\" : \"USA\",\n \"state\" : \"zj\",\n \"city\" : \"hangzhou\"\n },\n \"cardBinList\" : [ \"1871360899013545985\", \"1871360596906217473\", \"1871360464026470000\", \"1871360496083530000\" ]\n}"
}The resource payload will be JSON format of Cardholder Object.
📢 3DS Notification
Event Types
| Event Type | Description |
|---|---|
| CARD.3DS.OTP | This event sends OTP details for a card consumption transaction, including card info, amount, and the one-time code, to enable secure verification. |
Resource Object
The resource payload will be a 3DS Object.
Example Payload
{
"apiVersion": "v3",
"code": "000000",
"createTime": "1773721365670",
"eventType": "CARD.3DS.OTP",
"id": "15126017-57c0-4ac3-9f10-aedb6cc58788",
"message": "",
"resource": "{\"cardId\":\"ef02d622-5066-42b4-b103-9131c458bdf0\",\"accountId\":\"bccc7727-4748-4af9-b8e9-f947e920352a\",\"otp\":\"661957\",\"currency\":\"USD\",\"amount\":0,\"cardNumber\":\"4938-75xx-xxxx-4673\",\"detail\":\"Wallet binding\",\"expireTime\":\"420\"}"
}📢 Card Negative Notification
Event Type
| Event | Event Type | Schedule | Description |
|---|---|---|---|
| Negative balance report | NEGATIVE-BILLING-DETAILS | 1st & 15th of each month | Detects negative balances (card balance & budget balance) from the previous cycle provides detailed reports in XLSX format. |
| Auto-deduction result | NEGATIVE-CHARGE-BILLING-DETAILS | 2nd & 16th of each month | Automatically deducts funds from your Infinity Account to settle negative balances and provides summaries and detailed reports for fully settled, partially settled, and unsettled balances. |
| Retry charge notification | CARD-CHARGE | Every 2 hours | Automatically retries unsettled orders — fully settles if balance is sufficient, partially settles otherwise and retries later. |
| Daily outstanding summary | DAILY-NEGATIVE-ACCOUNT-REPORT | Daily | Provides an account-level overview of outstanding negative balances. |
The resource field refers to Negative Resource.
Sample Payload
{
"id": "6a94b9c7-40d6-4007-a5d0-a96d714a1108",
"code": "000000",
"message": "",
"createTime": "1757649535314",
"eventType": "DAILY-NEGATIVE-ACCOUNT-REPORT",
"resource": "..."
}