Skip to main content

Veloconnect

Veloconnect is an XML-based protocol for exchanging product, order, document, stock, and sales information. All supported operations use the same endpoint:

https://connections.cyclingfactory.be/veloconnect/v1

The operation is selected by the XML root element for a POST request, or by the RequestName query parameter for a GET request.

Before you start​

You need all of the following:

  • a BuyersID issued for your integration;
  • the matching password/API key;
  • HTTPS access to the endpoint;
  • XML that uses the namespace and element order defined by the relevant Veloconnect XSD;
  • seller item identifiers and document identifiers that belong to your customer account.

Treat the BuyersID and password as confidential. The values in this documentation are placeholders and cannot be used to access the service.

Recommended binding: XML over POST​

Send raw XML with Content-Type: application/xml. Authentication is part of the Veloconnect request envelope:

<?xml version="1.0" encoding="UTF-8"?>
<GetProfileRequest
xmlns="urn:veloconnect:profile-1.1"
xmlns:vct="urn:veloconnect:transaction-1.0">
<vct:BuyersID>YOUR_BUYERS_ID</vct:BuyersID>
<vct:Credential>
<vct:Password>YOUR_PASSWORD</vct:Password>
</vct:Credential>
<vct:IsTest>true</vct:IsTest>
</GetProfileRequest>
curl --request POST \
--header 'Content-Type: application/xml' \
--data-binary @request.xml \
'https://connections.cyclingfactory.be/veloconnect/v1'

The server authenticates the password, checks that the BuyersID is known, validates the request against the bundled Veloconnect schemas, performs the operation, and returns XML.

URL binding with GET​

Read-oriented operations can also use GET. Supply the operation as RequestName, the buyer as BuyersID, and the password in the x-api-key header. Operation-specific inputs are additional query parameters.

curl --get \
--header 'x-api-key: YOUR_PASSWORD' \
--data-urlencode 'RequestName=GetProfileRequest' \
--data-urlencode 'BuyersID=YOUR_BUYERS_ID' \
--data-urlencode 'IsTest=true' \
'https://connections.cyclingfactory.be/veloconnect/v1'

The implementation also accepts credentials in query parameters, but a header or POST body is safer because URLs are commonly stored in logs and browser history.

Test mode​

Set IsTest to true while developing. The response repeats the test flag. Keep the value consistent for every request in the same transaction; changing between test and live mode during a transaction can be rejected.

Test mode does not replace schema validation or authentication. Use a test request only with credentials and identifiers supplied for your integration.

Start with GetProfile​

Call GetProfile after authentication is configured. Its response describes the operations and bindings advertised by the server. This is the safest way for a client to discover current capabilities instead of assuming that every operation in the Veloconnect standard is enabled.

Continue with Requests and responses for the operation flows and required input.