How to add the account number to an customer into quickbooks - php

I use quickbooks online V3. I tried to set the value for the account number to the customer using the script below.
$Customer->setAcctNum('586');
In object/Customer.php file, line "AcctNum" => is present. However, I am unable to view the above account number in customer thro API. It's also not displayed in the HTTP response.

Please refer to Intuit's documentation:
https://developer.intuit.com/docs/0025_quickbooksapi/0050_data_services/030_entity_services_reference/customer
When you do that, you'll find that QuickBooks Online does not have a field named AcctNum which explains why you are unable to set that field.
The field you're trying to set does not exist.
Read the documentation and set the value in a field that actually exists.

Related

How to prevent duplicate invoice in Quickbooks Online API?

I have been trying to integrate Quickbooks Online API with PHP in to my website and I have found an issue where I could keep on creating the same invoice.
Although there have been accepted answer in this forum however it is really being vague not exact.
"If you don't have the TxnID, there really isn't a way to detect a "duplicate" invoice in QuickBooks.Does this mean that upon creation of invoce there is no way to check if an invoice was already create via API?
https://developer.intuit.com/app/developer/qbo/docs/api/accounting/all-entities/invoice#create-an-invoice
When creating an invoice the values returned under "LinkedTxn" field is always empty
"The closest you can get is querying by RefNumber ...there's no guarantee that the invoice that you get back from that query is the invoice that you created."
Still same as first but I have been searching RefNumber under the documentation but I can't seem to find it.
If "RefNumber's" cannot be gauranteed then what are the other
alternatives?
Do I have to handle this on my local or at least add a column on my
local table for indicating if item is already sync?
PS: I also tried to insert txnid on the create invoice field however I wasn't successful.
While testing on sandbox I realized there is this number, what is this called? Can I use this for checking the existing invoice?
The NO. column you're showing in your screenshot is the DocNumber field. It's in the documentation here:
https://developer.intuit.com/app/developer/qbo/docs/api/accounting/most-commonly-used/invoice#the-invoice-object
In most cases, the DocNumber is a unique field. But not in all cases (you'll see some exceptions noted in the docs related to France and also to custom document numbers).
The best way to avoid duplicates is to keep track of what you send to QuickBooks on your end. On your end, maintain a list of what you sent to QuickBooks. Don't send it again if you've already sent it.

Error: [HTTP 400] Unable to create record: The source phone number provided is not yet verified for your account

I am using PHP from Twilio API, to make calls and sms from my php code, the sms is working, but when the calls it shows an error, please! I need help
I bought a number from twilio and upgarde, but it still shows the same error
Error: [HTTP 400] Unable to create record: The source phone number provided, +151**********, is not yet verified for your account. You may only make calls from phone numbers that you've verified or purchased from Twilio.
Twilio developer evangelist here.
When making calls you can set the number that you are calling from as either a Twilio number or a number that you have verified is your own. The error message is saying that neither of these conditions have been met.
If you are trying to make a call with a Twilio number that you have bought, then I would double check the number in your code to make sure it matches your Twilio number.
If you are trying to call from your own phone number, then make sure the number appears in your verified numbers list in your Twilio console. If it doesn't then you will need to verify it from that page first.
Let me know if that helps at all.
for me, it was because I live in Algeria and Algeria is disabled by default on my Geo permission page. if the above solution didn't work you should check your Geo permission Page in the Verify tab and look for the country you're trying to send messages to and see if it's enabled

Associate docusign envelope to salesfoce

I'm initiating an envelope using the REST API. I was able to set a custom field on the envelope to the salesforce account Id and then once complete upload the final document and update fields.
My next problem is I have some custom tags. In the custom tag settings I've related them to salesforce fields and enabled write back. I can't seem to get these to update salesforce if the information in the document changes. Is there an internal field or value that I need to set for the envelope to associate it with sales force?
Do I understand correctly that you've already installed DocuSign for Salesforce in your Salesforce org and have configured it to point to your DocuSign account? If so, you likely just need to update the "(Salesforce) Connect" configuration in DocuSign to explicitly tell it to write back the fields. I don't believe "merge fields" will write back data to Salesforce for envelopes that are initiated via the API.
This guide contains info about updating Connect settings for the DocuSign for Salesforce Connect configuration: http://www.docusign.com/sites/default/files/DocuSign%20Connect%20for%20Salesforce.pdf. Specifically, content relevant to your scenario starts on page 4 under heading "DocuSign Connect for Salesforce Settings -- and especially within item #7. To edit, add, delete, or change the order of Connect Objects that begins on page 6.
Within the "Salesforce" Connect Configuration in DocuSign, you can add a new "Connect Object" to have DocuSign automatically update a specific type of object in Salesforce based upon criteria you specify. For example, let's assume that you want to automatically update a Contact record in Salesforce (using data from DocuSign fields in a completed envelope) whenever a completed envelope contains a DocuSign secure field called HCP_ID, and the value in the HCP_ID DocuSign field matches the HCP_ID field value on a Contact record in Salesforce. Creating a Connect Object like the following would accomplish this:
The field mappings in the "Update Fields" section specify which values in Salesforce you want to update with which DocuSign values. (See the guide I've linked to above for more information -- it explains things in much greater detail than I've done here.)

Salesforce REST Api missing fields with PHP

I'm using the Salesforce REST API and found it very hard to find decent documentation.
I can successfully log in with OAuth and i can push new accounts to Salesforce.
I use the instance url to make the API calls and i send the following fields to create an account object:
Name
Rating
Description
The problem is that I created a free trial (which sits on na9.salesforce.com) and everything worked fine.
I created a second free trial to check if everything works with another account, but the rating field is not available... I get the following message from Salesforce:
"[{"message":"No such column 'rating' on sobject of Account"}]"
Why is that?
Also, is it possible to add notes to a created account using POST? And is it possible to create Leads instead of Accounts using the API?
Thanks in advance,
A feature called field level security (FLS) can mean that even standard fields are not accessible, check the FLS settings on account in your second org.
Docs for the REST API are on the developer force site

Integrating Fedex into your web application

I realize they have an API but some of
the questions I have wouldn't be
answered by it, and it would be great
to receive feedback from others who
have integrated it before.
I basically am working with a web site where visitors may choose to sell a used item to the site owner.
If the user decides to sell, he can enter in the specifications of the item and be given a quote. Then he'll proceed to enter in his address, which I assume I'll have to verify using the Fedex API before or during the part where it creates a shipping label.
So assuming the address is verified, it looks like the script in the API I have to interact with is /Ship/Ground/Domestic/ShipGroundDomestic.php5 ( since we will not integrate any other type of shipment type yet ).
Is this is the script that actually creates the shipment and charges the account setup, assuming all goes well it returns a xml response with the status?
Since it's SOAP based - I realize there are options for a pdf and png shipping label type, it looks like it generates the label but where is it actually stored, is it just temporary?
In the script it specifies options for a API Key, password, account #, and Meter # - so I would have to actually know the site owners credentials, since it charges for creating shipments/labels I can't use a normal account that doesn't have a CC setup, can I?
I can't actually test anything without contacting them and telling them to make my account go into test mode? Or is there an extra parameter for test mode?
I should store all shipments in a local database to pull them up, right? Or should I solely rely on Fedex for storing all the information? If I use a local database I can map shipments to users and use a Fedex provided script to look up the delivery status so I would think I have to do that.
If I were to have a feature that automatically emailed customers with status updates of a delivery, I would have to use some type of cron job to look and see if there were any updates made, I can't do this any other way?
If you are using the the Fedex Web Services API you get a test key by going to https://www.fedex.com/wpor/wpor/editConsult.do
(You may need to be already signed in).
The label it generates it just dumps into the current directory. That is obviously not acceptable for production code, since it does not even generate a unique file name, but the php file is example code. Modify the code they give to do whatever you want with the returned label.
You would want a local database.
Why would you want to send users updates? Is there any reason they cannot just use the tracking number and look it up themselves? I mean it would be possible to call the tracking API periodically and generate emails, but do users really want these emails?

Categories