Skip to main content
POST
Create Vita Sent
Send money from your business wallet to another Vita Wallet user using their registered email address. The amount is deducted from the sending wallet’s balance and credited instantly to the recipient’s Vita Wallet account. This payout is designed for two scenarios:
  1. Merchant’s client → Vita Wallet user. Your business processes a transfer on behalf of a client to a Vita Wallet user.
  2. Master wallet → Vita Wallet user. Your business pays a collaborator, supplier, or partner directly from its master wallet.
Because both sender and recipient are within the Vita ecosystem, transactions settle instantly and reach completed or error with no banking rails involved.
The recipient must already be registered on Vita Wallet with the email provided. If the email does not match an existing Vita user, the transaction returns an error.
This endpoint shares its URL with the other transaction creation flows. The transactions_type field is the discriminator — set it to "vita_sent" for this payout.

Request structure

Request examples

Debit amount from the source wallet, credit the equivalent in currency_received to the recipient.
amount vs amount_destination. Send exactly one of these with a value greater than zero. The other must be 0 or omitted.

Response — Success (201)

Common errors

The email does not correspond to a registered Vita Wallet user.
The quoted price has expired. Request GET /api/businesses/prices again before retrying.
The amount is below the minimum allowed for the source currency.
The order field is already associated with another transaction. Treat it as an idempotency hit and query GET /api/businesses/transactions?order=<id> for the original result.
The source wallet does not have enough balance in currency.

Step by step

1

Validate recipient

Confirm email corresponds to a registered Vita Wallet user.
2

Check prices

Call GET /api/businesses/prices and read the vita_sent structure for currency.
3

Confirm balance

Make sure the origin wallet has enough balance in currency.
4

Submit

POST /api/businesses/transactions with transactions_type: "vita_sent" and a unique order ID.
5

Handle timeouts

If the response times out, never retry with a new order. Query GET /api/businesses/transactions?order=<id> first.