Create an order from the cart and start the payment
accept_terms: true is required: it records that the customer accepts the terms and the acceptable-use policy and asks for the service to start at once (optional terms_version names the version shown). While LAUNCH_MODE=waitlist every cart (traffic or ports) is refused with 409 launch_waitlist and stays intact. Response shape depends on payment_method: stripe / coingate / nowpayments / mock return redirect_url; wallet debits the balance in a transaction and returns the order as paid (or awaiting_kyb for port orders at KYB t0); bank_transfer returns bank instructions. When the provider refuses the checkout (502 payment_provider_error) the order is cancelled and the cart restored. Traffic limits count unpaid orders too (cancel an abandoned one under Orders). VAT: none while the seller is not registered for VAT (SELLER_VAT_ID empty; GET /v1/launch reports seller.vat_registered); otherwise 21 % for Lithuania and EU customers without a validated VAT id, reverse charge (0 %) for validated EU VAT ids outside LT, 0 % outside the EU. An Idempotency-Key header makes the call replay-safe; the same key with a different payment method or coupon is 409 idempotency_conflict.
Request
- Base URL: https://api.portproof.org
- URL: https://api.portproof.org/v1/checkout
- Auth: one of:
- API key in cookie pp_session
- HTTP bearer
Request body
Response
Default Response
Changes
No recorded changes to this operation across all 1 revision of this API.