High Wire Payments API
From checkout to captured.
Authorize, capture, void, and refund card payments through one API — every operation tied to the payment ID from your first call.
REST + JSONHTTP Basic authSandbox first
Start here
Go where the work starts.
Choose the page that answers the question in front of you.Quickstart
Send a test payment
Authorize and capture your first payment in the sandbox.
Start buildingGuideAuthentication
Keep Gateway credentials on your server and authenticate with HTTP Basic.
Read the guideGuideErrors and conventions
Handle response codes, retries, amount formats, and failure states.
Read the guideReferenceBrowse the API
Every documented endpoint with request and response examples.
Open the referencePayment lifecycle
One payment. Clear next actions.
Every operation stays tied to the payment ID returned by your first request.Authorize
POST/v1/payments/authReserve funds now and capture when the order is ready.
Capture
POST/v1/payments/{id}/captureComplete a payment from an existing authorization.
Void
POST/v1/payments/{id}/voidRelease reserved funds before the payment is captured.
Refund
POST/v1/payments/{id}/refundReturn all or part of a captured payment.
Your first request
Prove the connection in one call.
Authorize and capture a test payment, then use its payment ID to retrieve status or issue a refund.Request
POST /v1/payments/auth-and-capturecurl -X POST \
https://api-payments-staging.highwirepayments.com/v1/payments/auth-and-capture \
-u "$HIGHWIRE_KEY:$HIGHWIRE_SECRET" \
-H "Content-Type: application/json" \
-d @payment.jsonResponse201 Created
{
"paymentId": "01928e3e-7b6c-7c8e-9b3a-5b9f8b9b9b9b",
"status": "CAPTURED",
"amount": 7200
}Send a test paymentNeed credentials for your environment?
Tell us about your integration and the team building it.