Skip to main content

Hi,

We are using the BigCommerce connector with acumatica 2021 R2, but have noticed that payments do not sync from BigCommerce if the order type in BigCommerce is “Manual Order”. These are orders that are taken manually by staff using the backend of BigCommerce. They use exactly the same payment method. In fact, I have compared the GET results of the “payment” endpoint for a normal website order, and a manual order, and the payment REST response looks identical from BigCommerce.

 

So is the acumatica connector programmed to NOT sync these payments? If I try to manually sync the payment (Sync History->Add New->specify the external order ID) then it says “the payment record cannot be syncronized because it does not exist in the external system)

 

Hoping someone has some insight, as I can’t find any information in the documentation as to why these payments can’t be found by acumatica.

 

Thanks

Geoff 

@geoffreym I think we need to review the object of the payment for your order.

Could you please either to share with me the transaction JSON or create a support case with Acumatica, so we can arrange the review session.


@smarenich sure, see details below:

 

This is the JSON response from the payment type that acumatica can’t see (BigCommerce back end manual order)

358 manual backend order:
{
    "data": a
        {
            "id": 545243453,
            "order_id": "358",
            "event": "purchase",
            "method": "nonce",
            "amount": 153,
            "currency": "AUD",
            "gateway": "braintree",
            "gateway_transaction_id": "fzpmtx0d",
            "payment_method_id": "braintree.card",
            "status": "ok",
            "test": true,
            "fraud_review": false,
            "reference_transaction_id": null,
            "date_created": "2022-08-31T06:08:31+00:00",
            "avs_result": {
                "code": "M",
                "message": "Street address and postal code match.",
                "street_match": "Y",
                "postal_match": "Y"
            },
            "cvv_result": {
                "code": "M",
                "message": ""
            },
            "credit_card": {
                "card_type": "master",
                "card_iin": "555555",
                "card_last4": "4444",
                "card_expiry_month": null,
                "card_expiry_year": null
            },
            "gift_certificate": null,
            "store_credit": null,
            "offline": null,
            "custom": null,
            "payment_instrument_token": null,
            "custom_provider_field_result": null
        }
    ],
    "meta": {
        "pagination": {
            "total": 1,
            "count": 1,
            "per_page": 50,
            "current_page": 1,
            "total_pages": 1,
            "links": {
                "current": "?page=1&limit=50"
            }
        }
    }
}

 

This is the response from a standard website order:

359 website order
{
    "data": "
        {
            "id": 545273651,
            "order_id": "359",
            "event": "purchase",
            "method": "nonce",
            "amount": 43,
            "currency": "AUD",
            "gateway": "braintree",
            "gateway_transaction_id": "gmwhvej2",
            "payment_method_id": "braintree.card",
            "status": "ok",
            "test": true,
            "fraud_review": false,
            "reference_transaction_id": null,
            "date_created": "2022-08-31T09:23:02+00:00",
            "avs_result": {
                "code": "M",
                "message": "Street address and postal code match.",
                "street_match": "Y",
                "postal_match": "Y"
            },
            "cvv_result": {
                "code": "M",
                "message": ""
            },
            "credit_card": {
                "card_type": "master",
                "card_iin": "555555",
                "card_last4": "4444",
                "card_expiry_month": 10,
                "card_expiry_year": 2025
            },
            "gift_certificate": null,
            "store_credit": null,
            "offline": null,
            "custom": null,
            "payment_instrument_token": null,
            "custom_provider_field_result": null
        }
    ],
    "meta": {
        "pagination": {
            "total": 1,
            "count": 1,
            "per_page": 50,
            "current_page": 1,
            "total_pages": 1,
            "links": {
                "current": "?page=1&limit=50"
            }
        }
    }
}

 

You can see they are pretty much identical.

 

The only difference is that when I query the order object itself, the response from the manual backend order is slightly different to the public website order:

 

Manual Order:

    "is_email_opt_in": false,
    "credit_card_type": null,
    "order_source": "manual",
    "channel_id": 1,
    "external_source": null,

 

Public Website Order:
 "is_email_opt_in": false,
    "credit_card_type": null,
    "order_source": "www",
    "channel_id": 1,
    "external_source": "",

 

Both the public website and backend both use exactly the same payment gateway in BigCommerce.

Let me know your suggestions, I really appreciate your help!

Geoff


@geoffreym I checked the JSON and code and I don’t see any reason why payment is not imported, other than the order is not synchronized. 

Could you please check that if you go to Sync History and use All Records tab, there are no payment with this ID?

If no, then I would recommend to create a Case with Acumatica, so we can review it by engineers.


Hi @geoffreym - were you able to find a solution? Thank you!


Hi @Chris Hackett, for now I have implemented some business events to create the payments and tidy things up, and will review this issue again once we upgrade to the next major build locally which may or may not fix this issue. 


Reply