-
Notifications
You must be signed in to change notification settings - Fork 8
Home
Quentin Homareau edited this page Mar 6, 2017
·
5 revisions
This library provides developers with a simple set of bindings to the 2Checkout Payment API, Hosted Checkout, Instant Notification Service and Admin API.
To use, download or clone the repository and install with npm.
git clone https://github.com/2Checkout/2checkout-node.git
npm install 2checkout-node
Then you can require the module and setup the 2Checkout object with a number of options shown below.
// Require the module
var Twocheckout = require('2checkout-node');
// Pass in your private key and seller ID
var tco = new Twocheckout({
apiUser: "APIuser1817037", // Admin API Username, required for Admin API bindings
apiPass: "APIpass1817037", // Admin API Password, required for Admin API bindings
sellerId: "1817037", // Seller ID, required for all non Admin API bindings
privateKey: "3508079E-5383-44D4-BF69-DC619C0D9811", // Payment API private key, required for checkout.authorize binding
secretWord: "tango", // Secret Word, required for response and notification checks
demo: true, // Set to true if testing response with demo sales
sandbox: false // Uses 2Checkout sandbox URL for all bindings
});
Example Request:
// Setup the authorization object
var params = {
"merchantOrderId": "123",
"token": "MWQyYTI0ZmUtNjhiOS00NTIxLTgwY2MtODc3MWRlNmZjY2Jh",
"currency": "USD",
"total": "10.00",
"billingAddr": {
"name": "Testing Tester",
"addrLine1": "123 Test St",
"city": "Columbus",
"state": "Ohio",
"zipCode": "43123",
"country": "USA",
"email": "[email protected]",
"phoneNumber": "5555555555"
}
};
// Make the call using the authorization object and your callback function
tco.checkout.authorize(params, function (error, data) {
if (error) {
console.log(error.message);
} else {
console.log(JSON.stringify(data));
}
});
Example Request:
tco.sales.retrieve({sale_id: 205203115664}, function (error, data) {
if (error) {
console.log(error);
} else {
console.log(data);
}
});
Example Request:
// Setup checkout params
var params = {
mode: '2CO',
li_0_name: 'Test Product',
li_0_price: '0.01'
};
// Get a URL encoded payment link
var link = tco.checkout.link(params);
Example Request:
if (tco.response.valid(request.body), 0.01) {
response.send("Valid");
} else {
response.send("Invalid");
}
Example Request:
if (tco.notification.valid(request.body)) {
response.send("Valid");
} else {
response.send("Invalid");
}
Errors are returned as the first argument to your callback if they occur. It is best to always check for these before attempting to work with the response.
Example Usage:
tco.checkout.authorize(params, function (error, data) {
if (error) {
console.log(error.message);
} else {
console.log(JSON.stringify(data));
}
});
Full documentation for each binding can be accessed from the sidebar.
Please feel free to contact 2Checkout directly for assistance with your integration.