Which QBO Accounts Receivable account is the authoritative one? - intuit-partner-platform

I have a QuickBooks Online company with multiple A/R accounts. (It was converted from some flavor of QB Desktop.) How can I use the IPP QBO API v3 to figure out which one is authoritative. Neither Invoice nor Payment objects reference the A/R account unless I'm mistaken.

You can create on Invoice/Payment from QBO UI and retrieve the same using QBO V3 to see how those objects are referring your AR account.

"QuickBooks Online (QBO) is not designed to work with multiple Accounts Receivable (AR) and Accounts Payable (AP) accounts. The initial AR and AP accounts will be the default accounts. We encourage our customers to merge their accounts payable and receivable accounts. For more information on merging accounts, please see our related KnowledgeBase article 1221: How do I merge two accounts?
https://qboe.custhelp.com/app/answers/detail/a_id/1398/session/L3NpZC9mWkNLQXhSbC9wdGEvMQ%3D%3D/kw/change%20AR%20account/r_id/103898/sno/1

Create an invoice using the API. Then use the QBO reports api to run a balance sheet and see which A/R account changed.

Related

Accounts Payable Account not returned in QBO Account Query

In QBO, Select * From Account is not returning the Accounts Payable account in the result set. I am doing this in a Sandbox via API Explorer (and via C# SDK). Anyone know if this is by design or a bug?
Turns out it was an issue based upon an incorrect expectation on my end. I was testing the same functionality in integrating our app with both QBD and QBO. I had seen the AP account in the UI, but it was in QBD not QBO. I thought that the Accounts Payable account was a default account automatically created in QBO, but that was incorrect and the account was not in fact there in the QBO UI. Though it is a system created account, it is not created until you create your first vendor bill, at which time QBO then automatically creates this account.
So if you have a new QBO sandbox company, you will not see the AP account until you create your first vendor bill.

Test Premier/Business account for non existing business

We are contemplating on using your services on the web app we are developing, We have following requirements.
Our's is a multisided services platform, an employer assigns a freelancer to do some job. Freelancer will create partial invoices until the full value of the job is realized. We sit as a middle man, and does the job of forwarding the invoice to employer and transfer the amount collected from the employer to the corresponding freelancer, after taking a cut.
1) We need to provide seamless integration on invoicing, The freelancer will use our web interface to create/send invoice. We will record the cost of the invoice in our database.
2) It is the employers prerogative, to decide when to respond on the invoice. Say, he responded after 10 days of receipt of the invoice. When the payment is made our website traps it and records it in the database.
3) When our web app come to know that a payment is made by the employer, we will transfer the amount (after taking a cut) to the freelancer.(adaptive payments).
I found out that chained payments is best suited for the scenario above.
What type of paypal account i need here to do the chained/adaptive payments? If it is Business or premier account , can i set up an account before legally registering a company for testing/sandbox environment? I am from India I see paypal registration form asking for the PAN number for company, which i don't currently have.
Thanks for your attention
Short anser: if you are not a business, use a premier account. That should be able to use all adaptive payments features including chained payments.
PayPal no longer distinguishes between personal and premier accounts (they used to carry different fee structures but that ended years ago), although some older features still may have blocks preventing access by personal accounts. Both types of accounts are expected to be owned by an individual. In contrast business accounts are expected to be owned by a business. Functionality should be essentially identical to a premier account except for details like personal vs corporate tax ID numbers & such.

Do I need 3rd party's Paypal API credentials to let them sell on my site using Payments Pro?

I am working on a website in which a facility pays us for membership. Their membership payment is the only money we receive. This payment is done via Paypal Website Payments Pro using the DoDirectPayment API.
These members then rent out their facility to customers by listing available blocks of time on our website. The customer would pay for this time block via credit card, also via DoDirectPayment, but this time the payment goes directly to the member's Paypal account.
I have found a lack of clear direction on what needs to be done to enable this. I know I could require all members to have a Paypal Payments Pro account ($30 per month) and store their API credentials (including passwords and signatures) in our system and those payments could be handled directly. But I am vaguely aware of the Third-Party app authorization option... I just can't find info on how it should be set up.
Is it possible to only store the member's Paypal email address and just ask them to authorize our app in their profile?
Also, I saw someone suggest the thrid-party payment recipient wouldn't even need a Pro account. If that is the case, what do I need to change about the API call (I'm using the NVP method) so that our Pro account is leveraged but payment is given to the member?
First, your members will need their own Pro account. The only way to try and get around that would be to have all of the funds come into your account and then disperse them accordingly. This is frowned upon by PayPal and will result in a suspended account.
You could indeed have users enter their API credentials into your application and store them with your customer's profile so that you can include them in API calls for that particular member. You'll want to make sure to encrypt these values if you end up doing that.
The proper way to handle it (since you're a hosted solution) would be using Permissions. You would use your own API credentials, but then pass an additional parameter to flag what account you're making that call on behalf of. This is where the Permissions come into play. Your members will need to Grant API Permission for your app to make the DoDirectPayment call on their behalf.
This can be done manually from within the PayPal account under API Access, or programatically via the Permissions API.
OK, I discovered the answer. I am sharing the detail here for others looking for this very elusive information:
My account (hosted solution) must be a Pro account.
Members who will be selling to customers on my site must also have Pro accounts. I tested the same code with a regular business account and the error said "This transaction cannot be processed due to an invalid merchant configuration."
Members do not have to give me all their API credentials.
The DoDirectPayment call is the same as if I were doing my own payment (almost). I use my own username, password, and signature. The way to send the money to another account is to include one more parameter called SUBJECT which should be the email address associated with the member's Paypal account (not their API username).
The member must grant my (third-party app) account permission. In my case I only needed the one Paypal labels "Process your customers credit or debit card payments." which should correspond to DIRECT_PAYMENT in API terminology.
Andrew's answer gave me some additional keywords to use in searches, and I appreciate the tip off to the Permission API. It did not directly answer the question, but that will be a nice feature to add to my app instead of making users go through their Paypal profile's to grant permission.

PayPal API to access trasactional data

I would like to extract transaction data from my customer's PayPal account. He has given me the API username, p/w, and signature. In addition, we created a live 'application' on developer.paypal.com so now I have a ClientID and Secret.
I have the asp.net/c# RestAPiSample code. Which (REST or SOAP) API(s) should I call to get "sales" data (i.e., payments from his customers to his paypal account? Basically I am trying to create some additional reports using the sales data.
Thanks.
Your customer's paypal account credentials can be used with Merchant SDK. You can use the API 'getTransactionDetails' to fetch his customers sales records.
But the new live account you have created (ClientID and ClientSecret) can only be used with the new REST APIs and its is not related to your customers account. If you want your customers sales records you can use the Payment.List(...) method which returns a PaymentHistory object.

PayPal: Alternative to PayPal's Developer Account

I was using Paypal Sandbox for testing transactions last year using my PayPal developer account.
I just checked last week that I cannot access my old account, so I decided to sign up for a new account. However, you need now to sign up for a business account. Business account is only available to U.S. businesses (I came from outside the US).
I was hoping if you can suggest an alternative and free developer account (similar to PayPal), but with a different payment gateway.
Thank you.
How about stripe ?
Stripe
Uses a JavaScript based API to complete transactions.
Simpler to integrate with multiple platforms.
You don't need a US Business account to use developer.paypal.com.
Simply sign up via https://www.paypal.com/ for a live PayPal account, either Premier or Business, and you'll be able to log in to developer.paypal.com with it.
Note however that the new REST API is currently available for live US Business accounts only, but this won't affect the availability of other Sandbox products or functionality.
I'll look into why the messaging states that you do, because that's not correct. Thanks for pointing this out!