Skip to content

allow passing custom fields to BrainTree's rules manager - #998

Open
clarkstuth wants to merge 2 commits into
recurly:masterfrom
clarkstuth:feature/proactive-3d-secure-custom-fields
Open

clarkstuth wants to merge 2 commits into
recurly:masterfrom
clarkstuth:feature/proactive-3d-secure-custom-fields

Conversation

@clarkstuth

Copy link
Copy Markdown

Hi Recurly Team,

I'm improving my organization’s 3D Secure implementation and running into a small feature gap in how recurly-js communicates with the Braintree client.

Braintree’s Control Panel lets you create “Merchant-Defined Custom Fields.” The Rules Manager can use these custom fields to determine whether 3D Secure should trigger for a transaction. link to Braintree's docs

To pass these custom fields to Braintree, they must be part of the verifyCard() call on the Braintree client. As it currently stands, recurly-js doesn't provide a way to pass these custom fields.

I have taken a stab at connecting the dots so that I can pass these custom fields along to Braintree. It would be super helpful to have this ported into recurly-js.

Thanks in advance!

@cbarton cbarton left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for the contribution. Had a suggestion on the new configuration location before adopting.

* @see {@link https://developer.paypal.com/braintree/docs/guides/3d-secure/rules-manager/javascript/v3/#custom-fields}
*/
get customFields () {
return this.threeDSecure.recurly.config.risk.threeDSecure.proactive.customFields;

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think that we should store this on this.threeDSecure.recurly.config.risk.threeDSecure given attach runs for both proactive and reactive.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the review @cbarton, I've made the suggested config change.

@clarkstuth
clarkstuth force-pushed the feature/proactive-3d-secure-custom-fields branch from 41c09f5 to 61cfc16 Compare October 16, 2026 15:27
* @see {@link https://developer.paypal.com/braintree/docs/guides/3d-secure/rules-manager/javascript/v3/#custom-fields}
*/
get customFields () {
return this.threeDSecure.recurly.config.risk.threeDSecure.customFields;

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I apologize, we discussed this internally and my previous comment was partially incorrect, we want this nested under config.risk.threeDSecure.braintree.customFields to mirror the other settings, like config.fraud.braintree....

Once that change is made, we can move forward with merging and including this in the next release.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants