Fix a OAuth 2.0 plugin integration between Xero and Gravity Forms -- 3

Job ID: 31351288

Budget: $30 – $250 AUD

I had another freelancer attempt this project who got part of the way there but couldn't get the OAuth connection to Xero to stay open using the token refresh commands.

I need someone who is familiar with OAuth 2.0 and can take the existing code and ensure the OAuth connection can be renewed without manual intervention.

Primary Task:

- Gravity Forms Settings Page for Xero Client ID / Secret and initial OAuth 2.0 connection
- Checks for a valid OAuth Token and refresh token call if required
- Migrate the code from the theme files to a standalone plugin

Other functions partially built already (may require minor tweaking):

- JS hook on a gravity form using gform_input_change (https://docs.gravityforms.com/gform_input_change/) that takes the inputted invoice number and verifies it with Xero against the invoices awaiting payment - https://api.xero.com/api.xro/2.0/Invoices?Statuses=AUTHORISED.
- If valid, populate the price field with the AmountDue field
- If invalid, add a message to form alerting the user that the invoice number is not a valid invoice number
Related categories: PHP JavaScript WordPress Xero OAuth