格子 - PAYMENT_STATUS_INPUT_NEEDED
Plaid - PAYMENT_STATUS_INPUT_NEEDED
我的购物车上有 Plaid 付款启动功能,但由于某种原因,所有付款的状态都是“PAYMENT_STATUS_INPUT_NEEDED”。
此外,如果在调用“plaid.Create”时省略“receivedRedirectUri”,我只能让 Plaid 工作。如果我包含它,Plaid 会抛出以下错误:
display_message: null
documentation_url: "https://plaid.com/docs/?ref=error#invalid-request-errors"
error_code: "INVALID_FIELD"
error_message: "oauth_continuation.link_token does not match session"
error_type: "INVALID_REQUEST"
request_id: "aseWi7KyiQwxuVE"
suggested_action: null
有人遇到过这个吗? Plaid 的文档似乎没有涵盖这一点。这就是我的函数的样子。
async plaidPay() {
let amount = this.cart[0].item.amount * this.cart[0].quantity;
console.log(window.location.href);
const linkToken = await this.$axios({
method: 'post',
url: 'api/plaid-create-payment',
data: { amount: amount },
config: { headers: { 'Content-Type': 'application/json' }}
})
.then(res => {
return res.data.link_token;
})
.catch(e => {
console.log(e)
})
console.log(linkToken);
const handler = window.Plaid.create({
token: linkToken,
onSuccess: (public_token, metadata) => {
console.log('test 1');
console.log(public_token);
console.log(metadata);
},
onLoad: () => {
console.log('test 2');
},
onExit: (err, metadata) => {
console.log('test 3');
console.log(err);
console.log(metadata);
},
onEvent: (eventName, metadata) => {
console.log('test 4');
console.log(eventName);
console.log(metadata);
},
//required for OAuth; if not using OAuth, set to null or omit:
receivedRedirectUri: window.location.href,
});
handler.open();
}
我认为这个问题正在由 Plaid 支持人员处理,但为了后代和那些谷歌搜索的利益,问题似乎是你在第一次启动时使用 receivedRedirectUri
启动 Link.只有在从 OAuth 流程返回后重新初始化 Link 时才应包含此字段。
我的购物车上有 Plaid 付款启动功能,但由于某种原因,所有付款的状态都是“PAYMENT_STATUS_INPUT_NEEDED”。
此外,如果在调用“plaid.Create”时省略“receivedRedirectUri”,我只能让 Plaid 工作。如果我包含它,Plaid 会抛出以下错误:
display_message: null
documentation_url: "https://plaid.com/docs/?ref=error#invalid-request-errors"
error_code: "INVALID_FIELD"
error_message: "oauth_continuation.link_token does not match session"
error_type: "INVALID_REQUEST"
request_id: "aseWi7KyiQwxuVE"
suggested_action: null
有人遇到过这个吗? Plaid 的文档似乎没有涵盖这一点。这就是我的函数的样子。
async plaidPay() {
let amount = this.cart[0].item.amount * this.cart[0].quantity;
console.log(window.location.href);
const linkToken = await this.$axios({
method: 'post',
url: 'api/plaid-create-payment',
data: { amount: amount },
config: { headers: { 'Content-Type': 'application/json' }}
})
.then(res => {
return res.data.link_token;
})
.catch(e => {
console.log(e)
})
console.log(linkToken);
const handler = window.Plaid.create({
token: linkToken,
onSuccess: (public_token, metadata) => {
console.log('test 1');
console.log(public_token);
console.log(metadata);
},
onLoad: () => {
console.log('test 2');
},
onExit: (err, metadata) => {
console.log('test 3');
console.log(err);
console.log(metadata);
},
onEvent: (eventName, metadata) => {
console.log('test 4');
console.log(eventName);
console.log(metadata);
},
//required for OAuth; if not using OAuth, set to null or omit:
receivedRedirectUri: window.location.href,
});
handler.open();
}
我认为这个问题正在由 Plaid 支持人员处理,但为了后代和那些谷歌搜索的利益,问题似乎是你在第一次启动时使用 receivedRedirectUri
启动 Link.只有在从 OAuth 流程返回后重新初始化 Link 时才应包含此字段。