Gravity Forms and Authorize.net Feed - wordpress

Is there a way to add additional items to the Authorize.net feed?
For example, on the feed page, the only options are the required Authorize.net fields for payment:
Billing Information
Payment Amount
Email
Address
Address 2
City
State
Zip
Country
Phone
I would like to add some information to the transaction that is processed and sent to Authorize.net. For example, (as found in the Authorize.net API docs)
Profile
Create Profile
Order
InvoiceNumber
Description
It would also be awesome if I could also integrate with Authorize.nets new ApplePay API this way. I am comfortable adding/modifying code and would prefer if this functionality added fields or some sort of GUI in the Authorize.net settings page of the Gravity Forms backend.

The Gravity Forms documentation explains how to write your own addon using their payment addon framework. It's actually not that difficult. My first time, I used the authorize.net addon as a guide.
https://www.gravityhelp.com/documentation/article/gfpaymentaddon/
Otherwise open up the authorize.net addon and look for hooks you may can tie into to do what you want. There are a few but I've not used them. Search for do_action and apply_filters.
I should also mention that you can add to the feed using hooks but just adding to the feed will not send the data to A.net. You would still have to write the code to get the new feed data and do something with it.

Related

Google Forms PayPal Express Integration

I am doing work for a non profit with 0 budget for IT. They need to allow users to enter information on a Google Form and then collect payment. I have done a lot of research on the topic and currently appears you can only add a hyperlink on the Google Forms to link to PayPal. However, I was wondering if there was some way to link the PayPal Express Checkout javascript(https://developer.paypal.com/docs/integration/direct/express-checkout/integration-jsv4/add-paypal-button/) into the Google Form so it calls back with a transaction id and status. Then I would be able to somehow insert those values into the Google Form. Any thoughts on how to integrate would be helpful. I am a developer but not familiar with Google Forms.
I recently wrestled with this exact question and ended up building a G Suite addon to make this easier for others. Coincidentally I also do volunteer IT for a small nonprofit and we wanted to use PayPal with our signup form (there's pricing for the addon but just ping me if you're a small nonprofit).
Here's what I learned while building it:
There's no way for Apps Script to modify the form once it's shown to the user, or to use Apps Script to respond to user input
There's no way to redirect the user automatically to PayPal after a form is submitted
That means if you want to send someone to PayPal, you've got to use an ordinary link. You can do this within the form by adding the URL to a question description, or you can add the URL to the text shown once someone has submitted the form. For PayPal, you've got two options for this kind of link:
PayPal buttons
Express checkout
PayPal buttons are a static link managed by PayPal. They don't require any coding - just go here and create a button. Then you need to get the raw text link for the button, which PayPal calls the "email" version. You can insert that into your form directly and tell users to access it. The one problem is there's no real way to get the transaction ID. You could try correlating the form submit time with the payment time, or the payer email with the form submit email. It's possible that neither of them will match up and you'll have to do it manually.
Express checkout requires you to dynamically create a new link for each payment by calling the PayPal API. That means your link needs to open a page that then generates an express checkout URL and redirects the user to it. You can do this using a web app in Google Apps Script using a doGet() trigger, or you can create your backend on your server in any language.
If you can run your own server somewhere, I recommend that (plenty of PaaS services have a free tier). It's much easier to test and debug things when you aren't using Apps Script. I used the PayPal Node SDK which works great despite being unmaintained. (Express checkout is "deprecated" by PayPal, but I'll bet it's not going away anytime soon). Their example will get you most of the way there. When the user arrives, generate a payment link and redirect them. When they finish they'll return to your server, and you can display whatever you want. For example, you can ask them to copy the transaction ID and paste it into your form.
Finally, when your form is submitted an onSubmit() trigger can be set up. There are actually two kinds of onSubmit() triggers for forms - one for the form itself, and a second for the spreadsheet linked to the form. You can register a trigger to do extra processing (e.g. look up the transaction ID), but you can't modify the response in the trigger. You can however modify the spreadsheet where the trigger gets sent, which for most cases is equivalent. For example, you could add a column to the spreadsheet with a link to the PayPal transaction based on the transaction code.

Add user on UrBackup server after order on Woocommerce site

I have wordpress site with woocommerce shop and I’m selling among others UrBackup client accounts on my server.
Do you have any idea how to automatically add UrBackup user after order in woocommerce?
Or maybe easier will be create shop based on different engine?
Any advice, tips? :)
After poking around a bit, it looks like UrBackup has an API you can use, that most likely has a 'create account' endpoint. I didn't see it immediately in their not-so-great documentation, but you'd think it'd HAVE to be there somewhere! There's also a PHP API kit you could integrate into your WordPress site here:
https://bitbucket.org/opensaucesystemsdevelopment/urbackup-api.git
So, you could load in this class, and after a WooCommerce order is placed, call the API endpoint to create a user. To do this with WooCommerce, you'd need to create a function on the "woocommerce_order_status_completed" hook.
http://hookr.io/actions/woocommerce_order_status_completed/
This would let you run any custom code you'd like after an order's payment has completed. Thus, you could check an order for if it contains the UrBackup product, and if so call the UrBackup API to create an account based on the current user's data.
Should work!

How can I make an asp.net website which uses entity framework into a shopping cart which can integrate with a payment gateway?

I am working on this website: http://wolves.phiresky.com/
It is an ASP.NET webpage using entity framework.
How can I make this a shopping cart?
How can I make this a shopping cart which can integrate with PayFast.co.za Payment Gateway?
The way that most developers create a shopping cart, including myself, is to create a object, often called cart, and then place that cart object into the visitor's session. This way the cart is accessible via the session object each page request. Integrating with a payment gateway is a whole other matter. To do that you will need to review the api documentation from the payment gateway company and then call the payment api's as appropriate.
The easiest to get started with a payment gateway is to try out Paypal, they offer test accounts and there is plenty .Net documentation to get you started. So using that you can run a test and see how online payments can be integrated. Also i see your prices are in ZAR, there is a couple of SA based payment gateway companies that you can easily integrate with, just run a google on SA payment gateway companies.

How can I force Guest Checkout in Woocommerce using PayPal Express?

I'm trying to launch an online store using Wordpress, WooCommerce and the "Paypal for Woocommerce" Plugin.
On Paypal, Guest Checkout is only available on mobile, but it's not an option on desktop. I read somewhere that you need to add this lines to your SetExpressCheckout API Call but I don't know where to put them:
SOLUTIONTYPE=Sole
LANDINGPAGE=Billing
Can anyone using this plugin help me? Thank you.
it is true that if you add those parameters to the SetEC API call it will enable guest checkout and present the credit card form on the hosted page. To add these parameters, however, you have to alter the source code of the plugin. If you are using Angelleye's plugin there is a setting:
PayPal Account Optional – If your PayPal account is setup with PayPal Account Optional enabled (available in your PayPal account profile) then setting this option here will provide a better checkout flow for non-PayPal users. It will be more obvious that you do not need a PayPal account in order to complete payment, and this will typically increase conversion rates.
you can see complete documentation here.

Pass dynamic querystring to paypal continue page

My website is in Asp.Net C#.
I am using paypal for my website. i have multiple products like logo design, brochure design etc. I am using different BuyNow button for each service.
After successful payment i am sending user back to my continue.aspx page.
But I am just confused about 1 thing that are we able to receive OrderId to my continue.aspx page anyhow? I have to fetch details of that particular order on the continue.aspx page to add more design descriptions like company name, requirements etc.
Is there any way to receive my orderId as a query string on my continue.aspx after successful payment?
Are you using Website Payments Standard or Express Checkout? It sounds like you are using Express Checkout, but if your using standard you may want to switch over to Express Checkout as you will have more control over the checkout flow. With Express Checkout when the buyer is sent back to your site after they have agreed to the payment your site will perform a GetExpressCheckoutDetails API call. You will get the buyers information with this API call. From there you can then present the buyer with the additional options and etc before performing the DoExpressCheckoutPayment API call which is the API call that actually charges the buyer.

Resources