Porting from NVP to REST API - api

I am currently using PayPal's NVP API. And using the below methods.
TransactionSearch (To pull in historic and recent transactions)
GetTransactionDetails (To fetch detail for each transaction)
TransactionSearch using PROFILEID (To get subscription/recurring transactions related to a particular subscription/recurring profile using the Subscription/Profile ID)
RefundTransaction (To refund a transaction)
ManageSubscriptions (To manage - cancel, suspend, reactivate a particular subscription using the Recurring/Subscription/Profile ID)
GetBalance (To get balance for a particular account)
MassPay (To send money to other PayPal accounts using the email address) I would like to know and get assured that I won't be missing anything when I port to REST, and will get all the details (including all the fields) that I have been getting from the NVP response.
Question 1
Can you map me to the respective REST methods for the above 7 cases that I have listed?
Question 2
Can I use the same credentials for REST API? Or do I need to use something else? Doing so will require the users to reconnect to my system via some other method?
Question 3
Another thing I wanted to know is, that if the REST API can be used to pull in historic data(data for all date ranges)? Is there any restriction on the user-type or type of PayPal account or date-ranges or anything else when using the REST API?
Question 4
What else do I need to take care of when I port from NVP to REST?
Please help!

Related

All the payment methods not returning in BigCommerce Get Accepted Payment method rest api

I am using BigCommerce Rest API in my React Native application to create an eCommerce app for a BigCommerce site. I am doing all the functionalities like getting products, creating a cart, creating checkout, etc, using BigCommerce rest API.
Now, there is an API to get all the accepted payment methods for checkout.
Api : https://developer.bigcommerce.com/api-reference/store-management/payment-processing/accepted-methods/paymentsmethodsget
So, when I am calling this API with all the required parameters and headers, I am getting only one payment method in the response. However, I have set up many other payment method options from the admin.
There is another API Get All Payment method, which returns all the payment methods that I have set up. But returned payment method data does not contain payment method id. I need a payment method id to pass it on next step.
Please anyone knows how to get all the accepted payment methods with it's id in BigCommerce rest API?
It's to my belief that this is working as expected. The v3/payments/methods returns only a list of providers that are supported by our public payments api. This list does not include COD, so that's why that one is missing. You likely don’t see Paypal because it is Paypal Commerce Platform, which is also not expected to be returned.
As a note, this endpoint is tied to an order so if certain providers have restrictions on order total or products or things like that, they might appear/or not appear depending on those values.

Can we get data as Response using Post Method for API Testing using RestAssured Cucumber

Here is the full question :
As a Portfolio API, I should be able to retrieve details for a given Account and Account type from Balance API, so that i can pass over the same to the UI for the end users to view the same.
Scenario 1 - Verify the response when Portfolio API invokes the
POST /v1/accDetails endpoint for a given account details (Checking)
Given client has a valid auth token for the api
And Portfolio API has the following
Account Number 1234567890 (10 characters).
Account Type 'CHQ' (3 characters)
When Portfolio API sends a POST request to Balance API
Then Portfolio API will receive the response code as <00>
And response body will have the following (not limited to below fields)
Account Type, Account Number, Account ID, Account Name, Account Balance, Product TypABA Number, Interest Rate, Interest Earned to DateStatus.
Now my question is we can do this using GET Method but can we do this using POST method or not? When we use post that mean we are going to add something but I do not want to add any account. I just want to get account details.
Since you have only a few parameters to send via GET, the best approach is to use [GET].
We can use the [POST] if we really need it to do so.
But if you can use [GET] for that, then the best approach is to use [GET].
Also can refer: REST API using POST instead of GET.

How does one associate a website user with a Paypal subscription?

I am implementing subscriptions to a premium service on a website using Paypal as the payment service. I have successfully created a Catalog Product and Billing Plan through the API, and I am able to get to the payment page on Paypal, but it's not clear how I'm supposed to persist a user identifier through the purchase process.
I assumed it would be something along the lines of passing a user id somewhere, but there's nothing in the Paypal documentation about this. I need to be able to let the user make a purchase and have the Paypal webhook send the confirmation to an endpoint on my site, and that's where I'd expect to get their user id to toggle the subscription on their account on my end.
Is there something I'm missing? There has to be a way to do this cause I'd imagine it's a pretty common use case. If anyone has information or has done this before, I'd love to hear. Thanks.
The only truly secure way I've found when using javascript SDK, is to securely generate a unique custom_id on your server side associated with the user.
Then when you create the buttons, the 'createSubscription' function takes custom_id as a parameter.
Then use a webhook to receive events from your subscription and the custom_id will be present in the body of all BILLING.SUBSCRIPTION events under resource.custom_id.
I am able to get to the payment page on PayPal,
You are vague about what you are doing here. There are multiple ways (and some ways have multiple versions) of accepting subscriptions via PayPal, so it is important that you provide full details about the method you are using.
The time to associate a created subscription ID with a user ID is when it is approved, in the onApprove function if you are using a Smart Payment Button: https://developer.paypal.com/docs/subscriptions/integrate/#4-create-a-subscription

Capture Funds for Authorized Cards via API on Big Commerce

Currently, payments processed through certain credit card processors (example: Authorize.net) can be set to first authorize the fund, then later capture them when prompted in the UI via the admin interface.
I am hoping to capture funds of authorized orders (Big Commerce status 'awaiting payment') via the API rather than through the UI. I have not been able to find anything but a post from 3 years ago saying it was not yet possible. Is there now a way, or is this still something that cannot be done?
old thread: Is it possible to "capture funds" for authorized credit card transactions via the API?
It isn't possible to capture funds via the API today. The API is meant to Create, Read, Update, or Destroy entries and nothing is exposed to the API that would allow you to execute an action between BigCommerce's core application and the payment gateway .

how to retrieve bill pay transactions using yodlee rest api

I using the executeUserSearchRequest to get transactions for bank,credit etc.
But I'm not able to get Bill Pay transactions.
Should I not be using this method to retrieve the lines, or perhaps I'm doing the search wrong. I know the account I'm using does contain lines as I've verified using another application that uses the yodlee api;s.
I using these settings
ContainerType: All
SplitType : ALL_TRANSACTION
transactionSearchRequest.searchFilter.itemAccountId.identifier = 9999999
where 99999 is the itemaccountid
all other values are defaults from the API testing tool
https://developer.yodlee.com/Aggregation_API/Aggregation_Services_Guide/Aggregation_REST_API_Reference/executeUserSearchRequest
You should be able to retrieve transactions for billpay using the same API i.e., executeUserSearchRequest. Please remove itemAccountId.identifier and try to get transactions, it will return transactions for all accounts.
You can then verify is transactions for your billpay account is present or not.
If you want transactions for specific account then you can first call getItemSummariesForSite API to get the account level details for the added account and from there you can use the itemAccountId and pass it on to executeUserSearchRequest API.
If you still face any problem, please share your memSiteAccId over our chat support and we will be able to help you.