Integrate our products into your software. Let's make payment happen together!
Look at all the possibilitiesThe most basic scenario is the usage of a PSP in a shop: payments with customer redirection to a PSP/Acquirer.
The customer is done shopping and proceeds to checkout
You request their authentication or a new registration
Once the authentication is complete, you present the customer with the possible payment methods. In order to know your enabled methods, you can query the API. See List all methods
Example request
curl --basic --user apikey: https://api.psp.ccv.eu/api/v1/method
Example response
[ {
"method" : "card",
"options" : [ {
"brand" : "visa"
}, {
"brand" : "mastercard"
}, {
"brand" : "maestro"
}, {
"brand" : "bcmc"
}, {
"brand" : "amex"
} ]
}, {
"method" : "ideal",
"options" : [ {
"issuerdescription" : "Issuer Simulation V3 - ING",
"issuerid" : "INGBNL2A",
"grouptype" : "country",
"group" : "Nederland"
}, {
"issuerdescription" : "Issuer Simulation V3 - RABO",
"issuerid" : "RABONL2U",
"grouptype" : "country",
"group" : "Nederland"
} ]
}, {
"method" : "paypal"
} ]
The customer selects their preferred payment method.
At this point you want us to handle the payment. Your backend system initiates a payment transaction using the API. Keep in mind that your API key must not be exposed to the customer for any reason whatsoever. See also Create a new payment.
Example request
curl --basic --user apikey: -H "User-Agent: Shop123456" -H "Idempotency-Reference: 1FAvu5eqNFwohXwPZLJajVecN5AIPaUl7qPFi4jFx4Hvt4SeUO" -H "Content-Type: application/json" --data '{ "amount" : 9.99, "currency" : "eur", "method" : "card", "brand" : "visa", "returnUrl" : "http://shop/return?order=123456", "merchantOrderReference" : "123456", "description" : "Order 123456", "language" : "eng" }' https://api.psp.ccv.eu/api/v1/payment
After we validated the input parameters, we’ll return a new payment transaction. See also Payment Object.
Example response
{
"merchantOrderReference" : "123456",
"amount" : 9.99,
"returnUrl" : "http://shop/return?order=123456",
"language" : "eng",
"lastUpdate" : 1450871254946,
"payUrl" : "https://onlinepayments.ccv.eu/card/payment.html?reference=C151223124734945CB87E191.0",
"reference" : "C151223124734945CB87E191.0",
"created" : 1450871254946,
"currency" : "eur",
"method" : "card",
"type" : "sale",
"description" : "Order 123456",
"status" : "pending"
}
In order to have the payment completed, you’ll need to redirect your customer
to the pay url (payUrl
) as generated for the payment.
Depending on the payment method, your customer will have to follow several steps to complete the payment. For this example, the customer will need to provide their card details to continue with the payment.
As a final result, we return the customer back to your shop. This return url (returnUrl
) is provided
by you when you initiated the request in step 5.
At this point you don’t know whether the payment is successful or not.
Example request
curl --basic --user apikey: https://api.psp.ccv.eu/api/v1/transaction?reference=C151223124734945CB87E191.0
Example response
{
"merchantOrderReference" : "123456",
"amount" : 9.99,
"brand" : "visa",
"returnUrl" : "http://shop/return?order=123456",
"language" : "eng",
"lastUpdate" : 1450871414476,
"payUrl" : "https://onlinepayments.ccv.eu/card/payment.html?reference=C151223124734945CB87E191.0",
"reference" : "C151223124734945CB87E191.0",
"created" : 1450871254959,
"currency" : "eur",
"method" : "card",
"type" : "sale",
"description" : "Order 123456",
"status" : "success"
}
Assuming the payment is successful, you can contact the customer by email with a confirmation, show an appropriate notification on the shop, …
As a side effect of completing a payment (successfully or not), we can notify you using a webhook or a notification. This allows you to perform additional operations in your system like sending an email to your customer.
Using the shop payment solution, you’ll gain several benefits: