This page is for organizations that have a hard requirement to handle raw card data server-side — for example, you need to forward it through your own PCI proxy to multiple partners. If you don’t have such a requirement, use the rinne-js Card Element instead — it keeps raw card data out of your systems entirely. Most integrations should use rinne-js.
PCI base URLs
Requests to these base URLs work exactly like the regular API: same paths, same API keys (
x-api-key), same request and response shapes. The only difference is that the number and cvv values are encrypted in transit, before the request reaches Rinne’s API. All other fields pass through unchanged.
Example
cURL
Supported operations
The PCI base URLs serve only the operations that accept card data:POST /v1/transactionsandPOST /v1/merchants/{merchantId}/transactionsPOST /v1/3ds-sessionsandPOST /v1/merchants/{merchantId}/3ds-sessions
404 on the PCI base URLs. Use the regular base URLs for everything else — refunds, queries, /authenticate, and so on; those requests never carry raw card data.
Wallet credentials (
network_token and cryptogram) always come from the rinne-js wallet elements, which emit them already encrypted. The PCI endpoints apply only to raw card numbers and CVVs and will not accept wallet credentials.
