Skip to main content
POST
Create Session

Authorizations

Authorization
string
header
required

Enter your API key: mvn_test_xxx or mvn_live_xxx

Query Parameters

response_status
integer | null

Override the HTTP status code (e.g. 200). Some voice platforms only accept 200 as success.

Body

application/json

Request to create a payment session.

project
string
required

Project identifier (UUID or slug)

caller
string
required

Phone number in E.164 format

amount
required

Amount in dollars (e.g. 150.00; must be > 0 for charge mode)

Required range: x >= 0
mode
enum<string>
required

Payment mode: 'charge' or 'tokenize'

Available options:
charge,
tokenize
gateway
enum<string>
required

Payment gateway: 'stripe', 'authorizenet', 'braintree', 'shift4', 'fiserv', 'jpmorgan', or 'webhook' (forward card to your own endpoint)

Available options:
stripe,
authorizenet,
braintree,
shift4,
fiserv,
jpmorgan,
webhook,
nmi,
qualpay,
clover
description
string | null

Charge description

Maximum string length: 500
callback
string | null

Callback phone number or SIP URI for transfer-back

Maximum string length: 256
memory
string | null

Call context passed back on transfer

stripe_account
string | null

Stripe Platform Mode only: the connected account (acct_...) on YOUR Stripe platform to charge or vault on. Requires your platform API key to be configured on the project.

Pattern: ^acct_[A-Za-z0-9]+$
billing_address
BillingAddress · object | null

Cardholder billing address. When provided, forwarded to the processor's billTo block so AVS can return a full match. Authorize.net only today; ignored for other gateways.

Response

Successful Response

Minimal response after creating a session.

session_id
string
required

Session UUID

status
string
required

Session status

created_at
string<date-time>
required

Creation timestamp

phone_number
string | null

IVR phone number to call

sip_uri
string | null

Twilio SIP domain for SIP calls