Overview
A withdrawal transfers funds from the merchant’s account to a user’s (customer’s) account, without any connection to a previous transaction; for example, to pay out winnings.
Merchants can use Nuvei Web SDK methods to submit and manage withdrawal requests for existing users:
- Submit a withdrawal request.
- Retrieve a list of a user’s pending withdrawal requests.
- Cancel an existing withdrawal request.
Submit a Withdrawal Request
To submit a withdrawal request for an existing user, the merchant sends a submitWdRequest() request with its required parameters including upoId, amount, and userId.
Example submitWdRequest() Request
let withdrawal = window.websdk({
sessionToken: "7db38b03-c1ae-45fc-8fce-8a55cfa4a6e0", // => received from openOrder
env: "env", // => "prod", "int", "qa"
merchantSiteId: "<your merchantSiteId>", // => assigned by Nuvei
merchantId: "<your merchantId>" // => assigned by Nuvei
});
withdrawal.submitWdRequest({
merchantId: "8256777005602846935",
merchantSiteId: "112106",
upoId: 91963498,
amount: 115.20,
currency: 'USD',
merchantUniqueId: '12345',
merchantWDRequestId: '123456789',
userId: '850512345',
userDetails: {
email: '[email protected]'
},
userAccountId: 'test',
userTokenId: '23081114722',
customField1: 'test'
}, function(result) {
console.log(result);
});
The response and DMN include wdRequestStatus indicating the current status of the withdrawal request, along with wdRequestId.
Retrieve a List of Pending Withdrawal Requests
To retrieve a list of an existing user’s pending withdrawal requests to show to the user, the merchant sends a getWdRequests() request with its required parameters, including userTokenId.
Example getWdRequests() Request
var websdkInst = websdk({
merchantSiteId: "<your merchantSiteId>", // => assigned by Nuvei
merchantId: "<your merchantId>", // => assigned by Nuvei
env: "env", // => "prod", "int", "qa"
sessionToken: sessionToken,
});
websdkInst.getWdRequests({
userTokenId: "<unique customer identifier in merchant system>"
},
function(result) {
console.log(result);
});
The response and DMN include a withdrawalRequests array with details for each withdrawal request, including wdRequestId.
Cancel a Withdrawal Request
To cancel an existing withdrawal request, the merchant sends a cancelWdRequest() request with its required parameters, including userTokenId and wdRequestId.
Example getWdRequests() Request
var websdkInst = websdk({
sessionToken: "sessionToken", // => received from openOrder
env: "env", // => "prod", "int", "qa"
merchantSiteId: "merchantSiteId", // => assigned by Nuvei
merchantId: "merchantId" // => assigned by Nuvei
});
websdkInst.cancelWdRequest({
userTokenId: "<unique customer identifier in merchant system>",
wdRequestId: 8675309 // => from submitWdRequest() DMN
},
function(result) {
console.log(result);
});
The response and DMN include wdRequestStatus indicating the current status of the withdrawal request.