The parameters will be sent as HTTP headers.
PCI Proxy PULL Endpoint: |
https://sandbox.pci-proxy.com/v1/pull |
Mandatory input parameters:
HTTP Header | Description | Example value |
| Your unique merchant id at PCI Proxy | 1000011011 |
| Configured API key | MxdPtKaeDLfkhK7rdz4nmmx5dg10ufRR |
| API endpoint | https://api.channel.com/ |
Example POST:
curl https://sandbox.pci-proxy.com/v1/pull \-H "Content-Type: text/xml" \-H "pci-proxy-api-key: ynTIoCUuUnlHkbW460eZb0zr4WBL0ntg" \-H "x-cc-merchant-id: 1000011011" \-H "x-cc-url: https://pciproxy.mockable.io/secure-supply-xml-booking-com" \-d '<?xml version="1.0" encoding="UTF-8" standalone="yes"?><request><username>pci-proxy</username><password>xGdk1Pco8</password><hotel_id>181337</hotel_id><id>731337</id></request>'
In turn, the proxy will return HTTP headers:
HTTP Header | Description |
| Returned by the proxy in case of error only. See the error table below. |
| Returned by the proxy in case of error only. See the error table below. |
| Returned by the proxy in case of success. The value represents the number of total (card to alias / alias to card) replacements that were made. |
| Returned number of card to alias replacements. |
| Returned number of alias to card replacements. |
| Returned number of cvv to alias replacements. |
| Returned by the proxy in case of a successful replacement. The value represents the number of total (custom value to token / token to custom value) replacements that were made. |
| Unique request identifier. |
PCI Proxy forwards the following HTTP headers to your endpoint:
HTTP Header | Description |
| Returned by the proxy in case of error only. See the error table below. |
| Returned by the proxy in case of error only. See the error table below. |
| Returned by the proxy in case of success. The value represents the number of total (card to alias / alias to card) replacements that were made. |
| Returned number of card to alias replacements. |
| Returned number of alias to card replacements. |
| Returned number of cvv to alias replacements. |
| Returned by the proxy in case of a successful replacement. The value represents the number of total (custom value to token / token to custom value) replacements that were made. |
| Masked card alias format will be returned |
| Returns the IP address of the origin caller of the Push integration. |
| Unique request identifier. |
If the proxy is able to parse and correctly match the replacement targets, but an error occurs during the tokenization or detokenization, the match will be replaced with the following possible constants (length 16):
Possible Constants | Error message (X-CC-ERROR) | Cause/explanation |
0000000000000000 | Invalid card number | The card number was matched but was invalid. |
0000000000000001 | Internal error | The card number was matched, but internal error occurred during transformation to alias. |
For instance: If a channel response contains three card numbers and one of them fails to validate or convert, the two successful replacement tokens will be present in the returned document and the failed card number will be replaced with one of the two special constants above. No X-CC-ERROR
or X-CC-ERROR-CODE
headers will be returned and X-CC-MATCHES
will have value “2”.
Error cases (returned with headers X-CC-ERROR-CODE and X-CC-ERROR):
Error code | Error message | Cause/explanation |
1 | Missing header: | Missing required header in request. |
2 | Invalid merchantId | Merchant not found, disabled or not properly configured. Please contact Datatrans support. |
3 | Target host not allowed: | The target URL is not allowed. Please contact Datatrans Support. |
4 | Invalid merchant setup - security sign was not defined | Merchant did not define the security sign. |
5 | Invalid authentication (api-key or sign) | Either |
6 | Invalid proxy type: | The provided merchant/url headers did not match to a valid known proxy type. Please contact Datatrans Support. |
50 | Missing parameter: | PUSH request parameter missing. |
100 | Unsupported method: | Unsupported HTTP method |
200 | Could not apply xPath on xml response: | There was an error applying the xpath expression |
201 | Denied by velocity check | Sent during alias to card conversion (if such case) if there were too many attempts to convert bad aliases to cards. |
202 | Denied by parallel connection checker | Security measure which avoids that there were sent too many requests parallel. |
203 | Denied by whitelist | IP is not whitelisted on PCI Proxy. Please contact PCI Proxy Support. |
300 | Unknown content type in 3rd party response: | The proxy is not able to parse the 3rd party response as xml or html. |
301 | Unknown content type in source request: | Proxy cannot parse source response as xml or html. |
400 | Pull not configured | There is no pull configuration for the specified merchant. Please contact Datatrans Support. |
401 | Missing push configuration for: | Wrong merchant configuration. Please contact Datatrans Support. |
800 | Connection error | Proxy could not connect to 3rd party / error that cause no response (read timeout or DNS error). Proxy returns HTTP status 504 (Gateway Timeout) and an empty response. |
900 | Proxy error | Uncategorized system error |
Please use the following endpoints for status/health checks. Please bear in mind that third-party systems are not included in this check. If our platform is operational we will return a status 200 and the string ok
.
| Sandbox | Production |
Filter APIs | ||
Show API, Secure Fields | https://pay.sandbox.datatrans.com/upp/jsonp-health-check?callback=foo | https://pay.datatrans.com/upp/jsonp-health-check?callback=foo |
3D API |