Skip to main content
Payins — Vita Wallet Business API
The Payins feature lets your business generate shareable payment links to collect funds from customers — for products, services, subscriptions, or one-off invoices. Each link can be customized with amount, currency, country, and description, giving customers a direct, hosted checkout.

Core resources

Payins operates on two linked resources:

Payment Order

A payment request created to collect funds from a customer. It represents the full payment lifecycle and can contain one or more attempts.
  • Unique identifier (public_code or issue)
  • Expiration date
  • Final status reflecting the overall outcome
Once created, a Payment Order cannot be cancelled by the client — it can only expire by business rule or time limit, or be cancelled internally by Vita.

Payment Order Attempt

A specific trial by the user to fulfill a Payment Order. Each checkout session (declined card, closed browser, insufficient funds, etc.) is logged as a separate attempt.
  • Multiple attempts per order
  • Granular history of each try
  • Fine-grained webhook events

Relationship

A single PaymentOrder can contain N PaymentOrderAttempts.
Receiving a payment_order_attempt.cancelled webhook does not mean the payment link is cancelled — it only means that specific attempt failed. The user can start a new attempt that may eventually move the parent PaymentOrder to paid.

Available flows

Create Payin (hosted)

Create a shareable payment link. The customer completes checkout on a Vita-hosted page and is redirected back to your URLs on success, cancel, error, or pending.

Direct Payment

Collect payment data from your UI and submit it directly to Vita — no redirection. Useful for apps that want to render their own checkout.