By Peter Bell

Know Any UK/European Credit Card Lockbox Providers?

It's possible to avoid having to implement a PCI compliant solution for credit card processing providing you don't store or process the card information. One way of doing that is a lockbox provider such as Braintree.

We have a client that needs to defer the charging of credit cards until the shipping amount is known, but can't afford to implement a PCI compliant solution in-house. We're looking for a third party processor where we can seamlessly pass a card details using a form submission to their gateway to authorize (but not charge) the card, and then get an ID back that we can use to charge the card later.

Wondering if anyone had heard of/used a solution like this?

E-commerce – Orders and Addresses

The thing I love about building even very simple e-commerce applications is that they can bring up sufficiently complex classes of design problems to make them a great testing bed for new ways of implementing web applications. Today I want to look a little at the old “orders and addresses” problem to see if it can provide any more generalized insights into Object Relational Mapping . . .

[More]

CF Commerce - Could be Cool . . .

Just wanted to do a shout out regarding the relatively new CF Commerce project to develop a standard open source commerce project in ColdFusion. It's got a very interesting team and if you have any interest in building e-commerce sites it is well worth checking out . . .

Architecting E-commerce

I have done some posting on e-commerce in the past. Now I need to re-implement the checkout functionality for my "standard" shopping cart and need to come up with a good approach to handling shipping, taxes and payment processing. Here are some high level thoughts . . .

[More]

How do you handle price breaks in e-commerce?

Believe it or not, I'm implementing my first price break system ever (I know it is a common requirement, but for whatever reason I've not had to do it before). With this system every product has a base price but also has 0..n price breaks which may or may not be unique to a given customer number.

I'm trying to come up with a best practices reusable approach to this as I don't love the implementation I'm being asked to do (in this system if there is a customer price, it replaces ALL quantity breaks which to me is somewhat of a special case. Also in this case there is a break price but not a range making it effectively impossible to merge customer specific and generalized pricing breaks - again fine for this use case).

It seems to me a generalized solution would include a product identifier (ID, SKU, etc.), customer identifier, min qty, max qty and price per. You could then optionally set store rules about how to merge customer specific and general pricing, and you could still cover special cases like this project by setting the range from 1 to an arbitrarily high number where you wanted a given price to override general pricing.

Also, do you come across systems where it is a numeric or percentage discount for the ranges? Perhaps instead of a price, a "Number" and "Type" (price, discount percentage or discount amount) would give a little more flexiblity?

Any thoughts from anyone who has implemented a few more of these? I understand there is never a one true way, but I'm looking for a flexible data structure and algorithms with a few proeprty settings to cover the vast majority of small to mid sized business use cases.

Thoughts?

Implementing Recommendations/Cross Sells

I'm looking to upgrade my rather simple cross sell engine. Not looking for collaborative filtering or anything fancy right now (although if anyone can suggest a simple algorithm . . . :->) - just a nicer approach to a standard manual approach. This posting looks at my proposed implementation. Any input gratefully received! . . .

[More]

Know Any Good Credit Card Processors (Gateways)?

We've been using authorize.net forever, and quite honestly they're not very good!!! We are on the look out for a new provider for our clients. Below are a list of requirements - the key ones being that they have an API (so end customers can stay on our clients site when checking out) and that they have some kind of rebilling system so we don't have to store the card numbers . . .

[More]

Product Attributes

So, what would be a good generic way to implement product attributes? Here is how I’m currently doing it. Any better ideas or approaches would (as usual) be gratefully received!

Firstly I provide an application wide Attribute manager allowing site admins to create new attributes (color, size, Initials, etc.). Each attribute has a field type (text box, drop down, radio buttons, etc.), an optional default value, the ability to be "required" and (for field types that need it) a text box for entering a comma delimited list of option values.

[More]

Algorithms: Good Enough for Business Purposes

The first step to solving a problem is often deciding whether it is worth solving at all! We are often involved with the first proper e-commerce store for a lot of small merchants and when we start talking about shipping, pricing and discounting rules, we’d clearly need to write a sophisticated reasoning engine just to start to approximate the way they do business. We have one end client that actually builds and weighs the order before pricing shipping using common sense to select the right combination of boxes and shipping carrier to get the best price. And this is for $100-$300 retail orders where the shipping usually runs $5 to $25!

[More]

E-commerce options: Product Attributes vs. Master Products

I'm rebuilding my e-commerce functionality as part of the CF7 OO rewrite of the application generator. As part of this I'm revisiting all of the patterns used to see if there are more elegant ways of creating flexible, reusable e-commerce functionality. This morning I have to rebuild my product optioning system and I though it was a good time to write a post to make a distinction between two separate but overlapping functions: product attributes and master products.

[More]

More Entries

BlogCFC was created by Raymond Camden. This blog is running version 5.005.