WasabiCard
English
English
  • Welcome
  • Getting Started
    • Update Log
    • Quick Start
  • Basic
    • Common API
    • Account API
    • Bank Card
      • Card Management
      • Cardholder Management
    • Notification Subscription
Powered by GitBook
On this page
  • Notification Template
  • Card transaction notification
  • Card Authorization Transaction Notification
  • Card Authorization Transaction Reversal Notification
  • Card 3ds Transaction Notification
  • Card Holder Transaction Notification
  1. Basic

Notification Subscription

Please provide the callback address from the merchant. Notification will be made after configuration in the merchant backend.

When the transaction has the final result, through webhook configuration, the development platform will send a transaction notification to the merchant. When the acceptance is unsuccessful or the sending fails, the transaction will be sent 7 times with a time interval of1m,5m,20m,1h,12h,24h.

Notification Template

Headers

Name
Value
describtion

Content-Type

application/json

Content Type

X-WSB-CATEGORY

${X-WSB-CATEGORY}

Business identifiers for different notification types

X-WSB-SIGNATURE

${signature}

signature

X-WSB-REQUEST-ID

${requestId}

A unique ID for each request

Card transaction notification

X-WSB-CATEGORY=card_transaction

Request Params

Param
Type
Required
Rmark

orderNo

String

true

Platform order number

merchantOrderNo

String

false

Merchant order number

cardNo

String

false

Bank Card ID

currency

String

true

Currency

amount

BigDecimal

true

Amount

fee

BigDecimal

true

Fee

receivedAmount

BigDecimal

true

Received Amount

receivedCurrency

String

true

Received Currency

type

String

true

Type.

create: Open card;

deposit: Deposit; cancel: Cancel Card; Freeze: Freeze Card; UnFreeze: Unfreeze Card;

status

String

true

Status. wait_process: pending;

processing: processing;

success: success;

fail: failure

remark

String

false

Remark

transactionTime

Long

true

Transaction time. Millisecond timestamp

Request Example

{
    "orderNo": "1852379830190366720",
    "merchantOrderNo": "T1852379826671345664",
    "cardNo": "23424290324234454242",
    "currency": "USD",
    "amount": "15",
    "fee": "0",
    "receivedAmount": "0",
    "receivedCurrency": "USD",
    "type": "create",
    "status": "success",
    "remark": null,
    "transactionTime": 1730476742000
}

Response

When the return structure is as shown below, the callback notification is successful

{
    "success": true,
    "code": 200,
    "msg": "Success",
    "data": null
}

Card Authorization Transaction Notification

X-WSB-CATEGORY=card_auth_transaction The same transaction serial number may be pushed multiple times.

  1. The status may flow. For example, when type=auth, the first push status=authorized (authorized), after the authorization is successfully received, the status=succeed or other status will be pushed again.

  2. The settlement amount and other information will be pushed, and the amount may change. For example, crossBoardFee and settleAmount will change from 0 to a value.

Request Params

Param
Type
Required
Remark

cardNo

String

true

Bank Card ID

tradeNo

String

true

Transaction serial number

originTradeNo

String

false

Origin transaction serial number

currency

String

false

Currency

amount

BigDecimal

false

Amount

authorizedAmount

BigDecimal

true

Authorized amount

authorizedCurrency

String

true

Authorized currency

fee

BigDecimal

true

Authorization fee

feeCurrency

String

false

Authorization fee currency

crossBoardFee

BigDecimal

true

Cross board fee

crossBoardFeeCurrency

String

false

Cross board fee currency

settleAmount

BigDecimal

false

Settlement amount. Pushed after receiving settlement information

settleCurrency

String

false

Settlement currency. Pushed after receiving settlement information

settleDate

Long

false

Settlement date. Millisecond timestamp

merchantName

String

true

Merchant name

type

String

true

type. auth: pre-authorization; correct_auth: pre-authorization correction; correct_refund: refund correction; refund: refund; verification: verification; Void: revocation;

typeStr

String

true

Type remark

status

String

true

Status. authorized: authorized; revoked: revoked; failed: failed; succeed: successful

statusStr

String

true

Status remark

description

String

true

Transaction Description

transactionTime

Long

true

Transaction time. Millisecond timestamp

Response Example

{
    "cardNo": "1242352328671924231",
    "tradeNo": "trans1232435363435463432",
    "originTradeNo": null,
    "currency": "CNY",
    "amount": "16.96",
    "authorizedAmount": "2.45",
    "authorizedCurrency": "USD",
    "fee": "0.5",
    "feeCurrency": "USD",
    "crossBoardFee": "0",
    "crossBoardFeeCurrency": null,
    "settleAmount": 0,
    "settleCurrency": null,
    "settleDate": null,
    "merchantName": "ALP*Mr Rice 1223",
    "type": "auth",
    "typeStr": "授权",
    "status": "authorized",
    "statusStr": "已授权",
    "transactionTime": 1729422898000,
    "description": "Auth"
}
{
    "cardNo": "1242352328671924231",
    "tradeNo": "trans1232435363435463432",
    "originTradeNo": null,
    "currency": "CNY",
    "amount": "16.96",
    "authorizedAmount": "2.45",
    "authorizedCurrency": "USD",
    "fee": "0.5",
    "feeCurrency": "USD",
    "crossBoardFee": "0",
    "crossBoardFeeCurrency": null,
    "settleAmount": "2.45",
    "settleCurrency": "USD",
    "settleDate": 1730995200,
    "merchantName": "ALP*Mr Rice 1223",
    "type": "auth",
    "typeStr": "授权",
    "status": "succeed",
    "statusStr": "成功",
    "transactionTime": 1729422898000,
    "description": "Auth"
}

Response

When the returned structure is as shown below, the callback notification is successful

{
    "success": true,
    "code": 200,
    "msg": "Success",
    "data": null
}

Card Authorization Transaction Reversal Notification

X-WSB-CATEGORY=card_fee_patch The bank will adjust the rate. If the user's bank card balance is insufficient, the merchant's reserve account on the platform will be deducted.

Request Params

Param
Type
Required
Remark

cardNo

String

true

Bank No

tradeNo

String

true

Transaction No

originTradeNo

String

true

Origin Trade No , Authorization transaction in progresstradeNo

currency

String

true

Currency

amount

BigDecimal

true

Amount

type

String

true

card_patch_fee: rate correction; card_patch_cross_border: cross-border fee correction; card_patch_settle: settlement reversal;

deductionSourceFunds

String

true

Source of fund deduction。 wallet: wallet

status

String

true

Status success: success;

statusStr

String

true

Status description

transactionTime

Long

true

Transaction time (unit: milliseconds)

Request Example

{
    "cardNo": "1242352328671924231",
    "tradeNo": "CAF1232435363435463432",
    "originTradeNo": "trans1232435363435463432",
    "currency": "USD",
    "amount": "0.5",
    "type": "card_patch_fee",
    "deductionSourceFunds": "wallet",
    "status": "success",
    "statusStr": "Success",
    "transactionTime": 1729422898000
}

Response

If the returned structure is as shown below, the callback notification is successful.

{
    "success": true,
    "code": 200,
    "msg": "Success",
    "data": null
}

Card 3ds Transaction Notification

X-WSB-CATEGORY=card_3ds

Request Params

Param
Type
Required
Remark

cardNo

String

true

Bank Card ID

tradeNo

String

true

Transaction serial num

originTradeNo

String

false

Origin Transaction serial num

currency

String

true

currency

amount

BigDecimal

true

amount

merchantName

String

true

Merchant Name (Transaction Scenario)

values

String

true

value. The merchant's public key is encrypted and returned, and the merchant's private key decrypt.

type

String

true

Type

third_3ds_otp: 3ds otp;

auth_url: Transaction authorization response url

description

String

false

Transaction Description

transactionTime

Long

true

Transaction time. Millisecond timestamp

expirationTime

Long

false

ExpirationTime time. Millisecond timestamp

Request Example

Example Response

{
    "cardNo": "1242352328671924231",
    "tradeNo": "trans1232435363435463432",
    "originTradeNo": null,
    "currency": "CNY",
    "amount": "16.96",
    "merchantName": "ULTRA MOBILE",
    "values": "ajfon34nNOIN24nafaiw4onnfn0iw32ngfn0IF0Q34NFQFOFAW", //Plain text example: 204566
    "type": "third_3ds_otp",
    "transactionTime": 1729422898000,
    "description": null
}
{
    "cardNo": "1242352328671924231",
    "tradeNo": "trans1232435363435463432",
    "originTradeNo": null,
    "currency": "CNY",
    "amount": "16.96",
    "merchantName": "ULTRA MOBILE",
    "values": "ajfon34nNOIN24nafaiw4onnfn0iw32ngfn0IF0Q34NFQFOFAW",//Plain text example: https://www.google.com
    "type": "auth_url",
    "transactionTime": 1729422898000,
    "description": null,
    "expirationTime": 1729422899000
}

If the returned structure is as shown below, the callback notification is successful.

{
    "success": true,
    "code": 200,
    "msg": "Success",
    "data": null
}

Card Holder Transaction Notification

X-WSB-CATEGORY=card_holder

Request Params

Param
Type
Required
Remark

holderId

Long

true

Holder ID

merchantOrderNo

String

false

Merchant order number

cardTypeId

Long

true

Card Type ID

email

String

true

email

firstName

String

true

firstName

lastName

String

true

lastName

status

String

true

pass_audit: pass reject: reject

respMsg

String

false

remark

Example Response

{
    "holderId": 123456,
    "cardTypeId": 111016,
    "email": "test@test.com",
    "firstName": "first",
    "lastName": "last",
    "status": "reject",
    "respMsg": "邮箱错误"
}

If the returned structure is as shown below, the callback notification is successful.

{
    "success": true,
    "code": 200,
    "msg": "Success",
    "data": null
}

PreviousCardholder Management

Last updated 26 days ago