7. Update AlipayHK Membership card
1、API Path
/api/open/alipay/v1/ipass/pass/manage/updatePass
Sample:https://open.alipay.hk/api/open/alipay/v1/ipass/pass/manage/updatePass
1.1、Request
1.1.1、request header
Field | Type | Requred | Length | Description | Sample |
client-id | String | M | 8 | Client ID | 2110200000000044 |
signature | String | M | 128 | Signature contains key-value pairs that are separated by comma (,). Each key-value pair is an equation, which is a key joined with its value with an equal sign (=). | algorithm=sha256withrsa,keyVersion=2,signature=xxxxxxxxxxxyyyyyyyyyyyyyyzzzzzzzzz== |
encrypt | String | O | 32 | Encrypt contains key-value pairs that are separated by comma (,). Each key-value pair is an equation, which is a key joined with its value with an equal sign (=). | algorithm=rsa, keyVersion=2 |
Content-type | String | M | / | Content-Type indicates the media type of the body of the request, as defined by RFC2616. In which, charset is used for generating/validating signature and encrypting/decrypting content. | application/json; charset=UTF-8 |
request-time | String | M | Request time | 2023-12-18T02:33:31Z |
1.1.2、body
字段 | 类型 | 长度 | 必填 | 说明 | 示例 |
merchantId |
string |
32 |
M | Indicates the unique ID assigned to identify a merchant. Maximum length: 64 characters |
2312314123123123 |
userId |
string |
32 |
C | Unique Id to identify an Alipay User, At least send one ID. userId or openId |
2188200000000000 |
openId | string | 32 | C | Unique Id to identify an Alipay User At least send one ID. userId or openId | fj398457jd8iue98d8w7w93j |
templateCode |
string |
32 |
O | Member card templateId an unique id that represent merchant's membership template Provided by AlipayHK |
|
passId | String | 32 | M | Member card id an unique id that represent user's membership card |
|
status | String | 32 | M | Membership card status:
| UPDATE |
updateDetailType | String | 32 | C | When staus = UPDATE, the allowed updateDetailType is (fixed value): UPDATE_MEMBER_CARD | UPDATE_MEMBER_CARD |
endDate | String | 128 | O | Membership card expired date in millisecond timestamp | 1640970061000 |
dataInfo | JSONObject | O | Data needs to be updated, json object format | { "$points_zh_HK$": 19999, "$points_en_US$": 19999, "$level_zh_HK$":"钻石卡", "$level_en_US$":"Diamond Card" "billNo": "220230343242343442422333222", "lastChangedPoints": "1", "pointsProvider": "ALIPAYHK" } billNo,lastChangePoints,pointsProvider For non-Alipay transaction the above field can be null | |
codeInfo | JSONObject | O | Code information that needs to be updated. Pass a new JSON object info, if the member card code needs to be updated. Warn: To update code infomation needs to confirm with SA team | "codeInfo": { "$codemsg$": "81399940", "$codevalue$": "81399940" } |
2.2、response
2.2.1 header
Fields | Type | Required | Length | Description | Sample |
client-id | String | M | 8 | Client ID | 2110200000000044 |
signature | String | M | 128 | Signature | algorithm=sha256withrsa,keyVersion=2,signature=xxxxxxxxxxxyyyyyyyyyyyyyyzzzzzzzzz== |
encrypt | String | O | 32 | Encrption | algorithm=rsa, keyVersion=2 |
Content-type | String | M | / | Http content type | application/json; charset=UTF-8 |
response-time | String | M | response time | 2023-12-18T02:33:31Z |
2.2.2 Body
Field | Type | Length | Description | Sample |
ResultInfo | Object | / | Result |
ResultInfo
Field | Type | Length | Description | Sample |
resultCode | String | result code | ||
resultStatus | String | result status | F - failed S- success | |
resultMessage | String | result description | SUCCESS |
3.3、Sample
3.3.1、Request Sample
// case1: Update both points & level & code value
{
"merchantId": "2160120036095023",
"userId": "2160220037090534",
"templateCode": "temlate111001",
"bizSerialId": "1111128828",
"bizSerialType": "OUT_PLAT_FORM",
"startDate": 1640970061000,
"endDate": 1640970061000,
"bizCreate": 1640970061000,
"type": "CARD",
"product": "MEMBER_CARD",
"codeInfo": {
"$codemsg$": "81399940",
"$codevalue$": "81399940"
},
"dataInfo": {
"$points_zh_HK$": 19999,
"$points_en_US$": 19999,
"$level_zh_HK$": "鑽石卡",
"$level_en_US$": "Diamond Card"
}
}
// case2: Update points only
{
"merchantId": "2160120036095023",
"userId": "2160220037090534",
"templateCode": "temlate111001",
"bizSerialId": "1111128828",
"bizSerialType": "OUT_PLAT_FORM",
"startDate": 1640970061000,
"endDate": 1640970061000,
"bizCreate": 1640970061000,
"type": "CARD",
"product": "MEMBER_CARD",
"dataInfo": {
"$points_zh_HK$": 19999,
"$points_en_US$": 19999
}
}
// case3: Update level only
{
"merchantId": "2160120036095023",
"userId": "2160220037090534",
"templateCode": "temlate111001",
"bizSerialId": "1111128828",
"bizSerialType": "OUT_PLAT_FORM",
"startDate": 1640970061000,
"endDate": 1640970061000,
"bizCreate": 1640970061000,
"type": "CARD",
"product": "MEMBER_CARD",
"dataInfo": {
"$level_zh_HK$": "鑽石卡",
"$level_en_US$": "Diamond Card"
}
}
// case4: Update status
{
"merchantId":"6228480402564890018",
"userId":"2160400000000135",
"templateCode":"5228480402564890018",
"passId":"2995228480402564890018",
"status":"CLOSED", // Terminate member card, user can check this card from Used/expired tab
}
4.3.2、Response Sample
{
"resultInfo":{
"resultCode": "SUCCESS"
"resultMessage":"success",
"resultStatus": "S"
}
}