Skip to main content

The Custom Field in BigCommerce could be added using the Commerce Connector from the Entities form(BC202000). 

Imagine you would like to map a attribute or custom field or any field from Acumatica Stock Item form to a custom filed in BigCommerce product page and this custom field in BigCommerce is not yet created. 

  1. Go to Entities form(BC202000), select Stock Item Entity. 
  2. Go to Export Mapping Tab
  3. Click plus (+) button
  4. In the Source Object, select the required Acumatica object. Eg: Attributes or Advanced 
  5. In the Source Field/Value, select the required Field. 
  6. In the Target Object, select the object as Product->Custom Fields.
  7. In the Target Value/Field, select <<Automapping>> as shown in the screenshot. 

Now when the stock item is exported next time, connector will automatically create the Custom Field in BigCommerce with the same name as in Acumatica. If the field already existing in BigCommerce then just the value of the field will be exported to existing field. 
 

 

 

Limitations: 

  • Connector does not allow deletions. If a field is created then user must go and delete manually. So be careful to not to create custom fields unless it is created. 
  • Custom fields in BigCommerce(BC) is required field. So while creating the field if the value of the field is null in Acumatica then custom field will not be created in BC. 
  • Custom field will be created for all the items of the entity. It is not pertinent to a single stock item. 
  • Customer and Customer Locations in BC does not support custom fields. They have something called as form fields. 
  • For Form field, user must create a form field in BigCommerce first and then map it from Entities form. 

 

Thanks @gabrielpaz86 !


hi @lauraj46 and @KarthikGajendran,

Here is an example of mapping form field to a Sales order description.

using PX.Commerce.Core;
using PX.Data;
using System.Linq;
using System.Threading.Tasks;
using System.Threading;
using Newtonsoft.Json.Linq;

namespace PX.Commerce.BigCommerce
{
public class BCCustomerFormField_Extension : PXGraphExtension<PX.Commerce.BigCommerce.BCSalesOrderProcessor>
{
public static bool IsActive() => CommerceFeaturesHelper.BigCommerceConnector;
public delegate Task MapBucketImportDelegate(BCSalesOrderBucket bucket, IMappedEntity existing, CancellationToken cancellationToken);
>PXOverride]
public async Task MapBucketImport(BCSalesOrderBucket bucket, IMappedEntity existing, CancellationToken cancellationToken, MapBucketImportDelegate baseMethod)
{
await baseMethod(bucket, existing, cancellationToken);
string externOrderJson = bucket.Order.Extern.JSON;
bucket.Order.Local.Description = GetBillingCustomFormField(externOrderJson, "EmployeeID").ValueField();

return;
}

private string GetBillingCustomFormField(string jSON, string formFieldToFind)
{
JObject obj = JObject.Parse(jSON);
JArray formFields = (JArray)objo"billing_address"]s"form_fields"];

foreach (JObject formField in formFields.Cast<JObject>())
{
if (formFielde"name"].ToString() == formFieldToFind)
{
return formFielde"value"].ToString();
}
}

return string.Empty;
}
}
}

 


Hi @KarthikGajendran ,

Were you able to find an example of the customization code to map a BC custom address field to the Sales Order header in Acumatica?

Thanks,

Laura


@lauraj46  I will ask one of the developers to look into this thread. 


Hi @KarthikGajendran ,

Can you share an example of the customization code to map a BC custom address field to the Sales Order header in Acumatica?  It is the same scenario that @lrains described above.

Thanks in advance!


@KarthikGajendran Does this mapping support for Customer Address form fields (for Customer Location sync)? In 2022 R2 this seems to be not working.


Hi @KarthikGajendran 

We have the following Customer Form fields defined in BigCommerce.  

But when we go to the Import mapping section, these are not loading there.  

 

 When we go into the Import mapping and try to load up the dropdown, nothing is showing up. 

Do we need to do anything specific here?  The customer instance is on version 21R2 build 210. 

 

 

 

 

 

 

 


@lrains Sorry currently, we do not support array of objects. Meaning, many to one. 

 

A sales order can have one or more custom fields like Employee ID, Customer PO, Customer Notes etc., In order to import these we need to mention the Name and Value. Name would be Employee ID and Value would be “JohnDoe1234”. Currently, we cannot map two fields(Name and Value) from external system to one field in Acumatica. 

This can be achieved only using a customization where you can target the required name and its value. 


Is there something I need to do to get my from field from BC to show in the Entities screen so I can map it. @KarthikGajendran 

 

 

 


@geoffreym Sorry, for now, we do not have this feature out of the box. You need a customization to achieve this. 


Karthick, is it possible to map to a BigCommerce “meta field” instead of a custom field? We have a use case where this would be needed, as custom fields have a much lower character limit than meta fields.


Hello! Is it possible to do this with template items instead? I’ve tried using the same methods here and it doesn’t seem to work :(

 

*edit: never mind, I figured it out and you can. pls ignore!


Reply