如何解决春季:新货币的 Paypal 支付结果为 PENDING 捕获状态
我认为这不是代码问题,因为我的应用程序可以使用我的帐户货币 (usd/php/hkd) 成功支付和处理付款。
由于新要求支持某些货币(新加坡元、欧元、日元等),因此我添加了这些货币 Account Settings > Money,banks,and cards
。
顺便说一句,我在春季使用贝宝订单和付款版本 2。
该应用程序能够传递交易的货币和价值(就像我通常使用美元/欧元/PHP 所做的那样)。它能够创建订单对象、授权批准的付款……但它已授权捕获付款总是停留在 PENDING
。
我仍然需要检查我的测试 paypal 帐户和 Accept/Reject
是否收到付款。
但是,我的应用程序仅检查 COMPLETED
捕获状态,以便将其视为或标记为成功付款。
我还在我的测试贝宝帐户 (Account Settings > Payment Preferences > Block Payments
) 上尝试了配置。
尝试选择 Yes,accept and convert them to...
和 Ask me whether to accept or deny each individual payment
,但捕获状态仍为 PENDING
。
有没有办法进行捕获付款并将状态设置为 COMPLETED
?即使支付不同的货币?如果收到的付款将存储在该货币中或将其转换为我的默认货币(如美元等),那就可以了。
我想要的是在无需手动接受/拒绝使用其他货币(新添加的货币)付款的情况下进入 COMPLETED
的捕获状态。
同样,我认为这不是编码问题...更多的是配置问题...但我不确定要设置哪种配置和位置。我对贝宝开发很陌生。
顺便说一下,我通过以下链接根据我的贝宝帐户进行了更改: Payment Receiving Preferences
TIA
解决方法
这是标准的 PayPal 行为。如果您以新货币的方式接受第一笔付款,并以这种货币建立余额,则无需手动接受未来的付款。您还可以在资金管理部分手动打开 $0 余额,{{3}}
您在 namespace fsmvcproject.Models
open System
open System.ComponentModel.DataAnnotations
type Newarticle() =
[<Key>]member val Id = 0 with get,set
member val Headline = "" with get,set
member val Author = "" with get,set
member val Publication = "" with get,set
member val Intro = "" with get,set
member val Story = "" with get,set
namespace fsmvcproject.Repositories
open System.Data.Entity
open fsmvcproject.Models
open System.Collections.Generic
type SGdbEntities() =
inherit DbContext("Data Source=127.0.0.1\SQLEXPRESS;Persist Security Info=True;Initial Catalog=SG;User ID=xxxx;Password=xxxx")
[<DefaultValue()>] val mutable newarticles : IDbSet<Newarticle>
member x.Newarticles with get() = x.newarticles and set v = x.newarticles <- v
type NewarticlesRepository() =
member x.GetAll () =
use context = new SGdbEntities()
query { for a in context.Newarticles do
sortByDescending a.Id
select a }
|> Seq.toList
member x.GetDetail (id) =
use context = new SGdbEntities()
query { for a in context.Newarticles do
where (a.Id = id)
select a }
|> Seq.toList
namespace fsmvcproject.Controllers
open fsmvcproject.Repositories
open System.Web.Mvc
[<HandleError>]
type ArticlesController(repository :NewarticlesRepository) =
inherit Controller()
new() = new ArticlesController(NewarticlesRepository())
member this.Index () =
repository.GetAll()
|> this.View
member this.Detail (id) =
repository.GetDetail(id)
|> this.View
中提到的将非余额货币交易转换为主要余额的设置只会自动应用于未来的付款。由于任何货币问题,它们的状态不应为“待处理”。
(如果您发现所有付款都是待处理的,即使是您的主要余额,那么待处理的原因(如 API 响应中所述)可能是“授权”——这意味着您创建了一个授权使用 intent:AUTHORIZE 但尚未捕获。更改为 intent:CAPTURE 以立即捕获。)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。