Prerequisites
- A running LiveKit agent with SIP inbound configured (the caller arrives as a SIP participant).
- Your LiveKit server credentials, and a Ringup API key.
Set up
- Using Dashboard
- Using Tools
Your agent creates a Checkout Session and transfers the SIP participant to it, like redirecting to a
hosted web checkout. Ringup takes payment on its own line and returns the caller if you ask it to.
The wiring is code in your agent; only your account side (API keys, the webhook endpoint,
go-live) lives in the dashboard.
1
Recognize the caller at the start
Call
identify from your agent code at the greeting, not at payment (plain HTTP, like the
checkout call below). The caller’s number arrives the instant the call connects; for a returning
caller identify returns their name, so your agent greets them by name. Chargeable cards come
later, from the Checkout Session. See Recognize at the start of the call.2
Create a Checkout Session when the order is confirmed
POST to create_checkout with your Ringup API key. If payment_required is
none, do not transfer: finish the call normally. Otherwise transfer to the returned transfer_to.3
Transfer the SIP participant
Speak one bridge line, then transfer the caller’s SIP participant to
transfer_to, attaching the
checkout_session_id as a REFER header as a backstop:4
Register your webhook endpoint
In the Ringup dashboard, under Webhooks, add your HTTPS endpoint and copy the
signing secret. Your code verifies the signature and handles
checkout.succeeded. See
Webhooks.5
Test it, then go live
Use your
rk_test_ key, call your agent from your own phone, and order: on your first call you
are texted a link and pay with the test card 4111 1111 1111 1111 (any future expiry, any CVC);
on the next call the payment line recognizes you and charges the saved Visa ending 1111. Expect
the payment line to read a confirmation code and a test-mode checkout.succeeded at your
endpoint. Swap in your rk_live_ key to go live.Next steps
Testing
Test mode, the test card, and the flow to run a full payment.
Webhooks
Reconcile every payment from one signed event on your server.