Balance transfer

Enables you to transfer money from any of your wallets to a client or merchant target wallet.

You need to specifically be granted access to this API call. Please request permission by emailing support@vivapayments.com.

Request information

POST /api/wallets/{WalletId}/balancetransfer?TargetPersonId={TargetPersonId}

or

POST /api/wallets/{WalletId}/balancetransfer/{TargetWalletId}

Authentication

This API call uses Identity Server authentication.

ParameterDescriptionTypeMandatory
WalletIdThe WalletId the money originate fromLongYes
TargetPersonIdThe PersonId the money are targeted toGuidYes
TargetWalletId(Optionally instead of TargetPersonId) The WalletId the money are targeted toLongYes
AmountThe amount, in cents, to be transferredLongYes
DescriptionA string denoting the reason of transfer. Appears on target person's wallet statementStringNo

Sample request

POST https://demo.vivapayments.com/api/wallets/110357172603/balancetransfer?targetPersonId=792C3376-2C29-4FA2-9952-04202C5CE303
{
   "Amount": 1000,
   "Description": "Description text here"
}

Sample response

{
  "DebitTransactionId": "eee0beff-7cd7-4b10-afae-e423712d52cb",
  "CreditTransactionId": "5f6da41c-5334-462c-877f-96d79a9b8d1e"
}

A valid BalanceTransfer API call will result in http status code 200, along with two TransactionIds, as shown above. Preliminary checks are carried out to ensure that both wallets are valid and active and that the source wallet has sufficient balance to perform the operation.

DebitTransactionId is the transaction that unloads your wallet. CreditTransactionId is the transaction that loads the target person’s wallet.