How do I…?
One question, one page. The rest of this site is organised by topic, and Build your integration puts the steps in the order you need them. This page is for the other case: you have a specific question and want the one page that answers it.
Every answer below is checked on every build — if a topic moves to a different page, this index fails rather than pointing you somewhere that no longer covers it.
Getting a payment working
| Question | The page that answers it |
|---|---|
| How do I take one payment, end to end? | Build your integration |
| Which integration should I choose? | Choose your integration |
| How do I get keys, and check they work before I write code? | API Key Types |
| How do I test before going live? | Go-Live Checklist |
| Which test card produces which outcome, and does that depend on my account? | Test mode & test cards |
| How do I attach my own order or customer reference to a payment? | Metadata |
Knowing the payment really happened
| Question | The page that answers it |
|---|---|
| How do I know a payment actually succeeded? | Webhooks |
| How do I verify a webhook signature? | Webhook Signature Verification |
| My charge request timed out — is it safe to retry? | Idempotency |
| I lost track of a payment — how do I reconcile it? | Reconciliation — redirect vs. webhook |
Cards, saving them, and charging again
| Question | The page that answers it |
|---|---|
| How do I save a card to charge later? | Saving a Card and Charging It Later |
| How do I charge a saved card with no buyer present? | Payment Intents |
| Where does a payment-method token come from? | Getting a payment-method token |
| How do I handle a 3-D Secure challenge? | Embedded Fields — 3D Secure |
When something goes wrong
| Question | The page that answers it |
|---|---|
| What does this error code mean? | Error Codes |
| My call is failing — how do I diagnose it? | Troubleshooting |
| Why was my API key rejected? | Troubleshooting |
| How do I refund a payment? | Refunds |
| The card was declined — what do I tell the buyer? | Handling Rule Declines |
Connected stores and platforms
| Question | The page that answers it |
|---|---|
| How do I mirror an order into Shopify? | Shopify order mirroring |
| How do I mirror an order into Next Commerce? | Next Commerce (29next) order mirroring |
| How do I take card payments in my WooCommerce store? | Von Payments for WooCommerce |
| Which of my fields reach the payment provider? | What reaches your payment provider |
Other surfaces
| Question | The page that answers it |
|---|---|
| How do I accept Apple Pay or Google Pay? | Express Checkout Wallets (Apple Pay & Google Pay) |
| How do I style the embedded card fields? | Customize the look & feel |
| I'm building with an AI agent — where do I start? | Build with AI agents |
Still stuck?
Start from the error itself. Every /v1 error carries a machine-readable code
alongside a fix and a docs link, so the response usually names its own answer
before you go looking.
Troubleshooting is symptom-first: it takes the error you are looking at and gives the diagnosis. Error codes is the full catalogue of every code the API returns.