Skip to content

Payments

Mark Moffat edited this page Oct 7, 2020 · 4 revisions

expressCart has the ability to combine multiple payment methods at checkout. For instance, you may want to provide credit card payments using Stripe but also add Bitcoin with Blockonomics, PayPal and Buy Now Pay later with Zip.

Payment providers included:

Paypal (Payments)

The Paypal config file is located: /config/payment/config/paypal.json. A example Paypal settings file is provided:

{
    "description": "Paypal payment",
    "mode": "live", // sandbox or live
    "client_id": "this_is_not_real",
    "client_secret": "this_is_not_real",
    "paypalCartDescription": "expressCart", // Shows as the Paypal description
    "paypalCurrency": "USD" // The Paypal currency to charge in
}

Note: The client_id and client_secret is obtained from your Paypal account.

Stripe (Payments)

The Stripe config file is located: /config/payment/config/stripe.json. A example Stripe settings file is provided:

{
    "description": "Card payment",
    "secretKey": "sk_test_this_is_not_real",
    "publicKey": "pk_test_this_is_not_real",
    "stripeCurrency": "usd", The Stripe currency to charge in
    "stripeDescription": "expressCart payment", // Shows as the Stripe description
    "stripeLogoURL": "http://localhost:1111/images/stripelogo.png" // URL to the logo to display on Stripe form
    "stripeWebhookSecret": "whsec_this_is_not_real"
}

Note: The secretKey, publicKey and stripeWebhookSecret is obtained from your Stripe account dashboard.

Blockonomics (Bitcoin Payments)

You have to configure the HTTP Callback URL parameter into Blockonomics -> Merchants -> Settings: http://CartURL/blockonomics/checkout_return where CartURL is the address of your server

The Blockonomics config file is located: /config/payment/config/blockonomics.json. A example Blockonomics settings file is provided:

{
    "description": "Blockonomics payment",
    "apiKey": "this_is_not_real",
    "hostUrl": "https://www.blockonomics.co", // You usually don't need to change this
    "newAddressApi": "/api/new_address", // You usually don't need to change this
    "priceApi": "/api/price?currency=" // You usually don't need to change this
}

Note: The apiKey is obtained from your Blockonomics account.

Authorize.net (Payments)

The Authorize.net config file is located: /config/payment/config/authorizenet.json. A example Authorize.net settings file is provided:

{
    "description": "Card payment",
    "loginId": "loginId",
    "transactionKey": "transactionKey",
    "clientKey": "clientKey",
    "mode": "test"
}

Note: The credentials are obtained from your Authorize.net account dashboard.

Adyen (Payments)

The Adyen config file is located: /config/payment/config/adyen.json. A example Adyen settings file is provided:

{
    "description": "Card payment",
    "environment": "TEST",
    "apiKey": "this_is_not_real",
    "originKey": "this_is_not_real",
    "merchantAccount": "this_is_not_real",
    "statementDescriptor": "a_statement_descriptor",
    "currency": "AUD"
}

Note: The publicKey, apiKey and merchantAccount is obtained from your Adyen account dashboard.

Westpac PayWay (Payments)

The PayWay config file is located: /config/payment/config/payway.json. A example PayWay settings file is provided:

{
    "description": "Card payment",
    "apiKey": "TXXXXX_SEC_btbqXxXxqgtzXk2p27hapvxXXXXxw28gh3febtuaf2etnkXxXxehdqu98u",
    "publishableApiKey": "T11266_PUB_btbq8r6sqgtz5k2p27hapvx8nurxw28gh3fepbtua2f2etnkp4bmehdqu98u",
    "merchantId": "TEST"
}

Note: The apiKey, publishableApiKey and merchantId is obtained from your PayWay account dashboard.

Zip (Payments)

The Zip config file is located: /config/payment/config/zip.json. A example Zip settings file is provided:

{
    "description": "Pay with Zip",
    "privateKey": "KqtU4WtVeXAAbksD1dPpufYXgtfFe0hL9OhBF7hLXzQ=",
    "mode": "test",
    "currency": "AUD",
    "supportedCountries": [
        "Australia",
        "New Zealand"
    ]
}

Note: The privateKey is obtained from your account dashboard.

Instore (Payments)

The Instore config file is located: /config/payment/config/instore.json. A example Instore settings file is provided:

{
    "description": "Instore payment",
    "orderStatus": "Pending",
    "buttonText": "Place order, pay instore",
    "resultMessage": "The order is place. Please pay for your order instore on pickup."
}

Note: No payment is actually processed. The order will move to the orderStatus set and the payment is completed instore.