PaySpeedo API Reference

PaySpeedo is a service that allows you to securely store credit cards and use them to transact against any number of payment gateways and third party APIs. It does this by simultaneously providing a card tokenization service as well as a gateway and receiver integration service.

Payment methods tokenized by PaySpeedo are stored at PaySpeedo, allowing you to independently store a card and then pass that card to different end points based on your business requirements. We refer to the ability to use a PaySpeedo token against multiple gateways/end points as “universal tokenization”.

QUICK Start

In order to start executing transactions and collecting payments from your users, you will need to:

  1. Register for a free account if you didn't do so.
  2. Follow API instruction for sucessful integration. You can copy TEST ID from your Merchant Backoffice and go to SandBox to test your transcations.
  3. To move from TEST to LIVE environment change from TEST URL https://testpayspeedo.paypipes.com/api/v1/transaction_type to LIVE URL https://payspeedo.paypipes.com/api/v1/transaction_type and repleace TEST API Credentials with LIVE API Credentials.
API Endpoints
TEST: https://testpayspeedo.paypipes.com/api/v1/transaction_type
LIVE: https://payspeedo.paypipes.com/api/v1/transaction_type
Terms of Service: https://www.payspeedo.com/terms.html
Contact: support@paypipes.com
Schemes: https
Version: 1.0.0

Authentication

OAuth 2.0 (get an access token)

An OAuth 2.0 is created by sending a POST request over HTTPS to the /oauth/token. Based on an Oauth 2.0 request access_token will be received as a response. The access_token is required for sending any type of transaction. The access_token has expiry of 72 hours but an OAuth 2.0 request is recomended to be send before each transaction request.

API Credentials

All requests are authenticated against a particular entity using API Credentials. Authentication data is sent as POST parameters.


Key Value Type Description
client_id string (uuid)
This is the merchant Client ID to get API access.
client_secret string (40)
This is the merchant Client Secret Key to get API access.
grant_type enum
This is the merchant API access type "client_credentials".

TEST

Use below TEST API Credentials to perform transactions in TEST Environment. Test ID is a unique ID used only in TEST Environment to reference your test transactions.

Test ID
p4lwSKYMxdrP9WBQ67a3kgHLJYpy1CBsuZTGkGONtwg=
API ID
449f11a438853bb84bd7193fd6bceb0886d083d0a8d5e583a7f92fc55573854d
Client ID
a0eb3202-5a8d-40a0-a4e2-02174091c394
Client Secret
dTi3WVwS9xrv00wkIbvXlwAWj2uUOakf32NYaQpU

LIVE

You can get your LIVE API Credentials from Merchant Backoffice under Terminal tabs "API".

API ID
Copy&Paste from your Merchant Backoffice
Client ID
Copy&Paste from your Merchant Backoffice
Client Secret
Copy&Paste from your Merchant Backoffice
Request Example
$url='https://testpayspeedo.paypipes.com/oauth/token';

$param = [
  'client_id' => 'a0eb3202-5a8d-40a0-a4e2-02174091c394',
  'client_secret' => 'dTi3WVwS9xrv00wkIbvXlwAWj2uUOakf32NYaQpU',
  'grant_type' => 'client_credentials'
];

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
curl_setopt($ch, CURLOPT_POST, TRUE);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($param));
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
"Content-type: application/json",
"Accept: application/json",
"Cache-Control: no-cache",
"User-Agent: ".$_SERVER['HTTP_USER_AGENT']));
$response = curl_exec($ch);
$err = curl_error($ch);
curl_close($ch);

var_dump(json_decode($response));

exit();

Transaction Types

You can perform different types of initial transactions using our API.

Tokenize Customer make a tokenize customer transaction to receive customer/card token

A Tokenize Customer is an initial transaction request to perform before Purchase or Authorize transaction, it can be send with/without card data by sending a POST request over HTTPS to the /api/v1/tokenize/customers

Customer token validation period is 3 years and card token validation period is up to card expiration date.

POST /api/v1/tokenize/customers
Key Value Type Description
api_id base64_encode (64)
This is the unique id associate with merchant.
order_id string (6-40)
Merchant internal Unique ID for this transaction.
ip_address string
The IP address associated with the device used by the customer in the transaction.
customer/first_name string (2-60)
The first name of the end customer as provided in their billing information.
customer/last_name string (2-60)
The last name of the end customer as provided in their billing information.
customer/street string (5-100)
The address of the end customer’s as provided in their billing address.
customer/city string (2-40)
The city of the end customer’s billing address.
customer/state string (2-40) The state of the end customer’s billing address.
customer/country string (2)
The two character ISO 3166-1 alpha-2 country code of the customer’s billing address.
customer/post_code string (20)
The postal code of the customer’s billing address.
customer/phone_code string (1-7)
The phone country code of the customer’s billing address. Punctuation characters will be stripped. After stripping punctuation characters, ex +420 or 00420.
customer/phone string (20)
The phone number of the customer’s billing address. Punctuation characters will be stripped. After stripping punctuation characters, the number must contain only digits.
customer/email string (100)
The email address of the customer.
card/holder string (2-100)
The card holder name for the credit card.
card/number string (13-19)
The card number of the credit card.
card/exp_month string (2)
The expire month for the credit card.
card/exp_year string (4)
The expire year for the credit card.
Request Example
$url="https://testpayspeedo.paypipes.com/api/v1/tokenize/customers";

$param = [
"request" => [
  "api_id" => "449f11a438853bb84bd7193fd6bceb0886d083d0a8d5e583a7f92fc55573854d",
  "order_id" => "123456789123",
  "ip_address" => "123.123.123.1",
  "customer" => [
      "first_name"=> "Paul",
      "last_name"=> "King",
      "street"=> "761 Kelly Forge",
      "city"=> "Martinstad",
      "state"=> "New Karliebury",
      "country"=> "AT",
      "post_code"=> "SN2 7TE",
      "phone_code"=> "+43",
      "phone"=> "0306587799",
      "email"=> "k.paul@example.com"
  ],
  "card"=>[
      "holder" => "Test Card",
      "number"=> "4012000300001003 ",
      "exp_month"=> "01",
      "exp_year"=> "2019"
  ]
]
];

$ch2 = curl_init();
curl_setopt($ch2, CURLOPT_URL, $url);
curl_setopt($ch2, CURLOPT_TIMEOUT, 30);
curl_setopt($ch2, CURLOPT_POST, true);
curl_setopt($ch2, CURLOPT_POSTFIELDS, json_encode($param));
curl_setopt(
$ch2,
CURLOPT_HTTPHEADER,
[
  "Content-type: application/json",
  "Accept: application/json",
  "Cache-Control: no-cache",
  "User-Agent: ".$_SERVER['HTTP_USER_AGENT'],
  "Authorization: Bearer ". $auth->access_token
]
);
$response2 = curl_exec($ch2);
curl_close($ch2);

var_dump(json_decode($response2));
Key Value Type Description
customer_token string (uuid) Transaction response return value of customer_token for successfull tokenize customer transactions.
order_id string (6-40) Transaction response return value of Merchant internal Unique ID for this transactions.
first_name string (2-60) The first name of the end customer as provided in their billing information.
last_name string (2-60) The last name of the end customer as provided in their billing information.
street string (5-100) The address of the end customer’s as provided in their billing address.
city string (2-40) The city of the end customer’s billing address.
state string (2-40) The state of the end customer’s billing address.
country string (255) The Country is return (English short country name officially used by the ISO 3166) of the customer’s billing address.
post_code string (20) The postal code of the customer’s billing address.
phone_code string (1-7) The phone country code of the customer’s billing address. Punctuation characters will be stripped. After stripping punctuation characters, ex +420 or 00420.
phone string (20) The phone number of the customer’s billing address. Punctuation characters will be stripped. After stripping punctuation characters, the number must contain only digits.
email string (100) The email address of the customer.
status string (20)

Transaction response return value of transaction status. The valid values are:

  • Active
  • Inactive
  • Locked
created datetime The created date and time of the transaction. The datetime is based on PayPipes servers.
updated datetime The updated date and time of the transaction. The datetime is based on PayPipes servers.
expired datetime The expiration date and time of the customer token. The datetime is based on PayPipes servers..
card_token string (28) Transaction response return value of card_token for successfull TokenizeCustomer/Purchase/Authorize transactions.
cards
holder string (2-100) The card holder name for the credit card.
bin string (6) The bin number of the credit card.
digit string (4) The last 4 digits of the credit card
brand string (1-50) The brand of the credit card.
expired datetime The expiration date and time of the card token. The datetime is based on PayPipes servers.
Response Example (200 OK)

{"data":{"customer_token":"c3139eaf-ceaa-4de5-a76d-c9eb6286df45","order_id":"123456789123","first_name":"Paul","last_name":"King","street":"761 Kelly Forge","city":"Martinstad","state":"New Karliebury","post_code":"SN2 7TE","country":"Austria","phone_code":"+43","phone":"0306587799","email":"k.paul@example.com","status":"Active","created":"2018-04-23 10:10:40","updated":"2018-04-23 10:10:40","expired":"2021-04-23 10:10:40","cards":{"data":[{"card_token":"2A586F3A652F80A58C99A87B1003","holder":"Test Card","bin":"401200","digit":"1003","brand":"visa","created":"2018-04-23 10:10:40","updated":"2018-04-23 10:10:40","expired":"2019-01-23 10:10:40"}]}‌}}

Response Example (Validation)
{"error":{"phone_code":["The phone code field is required."]},"code":"422"}

{"error":"Invalid Order Id","code":"422"}

Tokenize Card make a tokenize card transaction to receive card token for specific customer

A Tokenize Card is a transaction request allow to add multiple cards under the same customers and return card token, by sending a POST request over HTTPS to the /api/v1/tokenize/customers/{customer_token}/cards

Card token validation period is up to expiration date.

POST /api/v1/tokenize/customers/{customer_token}/cards
Key Value Type Description
api_id base64_encode (64)
This is the unique id associate with merchant.
order_id string (6-40)
Merchant internal Unique ID for this transaction.
ip_address string
The IP address associated with the device used by the customer in the transaction.
holder string (2-100)
The card holder name for the credit card.
number string (13-19)
The card number of the credit card.
exp_month string (2)
The expire month for the credit card.
exp_year string (4)
The expire year for the credit card.
Request Example
$url="https://testpayspeedo.paypipes.com/api/v1/tokenizer/customers/34490389-d609-46f7-9c29-f0bbd396b968/cards";
            $param = [
                "request" => [
                    "api_id" => "3031022dfc91b64a73f8fcece40a648c17a73379ccc373095abb617fb163a81e",
                    "order_id" => "123456789123",
                    "ip_address" => "123.123.123.1",
                    "holder" => "Test Card",
                    "number"=> "4012000300001003 ",
                    "exp_month"=> "01",
                    "exp_year"=> "2019"
                    ]
                ]
            ];

            $ch2 = curl_init();
            curl_setopt($ch2, CURLOPT_URL, $url);
            curl_setopt($ch2, CURLOPT_TIMEOUT, 30);
            curl_setopt($ch2, CURLOPT_POST, true);
            curl_setopt($ch2, CURLOPT_POSTFIELDS, json_encode($param));
            curl_setopt(
                $ch2,
                CURLOPT_HTTPHEADER,
                [
                    "Content-type: application/json",
                    "Accept: application/json",
                    "Cache-Control: no-cache",
                    "User-Agent: ".$_SERVER['HTTP_USER_AGENT'],
                    "Authorization: Bearer ". $auth->access_token
                ]
            );
            $response2 = curl_exec($ch2);
            curl_close($ch2);

            var_dump(json_decode($response2));
            
Key Value Type Description
card_token string (28) Transaction response return value of card_token for successfull TokenizeCustomer/Purchase/Authorize transactions.
holder string (2-100) The card holder name for the credit card.
bin integer (6) The bin number of the credit card.
digit integer (4) The last 4 digits of the credit card
brand string The brand of the credit card.
created datetime The created date and time of the transaction. The datetime is based on PayPipes servers.
updated datetime The updated date and time of the transaction. The datetime is based on PayPipes servers.
expired datetime The expiration date and time of the customer/card token. The datetime is based on PayPipes servers.
Response Example (200 OK)

  {"data":{"card_token":"2A586F3A652F80A58C99A87B1003","holder":"Test Card","bin":"401200","digit":"1003","brand":"visa","created":"2018-04-23 10:10:40","updated":"2018-04-23 10:10:40","expired":"2019-01-23 10:10:40"}}
Response Example (Validation)
{"error":{"holder":["The holder field is required."]},"code":"422"}

{"error":"Invalid Order Id","code":"422"}

Authorize make an authorize transaction with customer/card token

An Authorize is created by sending a POST request over HTTPS to the /api/v1/authorize. The request should be send after tokenize customers request. including customer/card_token information. A Capture may be sent against a successful Authorize to request that the funds are sent for clearing.

For 3DS transactions html code is returned and customer is redirected to issuer website for 3ds validation.

POST /api/v1/authorize
Key Value Type Description
api_id base64_encode (64)
This is the unique id associate with merchant.
order_id string (6-40)
Merchant internal Unique ID for this transaction.
ip_address string
The IP address associated with the device used by the customer in the transaction.
card_token string (28)
A token uniquely identifying the card in the system. Either card_token or customer_token one of them are mendatory
customer_token string (uuid)
A token uniquely identifying the customer in the system. Either card_token or customer_token one of them are mendatory
amount decimal(10,2)
The total order amount for the transaction. The value format 12.00.
currency string (3)
The ISO 4217 currency code for the currency used in the transaction.
description string (5-255)
Merchat description of this transactions .
gateway enum

The gateway used for the transaction. if you send card_token then gateway is mandatory. See suported gateways for gateway field value.

return_url string (255)
Merchant shop URL for redirect transaction.
security_code string (3-4)
The CVC2/CVV2 of the credit card number. if you send card_token then security_code is mandatory for direct integration
Request Example
$url="https://testpayspeedo.paypipes.com/api/v1/authorize";

$param = [
    "request" => [
        "api_id" => "3031022dfc91b64a73f8fcece40a648c17a73379ccc373095abb617fb163a81e",
        "order_id" => "660217c4fb6cd1efe16e0f8b",
        "ip_address" => "123.123.123.1",
        "card_token"=> "62BD76A3E29725481C076A1B1003",
        //"customer_token"=> "1540e474-39c6-491a-b872-48453930ea3a",  //either card_token or customer_token can be used
        "amount"=> "1.00",
        "currency"=> "EUR",
        "description"=> "Test Purchase",
        "gateway"=> "wirecard",
        "return_url"=> "https://localhost/return",
        "security_code"=> "123"
    ]
];

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($param));
curl_setopt(
    $ch,
    CURLOPT_HTTPHEADER,
    [
        "Content-type: application/json",
        "Accept: application/json",
        "Cache-Control: no-cache",
        "User-Agent: ".$_SERVER['HTTP_USER_AGENT'],
        "Authorization: Bearer ". $auth->access_token
    ]
);
$response = curl_exec($ch);
curl_close($ch);

var_dump(json_decode($response));
Key Value Type Description
order_id string (6-40) Transaction response return value of Merchant internal Unique ID for this transactions.
transaction_id string (uuid) This is the unique id for this transaction.
transaction_type enum Transaction response return value of requested transaction type.
amount decimal (10,2) Transaction response return value of requested transaction amount.
currency string (3) Transaction response return value of requested transaction amount.
status enum

Transaction response return value of transaction status. The valid values are:

  • Approved
  • Declined
  • Cancelled
  • Pending
  • Held
status_code string The status code returned from PayPipes or gateway.
status_description string(255) The status description returned from PayPipes or gateway.
created datetime The created date and time of the transaction. The datetime is based on PayPipes servers.
card_token string (28) Transaction response return value of card_token for successfull TokenizeCustomer/Purchase/Authorize transactions. For creditcard only.
gateway enum

Transaction response return value of gateway. See suported gateways for gateway field value.

mask_number string (36) Transaction response return value of card_number as mask_number for successfull Purchase/Authorize transactions. For creditcard only.
Response Example (200 OK)


{
    "data": {
        "order_id": "660217c4fb6cd1efe16e0f8b",
        "transaction_id": "4ad78bba-635b-4ad6-a74c-de7126a7341b",
        "transaction_type": "Authorize",
        "amount": "1.00",
        "currency": "EUR",
        "status": "Approved",
        "status_code": "201.0000",
        "status_description": "3d-acquirer:The resource was successfully created.",
        "created": "2018-04-23 10:35:43",
        "card_token": "4BB998B580AEE2036C397F8C1003",
        "gateway": "wirecard",
        "mask_number": "4012 00XX XXXX 1003"
    }
}

Response Example (Validation)
{"error":{"currency":["The currency field is required."]},"code":"422"}

{"error":"Invalid Order Id","code":"422"}

Capture capture an authorize transaction

A capture is used to request clearing for previously authorized funds. A capture request is performed against a previous Authorize transactions by referencing its transaction_id and sending a POST request over HTTPS to the /api/v1/capture.

POST /api/v1/capture
Key Value Type Description
api_id base64_encode (64)
This is the unique id associate with merchant.
order_id string (6-40)
Merchant internal Unique ID for this transaction.
transaction_id string (uuid)
This is the unique id for this transaction.
description string (5-255)
Merchat description of this transactions .
ip_address string
The IP address associated with the device used by the customer in the transaction.
Request Example
$url="https://testpayspeedo.paypipes.com/api/v1/capture";

$param = [
    "request" => [
        "api_id" => "3031022dfc91b64a73f8fcece40a648c17a73379ccc373095abb617fb163a81e",
        "order_id" => "a35436ba5641c035e9b5af38",
        'transaction_id' => '4ad78bba-635b-4ad6-a74c-de7126a7341b',
        'description' => 'Capture Request',
        "ip_address" => "123.123.123.1",
    ]
];

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($param));
curl_setopt(
    $ch,
    CURLOPT_HTTPHEADER,
    [
        "Content-type: application/json",
        "Accept: application/json",
        "Cache-Control: no-cache",
        "User-Agent: ".$_SERVER['HTTP_USER_AGENT'],
        "Authorization: Bearer ". $auth->access_token
    ]
);
$response = curl_exec($ch);
curl_close($ch);

var_dump(json_decode($response));
Key Value Type Description
order_id string (6-40) Transaction response return value of Merchant internal Unique ID for this transactions.
transaction_id string (uuid) This is the unique id for this transaction.
transaction_type enum Transaction response return value of requested transaction type.
amount decimal (10,2) Transaction response return value of requested transaction amount.
currency string (3) Transaction response return value of requested transaction amount.
status enum

Transaction response return value of transaction status. The valid values are:

  • Approved
  • Declined
  • Cancelled
  • Pending
  • Held
status_code string The status code returned from PayPipes or gateway.
status_description string(255) The status description returned from PayPipes or gateway.
created datetime The created date and time of the transaction. The datetime is based on PayPipes servers.
card_token string (28) Transaction response return value of card_token for successfull TokenizeCustomer/Purchase/Authorize transactions. For creditcard only.
gateway enum

Transaction response return value of gateway. See suported gateways for gateway field value.

mask_number string (36) Transaction response return value of card_number as mask_number for successfull Purchase/Authorize transactions. For creditcard only.
Response Example (200 OK)

{
    "data": {
        "order_id": "a35436ba5641c035e9b5af38",
        "transaction_id": "5bb872f3-c9b1-47ea-807d-a1a8643dc171",
        "transaction_type": "Capture",
        "amount": "57.82",
        "currency": "EUR",
        "status": "Approved",
        "status_code": "201.0000",
        "status_description": "3d-acquirer:The resource was successfully created.",
        "created": "2018-04-23 10:57:55",
        "card_token": "4BB998B580AEE2036C397F8C1003",
        "gateway": "wirecard",
        "mask_number": "4012 00XX XXXX 1003"
    }
}
Response Example (Validation)
{"error":{"transaction_id":["The transaction_id field is required."]},"code":"422"}

{"error":"This transaction already requested","code":"422"}

Purchase make a purchase transaction with customer/card token

A Purchase is created by sending a POST request over HTTPS to the /api/v1/purchase. The request should be send after tokenize customers request. including customer/card_token information.

For 3DS transactions html code is returned and customer is redirected to issuer website for 3ds validation.

POST /api/v1/purchase
Key Value Type Description
order_id string (6-40) Transaction response return value of Merchant internal Unique ID for this transactions.
transaction_id string (uuid) This is the unique id for this transaction.
transaction_type enum Transaction response return value of requested transaction type.
amount decimal (10,2) Transaction response return value of requested transaction amount.
currency string (3) Transaction response return value of requested transaction amount.
status enum

Transaction response return value of transaction status. The valid values are:

  • Approved
  • Declined
  • Cancelled
  • Pending
  • Held
status_code string The status code returned from PayPipes or gateway.
status_description string(255) The status description returned from PayPipes or gateway.
created datetime The created date and time of the transaction. The datetime is based on PayPipes servers.
card_token string (28) Transaction response return value of card_token for successfull TokenizeCustomer/Purchase/Authorize transactions. For creditcard only.
gateway enum

Transaction response return value of gateway. See suported gateways for gateway field value.

mask_number string (36) Transaction response return value of card_number as mask_number for successfull Purchase/Authorize transactions. For creditcard only.
Request Example
$url="https://testpayspeedo.paypipes.com/api/v1/purchase";

$param = [
    "request" => [
        "api_id" => "3031022dfc91b64a73f8fcece40a648c17a73379ccc373095abb617fb163a81e",
        "order_id" => "8c5ca6d32567f89034c57023",
        "ip_address" => "123.123.123.1",
        "card_token"=> "62BD76A3E29725481C076A1B1003",
        //"customer_token"=> "1540e474-39c6-491a-b872-48453930ea3a",  //either card_token or customer_token can be used
        "amount"=> "14.92",
        "currency"=> "EUR",
        "description"=> "Test Purchase",
        "gateway"=> "wirecard",
        "return_url"=> "https://localhost/return",
        "security_code"=> "123"
    ]
];


$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($param));
curl_setopt(
    $ch,
    CURLOPT_HTTPHEADER,
    [
        "Content-type: application/json",
        "Accept: application/json",
        "Cache-Control: no-cache",
        "User-Agent: ".$_SERVER['HTTP_USER_AGENT'],
        "Authorization: Bearer ". $auth->access_token
    ]
);
$response = curl_exec($ch);
curl_close($ch);

var_dump(json_decode($response));
Key Value Type Description
order_id string (6-40) Transaction response return value of Merchant internal Unique ID for this transactions.
transaction_id string (uuid) This is the unique id for this transaction.
transaction_type enum Transaction response return value of requested transaction type.
amount decimal (10,2) Transaction response return value of requested transaction amount.
currency string (3) Transaction response return value of requested transaction amount.
status enum

Transaction response return value of transaction status. The valid values are:

  • Approved
  • Declined
  • Cancelled
  • Pending
  • Held
status_code string The status code returned from PayPipes or gateway.
status_description string(255) The status description returned from PayPipes or gateway.
created datetime The created date and time of the transaction. The datetime is based on PayPipes servers.
card_token string (28) Transaction response return value of card_token for successfull TokenizeCustomer/Purchase/Authorize transactions. For creditcard only.
gateway enum

Transaction response return value of gateway. See suported gateways for gateway field value.

mask_number string (36) Transaction response return value of card_number as mask_number for successfull Purchase/Authorize transactions. For creditcard only.
Response Example (200 OK)

{
    "data": {
        "order_id": "8c5ca6d32567f89034c57023",
        "transaction_id": "47adb6a1-ace6-469e-8ffc-25416fb5e7a0",
        "transaction_type": "Purchase",
        "amount": "14.92",
        "currency": "EUR",
        "status": "Approved",
        "status_code": "201.0000",
        "status_description": "3d-acquirer:The resource was successfully created.",
        "created": "2018-04-23 10:39:38",
        "card_token": "4BB998B580AEE2036C397F8C1003",
        "gateway": "wirecard",
        "mask_number": "4012 00XX XXXX 1003"
    }
}
Response Example (Validation)
{"error":{"currency":["The currency field is required."]},"code":"422"}

{"error":"Invalid Order Id","code":"422"}

Reverse Authorize reverse an authorization

A Reverse Authorize is performed against a previous Authorize transaction, referencing its transaction_id by sending a POST request over HTTPS to the /api/v1/reverse/authorize.

A reversal can only reverse the full transaction and does not require the amount or currency to be sent i.e. a partial reversal is not possible.

POST /api/v1/reverse/authorize
Key Value Type Description
api_id base64_encode (64)
This is the unique id associate with merchant.
order_id string (6-40)
Merchant internal Unique ID for this transaction.
transaction_id string (uuid)
This is the unique id for this transaction.
description string (5-255)
Merchat description of this transactions .
ip_address string
The IP address associated with the device used by the customer in the transaction.
Request Example
$url="https://testpayspeedo.paypipes.com/api/v1/reverse/authorize";

$param = [
    "request" => [
        "api_id" => "3031022dfc91b64a73f8fcece40a648c17a73379ccc373095abb617fb163a81e",
        "order_id" => "8c5ca6d32567f89034c5702",
        'transaction_id' => '4ad78bba-635b-4ad6-a74c-de7126a7341b',
        'description' => 'Reverse Request',
        "ip_address" => "123.123.123.1",
    ]
];


$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($param));
curl_setopt(
    $ch,
    CURLOPT_HTTPHEADER,
    [
        "Content-type: application/json",
        "Accept: application/json",
        "Cache-Control: no-cache",
        "User-Agent: ".$_SERVER['HTTP_USER_AGENT'],
        "Authorization: Bearer ". $auth->access_token
    ]
);
$response = curl_exec($ch);
curl_close($ch);

var_dump(json_decode($response));
Key Value Type Description
order_id string (6-40) Transaction response return value of Merchant internal Unique ID for this transactions.
transaction_id string (uuid) This is the unique id for this transaction.
transaction_type enum Transaction response return value of requested transaction type.
amount decimal (10,2) Transaction response return value of requested transaction amount.
currency string (3) Transaction response return value of requested transaction amount.
status enum

Transaction response return value of transaction status. The valid values are:

  • Approved
  • Declined
  • Cancelled
  • Pending
  • Held
status_code string The status code returned from PayPipes or gateway.
status_description string(255) The status description returned from PayPipes or gateway.
created datetime The created date and time of the transaction. The datetime is based on PayPipes servers.
card_token string (28) Transaction response return value of card_token for successfull TokenizeCustomer/Purchase/Authorize transactions. For creditcard only.
gateway enum

Transaction response return value of gateway. See suported gateways for gateway field value.

mask_number string (36) Transaction response return value of card_number as mask_number for successfull Purchase/Authorize transactions. For creditcard only.
Response Example (200 OK)

{
    "data": {
        "order_id": "8c5ca6d32567f89034c5702",
        "transaction_id": "47adb6a1-ace6-469e-8ffc-25416fb5e7a0",
        "transaction_type": "ReverseAuthorize",
        "amount": "14.92",
        "currency": "EUR",
        "status": "Approved",
        "status_code": "201.0000",
        "status_description": "3d-acquirer:The resource was successfully created.",
        "created": "2018-04-23 10:39:38",
        "card_token": "4BB998B580AEE2036C397F8C1003",
        "gateway": "wirecard",
        "mask_number": "4012 00XX XXXX 1003"
    }
}
Response Example (Validation)
{"error":{"transaction_id":["The transaction_id field is required."]},"code":"422"}

{"error":"Invalid Order Id","code":"422"}

Reverse Capture reverse a capture

A Reverse Capture is performed against a previous Capture transaction, referencing its transaction_id by sending a POST request over HTTPS to the /api/v1/reverse/capture.

A reversal can only reverse the full transaction and does not require the amount or currency to be sent i.e. a partial reversal is not possible.

POST /api/v1/reverse/capture
Key Value Type Description
api_id base64_encode (64)
This is the unique id associate with merchant.
order_id string (6-40)
Merchant internal Unique ID for this transaction.
transaction_id string (uuid)
This is the unique id for this transaction.
description string (5-255)
Merchat description of this transactions .
ip_address string
The IP address associated with the device used by the customer in the transaction.
Request Example
$url="https://testpayspeedo.paypipes.com/api/v1/reverse/capture";

$param = [
    "request" => [
        "api_id" => "3031022dfc91b64a73f8fcece40a648c17a73379ccc373095abb617fb163a81e",
        "order_id" => "8c5ca6d32567f89034c57029",
        'transaction_id' => '4ad78bba-635b-4ad6-a74c-de7126a7341b',
        'description' => 'Reverse Request',
        "ip_address" => "123.123.123.1",
    ]
];


$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($param));
curl_setopt(
    $ch,
    CURLOPT_HTTPHEADER,
    [
        "Content-type: application/json",
        "Accept: application/json",
        "Cache-Control: no-cache",
        "User-Agent: ".$_SERVER['HTTP_USER_AGENT'],
        "Authorization: Bearer ". $auth->access_token
    ]
);
$response = curl_exec($ch);
curl_close($ch);

var_dump(json_decode($response));
Key Value Type Description
order_id string (6-40) Transaction response return value of Merchant internal Unique ID for this transactions.
transaction_id string (uuid) This is the unique id for this transaction.
transaction_type enum Transaction response return value of requested transaction type.
amount decimal (10,2) Transaction response return value of requested transaction amount.
currency string (3) Transaction response return value of requested transaction amount.
status enum

Transaction response return value of transaction status. The valid values are:

  • Approved
  • Declined
  • Cancelled
  • Pending
  • Held
status_code string The status code returned from PayPipes or gateway.
status_description string(255) The status description returned from PayPipes or gateway.
created datetime The created date and time of the transaction. The datetime is based on PayPipes servers.
card_token string (28) Transaction response return value of card_token for successfull TokenizeCustomer/Purchase/Authorize transactions. For creditcard only.
gateway enum

Transaction response return value of gateway. See suported gateways for gateway field value.

mask_number string (36) Transaction response return value of card_number as mask_number for successfull Purchase/Authorize transactions. For creditcard only.
Response Example (200 OK)

{
    "data": {
        "order_id": "8c5ca6d32567f89034c57029",
        "transaction_id": "47adb6a1-ace6-469e-8ffc-25416fb5e7a0",
        "transaction_type": "ReverseCapture",
        "amount": "14.92",
        "currency": "EUR",
        "status": "Approved",
        "status_code": "201.0000",
        "status_description": "3d-acquirer:The resource was successfully created.",
        "created": "2018-04-23 10:39:38",
        "card_token": "4BB998B580AEE2036C397F8C1003",
        "gateway": "wirecard",
        "mask_number": "4012 00XX XXXX 1003"
    }
}
Response Example (Validation)
{"error":{"phone_code":["The phone code field is required."]},"code":"422"}

{"error":"Invalid Order Id","code":"422"}

Reverse Purchase reverse a purchase

A Reverse Purchase is performed against a previous Capture transaction, referencing its transaction_id by sending a POST request over HTTPS to the /api/v1/reverse/purchase.

A reversal can only reverse the full transaction and does not require the amount or currency to be sent i.e. a partial reversal is not possible.

POST /api/v1/tokenize/customers/{customer_token}/cards
Key Value Type Description
api_id base64_encode (64)
This is the unique id associate with merchant.
order_id string (6-40)
Merchant internal Unique ID for this transaction.
transaction_id string (uuid)
This is the unique id for this transaction.
description string (5-255)
Merchat description of this transactions .
ip_address string
The IP address associated with the device used by the customer in the transaction.
Request Example
$url="https://testpayspeedo.paypipes.com/api/v1/reverse/purchase";

$param = [
    "request" => [
        "api_id" => "3031022dfc91b64a73f8fcece40a648c17a73379ccc373095abb617fb163a81e",
        "order_id" => "8c5ca6d32567f89034c57028",
        'transaction_id' => '1652757c-4a98-4f90-8fce-d19cebb3fd5f',
        'description' => 'Reverse Request',
        "ip_address" => "123.123.123.1",
    ]
];

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($param));
curl_setopt(
    $ch,
    CURLOPT_HTTPHEADER,
    [
        "Content-type: application/json",
        "Accept: application/json",
        "Cache-Control: no-cache",
        "User-Agent: ".$_SERVER['HTTP_USER_AGENT'],
        "Authorization: Bearer ". $auth->access_token
    ]
);
$response = curl_exec($ch);
curl_close($ch);

var_dump(json_decode($response));
Key Value Type Description
order_id string (6-40) Transaction response return value of Merchant internal Unique ID for this transactions.
transaction_id string (uuid) This is the unique id for this transaction.
transaction_type enum Transaction response return value of requested transaction type.
amount decimal (10,2) Transaction response return value of requested transaction amount.
currency string (3) Transaction response return value of requested transaction amount.
status enum

Transaction response return value of transaction status. The valid values are:

  • Approved
  • Declined
  • Cancelled
  • Pending
  • Held
status_code string The status code returned from PayPipes or gateway.
status_description string(255) The status description returned from PayPipes or gateway.
created datetime The created date and time of the transaction. The datetime is based on PayPipes servers.
card_token string (28) Transaction response return value of card_token for successfull TokenizeCustomer/Purchase/Authorize transactions. For creditcard only.
gateway enum

Transaction response return value of gateway. See suported gateways for gateway field value.

mask_number string (36) Transaction response return value of card_number as mask_number for successfull Purchase/Authorize transactions. For creditcard only.
Response Example (200 OK)

{
    "data": {
        "order_id": "8c5ca6d32567f89034c57028",
        "transaction_id": "47adb6a1-ace6-469e-8ffc-25416fb5e7a0",
        "transaction_type": "ReversePurchase",
        "amount": "14.92",
        "currency": "EUR",
        "status": "Approved",
        "status_code": "201.0000",
        "status_description": "3d-acquirer:The resource was successfully created.",
        "created": "2018-04-23 10:39:38",
        "card_token": "4BB998B580AEE2036C397F8C1003",
        "gateway": "wirecard",
        "mask_number": "4012 00XX XXXX 1003"
    }
}
Response Example (Validation)
{"error":{"phone_code":["The phone code field is required."]},"code":"422"}

{"error":"Invalid Order Id","code":"422"}

Refund refund capture or purchase

A Refund is performed against a previous Capture or Purchase transaction, referencing its transaction_id by sending a POST request over HTTPS to the /api/v1/refund. Where supported, the amount field can be used to process a partial or full amount.

POST /api/v1/refund
Key Value Type Description
api_id base64_encode (64)
This is the unique id associate with merchant.
order_id string (6-40)
Merchant internal Unique ID for this transaction.
transaction_id string (uuid)
This is the unique id for this transaction.
amount decimal(10,2)
The total order amount for the transaction. The value format 12.00.
description string (5-255)
Merchat description of this transactions .
ip_address string
The IP address associated with the device used by the customer in the transaction.
Request Example
$url="https://testpayspeedo.paypipes.com/api/v1/refund";

$param = [
    "request" => [
        "api_id" => "3031022dfc91b64a73f8fcece40a648c17a73379ccc373095abb617fb163a81e",
        "order_id" => "8c5ca6d32567f89034c57027",
        'transaction_id' => '1652757c-4a98-4f90-8fce-d19cebb3fd5f',
        "amount" => "10.00",
        'description' => 'Reverse Request',
        "ip_address" => "123.123.123.1",
    ]
];

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($param));
curl_setopt(
    $ch,
    CURLOPT_HTTPHEADER,
    [
        "Content-type: application/json",
        "Accept: application/json",
        "Cache-Control: no-cache",
        "User-Agent: ".$_SERVER['HTTP_USER_AGENT'],
        "Authorization: Bearer ". $auth->access_token
    ]
);
$response = curl_exec($ch);
curl_close($ch);

var_dump(json_decode($response));
Key Value Type Description
order_id string (6-40) Transaction response return value of Merchant internal Unique ID for this transactions.
transaction_id string (uuid) This is the unique id for this transaction.
transaction_type enum Transaction response return value of requested transaction type.
amount decimal (10,2) Transaction response return value of requested transaction amount.
currency string (3) Transaction response return value of requested transaction amount.
status enum

Transaction response return value of transaction status. The valid values are:

  • Approved
  • Declined
  • Cancelled
  • Pending
  • Held
status_code string The status code returned from PayPipes or gateway.
status_description string(255) The status description returned from PayPipes or gateway.
created datetime The created date and time of the transaction. The datetime is based on PayPipes servers.
card_token string (28) Transaction response return value of card_token for successfull TokenizeCustomer/Purchase/Authorize transactions. For creditcard only.
gateway enum

Transaction response return value of gateway. See suported gateways for gateway field value.

mask_number string (36) Transaction response return value of card_number as mask_number for successfull Purchase/Authorize transactions. For creditcard only.
Response Example (200 OK)

{
    "data": {
        "order_id": "8c5ca6d32567f89034c57027",
        "transaction_id": "47adb6a1-ace6-469e-8ffc-25416fb5e7a0",
        "transaction_type": "Refund",
        "amount": "14.92",
        "currency": "EUR",
        "status": "Approved",
        "status_code": "201.0000",
        "status_description": "3d-acquirer:The resource was successfully created.",
        "created": "2018-04-23 10:39:38",
        "card_token": "4BB998B580AEE2036C397F8C1003",
        "gateway": "wirecard",
        "mask_number": "4012 00XX XXXX 1003"
    }
}
Response Example (Validation)
{"error":{"phone_code":["The phone code field is required."]},"code":"422"}

{"error":"Invalid Order Id","code":"422"}

Credit independent refund

A Credit is created by sending a POST request over HTTPS to the /api/v1/credit. A Credit is an independent transaction that results in a refund. A Credit transaction currency and gateway are based on previous transaction_id. This transaction_id must belong to a purchase or capture transaction with approved status.

POST /api/v1/credit
Key Value Type Description
api_id base64_encode (64)
This is the unique id associate with merchant.
order_id string (6-40)
Merchant internal Unique ID for this transaction.
transaction_id string (uuid)
This is the unique id for this transaction.
amount decimal(10,2)
The total order amount for the transaction. The value format 12.00.
description string (5-255)
Merchat description of this transactions .
ip_address string
The IP address associated with the device used by the customer in the transaction.
Request Example
$url="https://testpayspeedo.paypipes.com/api/v1/credit";

$param = [
    "request" => [
        "api_id" => "3031022dfc91b64a73f8fcece40a648c17a73379ccc373095abb617fb163a81e",
        "order_id" => "8c5ca6d32567f89034c57025",
        "transaction_id" => "66cb692d-2282-4a92-a641-ff537ae08341",
        "amount"=> "14.92",
        "description"=> "Original Credit",
        "ip_address" => "123.123.123.1"
    ]
];


$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($param));
curl_setopt(
    $ch,
    CURLOPT_HTTPHEADER,
    [
        "Content-type: application/json",
        "Accept: application/json",
        "Cache-Control: no-cache",
        "User-Agent: ".$_SERVER['HTTP_USER_AGENT'],
        "Authorization: Bearer ". $auth->access_token
    ]
);
$response = curl_exec($ch);
curl_close($ch);

var_dump(json_decode($response));
Key Value Type Description
order_id string (6-40) Transaction response return value of Merchant internal Unique ID for this transactions.
transaction_id string (uuid) This is the unique id for this transaction.
transaction_type enum Transaction response return value of requested transaction type.
amount decimal (10,2) Transaction response return value of requested transaction amount.
currency string (3) Transaction response return value of requested transaction amount.
status enum

Transaction response return value of transaction status. The valid values are:

  • Approved
  • Declined
  • Cancelled
  • Pending
  • Held
status_code string The status code returned from PayPipes or gateway.
status_description string(255) The status description returned from PayPipes or gateway.
created datetime The created date and time of the transaction. The datetime is based on PayPipes servers.
card_token string (28) Transaction response return value of card_token for successfull TokenizeCustomer/Purchase/Authorize transactions. For creditcard only.
gateway enum

Transaction response return value of gateway. See suported gateways for gateway field value.

mask_number string (36) Transaction response return value of card_number as mask_number for successfull Purchase/Authorize transactions. For creditcard only.
Response Example (200 OK)

{
    "data": {
        "order_id": "8c5ca6d32567f89034c57025",
        "transaction_id": "47adb6a1-ace6-469e-8ffc-25416fb5e7a0",
        "transaction_type": "Credit",
        "amount": "14.92",
        "currency": "EUR",
        "status": "Approved",
        "status_code": "201.0000",
        "status_description": "3d-acquirer:The resource was successfully created.",
        "created": "2018-04-23 10:39:38",
        "card_token": "4BB998B580AEE2036C397F8C1003",
        "gateway": "wirecard",
        "mask_number": "4012 00XX XXXX 1003"
    }
}
Response Example (Validation)
{"error":{"phone_code":["The phone code field is required."]},"code":"422"}

{"error":"Invalid Order Id","code":"422"}

Status check transaction status

A Status is performed based on a previous transaction of any type, referencing its transaction_id or order_id by sending a GET request over HTTPS to the /api/v1/status/{transaction_id}?api_id={api_id} or /api/v1/status/{order_id}?api_id={api_id}. Status of the transaction will be received as a response.

GET /api/v1/status/{transaction_id}?api_id={api_id} or /api/v1/status/{order_id}?api_id={api_id}
Key Value Type Description
api_id base64_encode (64)
This is the unique id associate with merchant.
order_id string (6-40)
Merchant internal Unique ID for this transaction.
transaction_id string (uuid)
This is the unique id for this transaction.
Request Example
$url="https://testpayspeedo.paypipes.com/api/v1/status";

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");
curl_setopt(
    $ch,
    CURLOPT_HTTPHEADER,
    [
        "Content-type: application/json",
        "Accept: application/json",
        "Cache-Control: no-cache",
        "User-Agent: ".$_SERVER['HTTP_USER_AGENT'],
        "Authorization: Bearer ". $auth->access_token
    ]
);
$response = curl_exec($ch);
curl_close($ch);

var_dump(json_decode($response));
Key Value Type Description
order_id string (6-40) Transaction response return value of Merchant internal Unique ID for this transactions.
transaction_id string (uuid) This is the unique id for this transaction.
transaction_type enum Transaction response return value of requested transaction type.
amount decimal (10,2) Transaction response return value of requested transaction amount.
currency string (3) Transaction response return value of requested transaction amount.
status enum

Transaction response return value of transaction status. The valid values are:

  • Approved
  • Declined
  • Cancelled
  • Pending
  • Held
status_code string The status code returned from PayPipes or gateway.
status_description string(255) The status description returned from PayPipes or gateway.
created datetime The created date and time of the transaction. The datetime is based on PayPipes servers.
card_token string (28) Transaction response return value of card_token for successfull TokenizeCustomer/Purchase/Authorize transactions. For creditcard only.
gateway enum

Transaction response return value of gateway. See suported gateways for gateway field value.

mask_number string (36) Transaction response return value of card_number as mask_number for successfull Purchase/Authorize transactions. For creditcard only.
Response Content-Types: application/xml, application/json
Response Example (200 OK)

{
    "data": {
        "order_id": "3f5917ef5a97f50e6b2f8a27",
        "transaction_id": "10cd5c0a-0832-4de1-9091-bb5199b439f1",
        "transaction_type": "Purchase",
        "amount": "92.35",
        "currency": "EUR",
        "status": "Approved",
        "status_code": "201.0000",
        "status_description": "3d-acquirer:The resource was successfully created.",
        "created": "2018-04-23 10:56:58",
        "card_token": "4BB998B580AEE2036C397F8C1003",
        "gateway": "wirecard",
        "mask_number": "4012 00XX XXXX 1003"
    }
}
Response Example (Validation)
{"error":{"api_id":["The api_id field is required."]},"code":"422"}

{"error":"Invalid Api Id","code":"422"}

Customer Details retrive customer details

A Customer Details reequest is performed based on customer_token by sending a GET request over HTTPS to the /api/v1/tokenize/customers/{customer_token}?api_id={api_id}. Customer details request will retrive customer information and all customer cards information.

GET /api/v1/tokenize/customers/{customer_token}?api_id={api_id}
Key Value Type Description
api_id base64_encode (64)
This is the unique id associate with merchant.
customer_token string (uuid)
This is the unique customer_token for the customer.
Request Example
$url="https://testpayspeedo.paypipes.com/api/v1/tokenize/customers/10cd5c0a-0832-4de1-9091-bb5199b439f1?api_id=449f11a438853bb84bd7193fd6bceb0886d083d0a8d5e583a7f92fc55573854d";

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");
curl_setopt(
    $ch,
    CURLOPT_HTTPHEADER,
    [
        "Content-type: application/json",
        "Accept: application/json",
        "Cache-Control: no-cache",
        "User-Agent: ".$_SERVER['HTTP_USER_AGENT'],
        "Authorization: Bearer ". $auth->access_token
    ]
);
$response = curl_exec($ch);
curl_close($ch);

var_dump(json_decode($response));
Key Value Type Description
customer_token string (uuid) Transaction response return value of customer_token for successfull tokenize customer transactions.
order_id string (6-40) Transaction response return value of Merchant internal Unique ID for this transactions.
first_name string (2-60) The first name of the end customer as provided in their billing information.
last_name string (2-60) The last name of the end customer as provided in their billing information.
street string (5-100) The address of the end customer’s as provided in their billing address.
city string (2-40) The city of the end customer’s billing address.
state string (2-40) The state of the end customer’s billing address.
country string (255) The Country is return (English short country name officially used by the ISO 3166) of the customer’s billing address.
post_code string (20) The postal code of the customer’s billing address.
phone_code string (1-7) The phone country code of the customer’s billing address. Punctuation characters will be stripped. After stripping punctuation characters, ex +420 or 00420.
phone string (20) The phone number of the customer’s billing address. Punctuation characters will be stripped. After stripping punctuation characters, the number must contain only digits.
email string (100) The email address of the customer.
created datetime The created date and time of the transaction. The datetime is based on PayPipes servers.
updated datetime The updated date and time of the transaction. The datetime is based on PayPipes servers.
card_token string (28) Transaction response return value of card_token for successfull TokenizeCustomer/Purchase/Authorize transactions.
holder string (2-100) The card holder name for the credit card.
bin integer (6) The bin number of the credit card.
digit integer (4) The last 4 digits of the credit card
brand string The brand of the credit card.
expired datetime The expiration date and time of the customer/card token. The datetime is based on PayPipes servers.
Response Example (200 OK)
{"data":{"customer_token":"14d63bf9-e960-466c-bc62-5e241bd81259","order_id":"46c83f43107ef4da0553137d","first_name":"Elliott","last_name":"Davis","street":"Studio 19Carter Keys","city":"West Jackson","state":"Karlburgh","post_code":"CO9 3JZ","country":"Tajikistan","phone_code":"+81","phone":"2727388728","email":"ella08@example.org","status":"Active","created":"2018-05-02 19:28:34","updated":"2018-05-02 19:28:34","expired":"2021-05-02 19:28:34","cards":{"data":[{"card_token":"073FCFCECFDD7468F83B60901003","holder":"Test Card","bin":"401200","digit":"1003","brand":"visa","created":"2018-05-02 19:28:35","updated":"2018-05-02 19:28:35","expired":"2019-01-31 19:28:35"}]}}}
Response Example (Validation)
{"error":{"api_id":["The api_id field is required."]},"code":"422"}

{"error":"Invalid Api Id","code":"422"}

Customer Card Details retrive card details

A Customer Card Details reequest is performed based on customer_token && card_token by sending a GET request over HTTPS to the /api/v1/tokenize/customers/{customer_token}/cards/{card_token}?api_id={api_id}. Customer card details request will retrive details on specific card information.

GET /api/v1/tokenize/customers/{customer_token}/cards/{card_token}?api_id={api_id}
Key Value Type Description
api_id base64_encode (64)
This is the unique id associate with merchant.
customer_token string (uuid)
This is the unique customer_token for the customer.
card_token string (28)
A token uniquely identifying the card in the system.
Request Example
$url="https://testpayspeedo.paypipes.com/api/v1/tokenizer/customers/34490389-d609-46f7-9c29-f0bbd396b968/cards/073FCFCECFDD7468F83B60901003?api_id=449f11a438853bb84bd7193fd6bceb0886d083d0a8d5e583a7f92";

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");
curl_setopt(
    $ch,
    CURLOPT_HTTPHEADER,
    [
        "Content-type: application/json",
        "Accept: application/json",
        "Cache-Control: no-cache",
        "User-Agent: ".$_SERVER['HTTP_USER_AGENT'],
        "Authorization: Bearer ". $auth->access_token
    ]
);
$response = curl_exec($ch);
curl_close($ch);

var_dump(json_decode($response));
Key Value Type Description
card_token string (28) Transaction response return value of card_token for successfull TokenizeCustomer/Purchase/Authorize transactions.
holder string (2-100) The card holder name for the credit card.
bin integer (6) The bin number of the credit card.
digit integer (4) The last 4 digits of the credit card
brand string The brand of the credit card.
created datetime The created date and time of the transaction. The datetime is based on PayPipes servers.
updated datetime The updated date and time of the transaction. The datetime is based on PayPipes servers.
expired datetime The expiration date and time of the customer/card token. The datetime is based on PayPipes servers.
Response Example (200 OK)
{"data":{"card_token":"073FCFCECFDD7468F83B60901003","holder":"Test Card","bin":"401200","digit":"1003","brand":"visa","created":"2018-05-02 19:28:35","updated":"2018-05-02 19:28:35","expired":"2019-01-31 19:28:35"}}
Response Example (Validation)
{"error":{"api_id":["The api_id field is required."]},"code":"422"}

{"error":"Invalid Api Id","code":"422"}

Error Codes

102

Processing

200

OK

201

Created

202

Accepted

203

Non-authoritative Information

204

No Content

206

Partial Content

207

Multi-Status

302

Found

304

Not Modified

400

Bad Request

401

Unauthorized

402

Payment Required

403

Forbidden

404

Not Found

405

Method Not Allowed

406

Not Acceptable

409

Conflict

413

Payload Too Large

415

Unsupported Media Type

416

Requested Range Not Satisfiable

422

Unprocessable Entity

423

Locked

424

Failed Dependency

444

No Response

499

Client Closed Request

500

Internal Server Error

501

Not Implemented

503

Service Unavailable

Gateways

PayPal

Services and Compatibility
Logo
Gateway field value paypal
Transaction types Tokenize Customer, Purchase, Status, Customer Details
Payment Options PayPal
Test Data

Any PayPal sandbox account

Skrill

Services and Compatibility
Logo
Gateway field value skrill
Transaction types Tokenize Customer, Purchase, Status, Customer Details
Payment Options Skrill
Test Data
Email Address Password
testcustomer987@skrill.com05v95bB0z0gcZuTs

Neteller

Services and Compatibility
Logo
Gateway field value neteller
Transaction types Tokenize Customer, Purchase, Status, Customer Details
Payment Options Neteller
Test Data
Currency Account ID Email Address Secure ID
AED451323763077netellertest_AED@neteller.com315508
AUD451823760529netellertest_AUD@neteller.com521652
BGN450424149137netellertest_BGN@neteller.com354380
BRL452124231445netellertest_BRL@neteller.com907916
CAD455781454840netellertest_CAD@neteller.com755608
CHF452324249609netellertest_CHF@neteller.com372993
DKK459734233011netellertest_DKK@neteller.com856751
EUR453501020503netellertest_EUR@neteller.com908379
GBP458591047553netellertest_GBP@neteller.com411392
HUF450824149649netellertest_HUF@neteller.com363552
INR450824016049netellertest_INR@neteller.com332880
JPY452604251512netellertest_JPY@neteller.com490055
MAD453123727913netellertest_MAD@neteller.com796289
MXN456444237546netellertest_MXN@neteller.com878408
MYR452724116521netellertest_MYR@neteller.com108145
NGN450924006321netellertest_NGN@neteller.com205750
NOK455394172769netellertest_NOK@neteller.com418852
PLN451823629489netellertest_PLN@neteller.com654091
RON450424018097netellertest_RON@neteller.com860647
RUB455121038904netellertest_RUB@neteller.com888470
SEK453313818311netellertest_SEK@neteller.com173419
SGD451523741861netellertest_SGD@neteller.com316938
TND453523858985netellertest_TND@neteller.com588931
TWD451723748785netellertest_TWD@neteller.com711009
USD454651018446netellertest_USD@neteller.com270955
ZAR453523842837netellertest_ZAR@neteller.com708904

Paysafecard

Services and Compatibility
Logo
Gateway field value paysafecard
Transaction types Tokenize Customer, Purchase, Status, Customer Details
Payment Options Paysafecard
Test Data
PIN Value Currency
015775865596499750 EUR
426109541626171750 EUR
926053195827592850 EUR
105214854000131350 EUR
708955974573435550 EUR
404202475614644750 EUR
1438449228368102100USD
0736496971383360100USD
7162727007500773100USD
3973602250827178100USD
7174524732718217100USD
6879873353139680100USD
3513175823497050250MXN
1071213854453640250MXN
3831045315918323250MXN
2385435021401234250MXN
3193276715435340250MXN
9139379355860848250MXN
233956607915525575 CHF
762863202851087875 CHF
088033269203404975 CHF
873245159119573075 CHF
433975793817201875 CHF
235737893160917175 CHF
471137342849442510 GBP
376289355976252410 GBP
511171859463727910 GBP
718063293311379810 GBP
521381856239091210 GBP
859044528844702710 GBP
808086730868796210000000EUR

Wirecard

Services and Compatibility
Logo
Gateway field value wirecard
Transaction Types Tokenize Customer, Tokenize Card, Authorize, Capture, Purchase, Reverse Authorize, Reverse Capture, Reverse Purchase, Refund, Credit, Status, Customer Details, Customer Card Details
Payment options Visa, MasterCard, Maestro
Test Data
Brand Card Number Expiry Date CVC 3D Password
VISA 4012000300001003 01/2019 003 wirecard
Mastercard 5413330300001006 01/2019 006 wirecard
Maestro 6799860300001000003 01/2019 003 wirecard
VISA 4012000300002001 01/2019 001
Mastercard 5413330300002004 01/2019 004
Maestro 6799860300002000002 01/2019 002

CardPay

Services and Compatibility
Logo
Gateway field value cardpay
Transaction types Tokenize Customer, Tokenize Card, Authorize, Capture, Purchase, Reverse Authorize, Reverse Capture, Reverse Purchase, Refund, Credit, Status, Customer Details, Customer Card Details
Payment Options Visa, MasterCard, Maestro
Test Data
Brand Card Number Expiry Date CVC Description
Visa400000000000000201/2020123(will be CONFIRMED as 3DS transaction)
MasterCard555555555555444401/2020123(will be DECLINED as 3DS transaction)
Visa400000000000004401/2020123(will be PENDING as 3DS transaction)
Visa400000000000007701/2020123(will be CONFIRMED as non-3DS transaction)
MasterCard555555555555447701/2020123(will be DECLINED as non-3DS transaction)
Visa400000000000005101/2020123(will be PENDING as non-3DS transaction)

AstroPay

Services and Compatibility
Logo
Gateway field value astropaycard, astropaydirect
Transaction types (AstroPay Card) Tokenize Customer, Tokenize Card, Authorize, Capture, Purchase, Reverse Authorize, Credit, Status, Customer Details, Customer Card Details
Transaction types (AstroPay Direct) Tokenize Customer, Purchase, Status, Customer Details
Payment Options AstroPay Card, AstroPay Direct
Test Data
Brand Card Number Expiry Date CVC
AstroPayCard161634972114811710/20197058
AstroPayCard161648084833420510/20196992

Logo Download

Small Image download
Large Image download
Vector Image download