Withdrawals

Allow your players to convert USDC from their wallet to a bank account in the US or Europe.

If your players sold Assets on the marketplace, they may receive USDC in their GameShift wallet. You can facilitate a withdrawal of funds -- that is, converting the USDC to a fiat deposit in a player's bank account. Currently, we support common banking rails including ACH and Real Time ACH in the US, SEPA in Europe, and push-to-debit card.

To initiate the withdrawal, you can make a POST http request to https://api.gameshift.dev/nx/users/{reference-id-of-user}/withdrawals.

All requests will return an object containing a "consent URL" that you must navigate the user to in order to complete the transaction.

{
  "consentUrl": "https://app.gameshift.dev/withdraw?id=l1zc069a-cd74-4e49-bdx6-2da324d17952",
  "transactionId": "l1zc069a-cd74-4e49-bdx6-2da324d17952"
}

When the user visits the consent URL, they will be presented with a UI where they can complete the withdrawal.

If the user is attempting to withdraw funds for the first time, they will need to complete a "Know-You-Customer" (KYC) process. This process collects identifying information to ensure compliance with money transmission laws. Once submitted, the information will be reviewed by our payment processor's compliance team. This is generally very fast, but if more information is required from the user, they will be notified by email.

If the user has completed KYC, they will be presented a screen where they can specify the amount they would like to withdraw and complete the interaction. Upon submission, the user will be prompted to approve an on-chain transaction to transfer the necessary funds to our payment processor. This amount will include processing fees. Upon receipt of funds, the processor will initiate the bank deposit for the user's desired withdrawal amount, less processing fees. Completion time will depend on the user's selection and can vary from instant to a few days.