PT Berkat Niaga Dunia sells safety equipment to other constructions and oil and gas companies. They’re an established business that needs a new E-commerce website for their existing clients who are tired of the usual quotation, purchase order, invoice order method as it is slow, and error prone.
The main challenge of the site is to be able to integrate fully with their existing SAP systems. The site should also cater to both B2B customers, and retail customers.
Retail customers have a standard customer flow with a manual transfer payment method with manual confirmation form to be filled after the customer placed the order. This is commonly done in Indonesia for B2B companies as buyers of B2B items do not require instant confirmation as much as typical B2C users. We recommended them to use virtual accounts, but they decided not to use this.
Shipment for B2C is using JNE, which is the biggest private mail delivery company in Indonesia.
The checkout step for the B2 customers is also customized in a way that during checkout, they must upload a Purchase Order in the form of PDF, the purchase order is using the existing format of the client company.
After the purchase order is uploaded, the payment method of “Pembayaran Tempo” (“Delayed Term Payment”) is available.
The purchase order almost must be made available to the SerbaSelamat admin.
Shipping must be free for all B2B clients, and must be made clear it is written sent by internal delivery.
To integrate with SAP, we had created a module to seamlessly integrate Products, Orders, and Customers with SAP. The module allows Magento to publish a customized SAP that is called from SAP to update / add products, read / update orders, and customers. SAP is the main controller and Magento acts as simply a taking order / providing info role. In API integration, it is critical to define who is the main controller to provide clarity, especially when an unforeseen bug occurs.
For B2B customers: Magento supports this out of the box in terms of assigning different roles to different customers. However, a minor customization must be made in assigning new attributes to the customer class because SAP needed a way to identify them in an easier manner than consulting the customer role class. So we added a checkbox in the customers page indicating it’s a B2B user.
Creating an extra step in the checkout process to direct B2B users to upload Purchase Orders to continue the checkout
We need to create a payment method called ‘Pembayaran Tempo’, that are enabled once Purchase Orders upload step is completed
Shipping will detect once the client chooses the ‘Pembayaran Tempo’ payments method and gives the ‘free’ delivery options with a label stating ‘Internal Delivery’ only.
Once submitted, the purchase order must be visible to from the admin panel on the “Manage Orders’ page.