Skip to content

Checkout Expansion

POST
/v1/subscription/expansions/{intent_id}/checkout
curl --request POST \
--url https://api.vocapable.com/v1/subscription/expansions/example/checkout \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "amount_due_minor": 1, "currency": "usd" }'

Confirm a reviewed price and open its original hosted payment page.

A 202 response retains the same purchase for recovery; it is not proof of payment.

intent_id
required
Intent Id
string
Media typeapplication/json
ExpansionCheckoutRequest

Confirm the exact displayed quote; prices and redirect URLs remain server-owned.

object
amount_due_minor
required
Amount Due Minor
integer
> 0
currency
required
Currency
string
Allowed value: usd

Successful Response

Media typeapplication/json
ExpansionQuoteResponse

Customer figures only; provider IDs and commercial evidence stay private.

object
id
required
Id
string
status
required
Status
string
source_plan_id
required
Source Plan Id
string
target_plan_id
required
Target Plan Id
string
source_class
required
Source Class
string
Allowed values: engage workforce sales receptionist
target_class
required
Target Class
string
Allowed values: engage workforce sales receptionist
term
required
Term
string
Allowed values: mtm three_year
amount_due_minor
required
Amount Due Minor
integer
currency
required
Currency
string
source_monthly_minor
required
Source Monthly Minor
integer
target_monthly_minor
required
Target Monthly Minor
integer
total_inbound_connections
required
Total Inbound Connections
integer
total_outbound_sessions
required
Total Outbound Sessions
integer
minute_rate_minor
required
Minute Rate Minor
string
/^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$/
attempt_fee_minor
required
Attempt Fee Minor
string
/^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$/
volume_ladder_applies
required
Volume Ladder Applies
boolean
expires_at
required
Expires At
string format: date-time
checkout_available
Checkout Available
boolean
checkout_url
Any of:
string
checkout_expires_at
Any of:
string format: date-time
payment_received
Payment Received
boolean
failure_code
Any of:
string
Example
{
"source_class": "engage",
"target_class": "engage",
"term": "mtm",
"checkout_available": false,
"payment_received": false
}

Purchase remains pending

Media typeapplication/json
ExpansionQuoteResponse

Customer figures only; provider IDs and commercial evidence stay private.

object
id
required
Id
string
status
required
Status
string
source_plan_id
required
Source Plan Id
string
target_plan_id
required
Target Plan Id
string
source_class
required
Source Class
string
Allowed values: engage workforce sales receptionist
target_class
required
Target Class
string
Allowed values: engage workforce sales receptionist
term
required
Term
string
Allowed values: mtm three_year
amount_due_minor
required
Amount Due Minor
integer
currency
required
Currency
string
source_monthly_minor
required
Source Monthly Minor
integer
target_monthly_minor
required
Target Monthly Minor
integer
total_inbound_connections
required
Total Inbound Connections
integer
total_outbound_sessions
required
Total Outbound Sessions
integer
minute_rate_minor
required
Minute Rate Minor
string
/^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$/
attempt_fee_minor
required
Attempt Fee Minor
string
/^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$/
volume_ladder_applies
required
Volume Ladder Applies
boolean
expires_at
required
Expires At
string format: date-time
checkout_available
Checkout Available
boolean
checkout_url
Any of:
string
checkout_expires_at
Any of:
string format: date-time
payment_received
Payment Received
boolean
failure_code
Any of:
string
Example
{
"source_class": "engage",
"target_class": "engage",
"term": "mtm",
"checkout_available": false,
"payment_received": false
}

Validation Error

Media typeapplication/json
HTTPValidationError
object
detail
Detail
Array<object>
ValidationError
object
loc
required
Location
Array
msg
required
Message
string
type
required
Error Type
string
input
Input
ctx
Context
object
Examplegenerated
{
"detail": [
{
"loc": [
"example"
],
"msg": "example",
"type": "example",
"input": "example",
"ctx": {}
}
]
}