Paypal and AngellEye Library: You must specify only one primary receiver and at least one secondary receiver

StackOverflow https://stackoverflow.com/questions/23191211

Question

I am using AngellEye Library to send a test payment to a single receiver in Paypal. I was able to successfully request an adaptive payment authorization but is getting an error whenever I send a payment:

Array
(
    [Errors] => Array
        (
            [0] => Array
                (
                    [Receiver] => 
                    [Category] => Application
                    [Domain] => PLATFORM
                    [ErrorID] => 579008
                    [ExceptionID] => 
                    [Message] => You must specify only one primary receiver and at least one secondary receiver
                    [Parameter] => 1
                    [Severity] => Error
                    [Subdomain] => Application
                )

        )

    [Ack] => Failure
    [Build] => 10273932
    [CorrelationID] => 91304768d2d3b
    [Timestamp] => 2014-04-20T22:06:56.756-07:00
    [PayKey] => 
    [PaymentExecStatus] => 
    [RedirectURL] => 
    [XMLRequest] => ReturnAllen_USPAYhttp://mydomain.com/user?tab=financialAPP-80W284485P519543T1Seller112.198.82.212USDEACHRECEIVERCraftersHub.Com Affiliate PaymentPA-3YM23894VM185730A10000.00usb_1329725429_biz@angelleye.com1398056815SERVICE1mail@mydomain.comhttp://mydomain.com/paypal/authorizesuccess?d=mail@mydomain.com1mail@mydomain.com1398056815
    [XMLResponse] => 2014-04-20T22:06:56.756-07:00Failure91304768d2d3b10273932579008PLATFORMApplicationErrorApplicationYou must specify only one primary receiver and at least one secondary receiver1
)

The parameters I am sending to pay is below:

Array
(
    [PayRequestFields] => Array
        (
            [ActionType] => PAY
            [CancelURL] => http://mydomain.com/user?tab=financial
            [CurrencyCode] => USD
            [FeesPayer] => EACHRECEIVER
            [IPNNotificationURL] => 
            [Memo] => mydomain.com Affiliate Payment
            [Pin] => 
            [PreapprovalKey] => PA-3YM23894VM185730A
            [ReturnURL] => http://mydomain.com/paypal/authorizesuccess?d=mail@mydomain.com
            [ReverseAllParallelPaymentsOnError] => 1
            [SenderEmail] => mail@jmydomain.com
            [TrackingID] => 1398056815
        )

    [ClientDetailsFields] => Array
        (
            [CustomerID] => 1
            [CustomerType] => Seller
            [GeoLocation] => 
            [Model] => 
            [PartnerName] => 
        )

    [Receivers] => Array
        (
            [0] => Array
                (
                    [Amount] => 10000.00
                    [Email] => usb_1329725429_biz@angelleye.com
                    [InvoiceID] => 1398056815
                    [PaymentType] => SERVICE
                    [PaymentSubType] => 
                    [Phone] => Array
                        (
                            [CountryCode] => 
                            [PhoneNumber] => 
                            [Extension] => 
                        )

                    [Primary] => 1
                )

        )

    [SenderIdentifierFields] => Array
        (
            [UseCredentials] => 
        )

    [AccountIdentifierFields] => Array
        (
            [Email] => mail@mydomain.com
            [Phone] => Array
                (
                    [CountryCode] => 
                    [PhoneNumber] => 
                    [Extension] => 
                )

        )

)

Can anybody point out how I could accomplish this? Thanks.

Was it helpful?

Solution 2

u need to change [FeesPayer] => sender and [Primary] => 'false' . this tells the api that there is only one sender and one receiver. check here https://developer.paypal.com/docs/classic/adaptive-payments/integration-guide/APIntro/ for more info try this :

     Array
     (
       [PayRequestFields] => Array
     (
        [ActionType] => PAY
        [CancelURL] => http://example.com/user?tab=financial
        [CurrencyCode] => USD
        [FeesPayer] => sender
        [IPNNotificationURL] => 
        [Memo] => example.com Affiliate Payment
        [Pin] => 
        [PreapprovalKey] => PA-3YM23894VM185730A
        [ReturnURL] => http://example.com/paypal/authorizesuccess?d=mail@mydomain.com
        [ReverseAllParallelPaymentsOnError] => 1
        [SenderEmail] => mail@jexample.com
        [TrackingID] => 1398056815
    )

[ClientDetailsFields] => Array
    (
        [CustomerID] => 1
        [CustomerType] => Seller
        [GeoLocation] => 
        [Model] => 
        [PartnerName] => 
    )

[Receivers] => Array
    (
        [0] => Array
            (
                [Amount] => 10000.00
                [Email] => usb_1329725429_biz@angelleye.com
                [InvoiceID] => 1398056815
                [PaymentType] => SERVICE
                [PaymentSubType] => 
                [Phone] => Array
                    (
                        [CountryCode] => 
                        [PhoneNumber] => 
                        [Extension] => 
                    )

                [Primary] => 'false'
            )

    )

[SenderIdentifierFields] => Array
    (
        [UseCredentials] => 
    )

[AccountIdentifierFields] => Array
    (
        [Email] => mail@example.com
        [Phone] => Array
            (
                [CountryCode] => 
                [PhoneNumber] => 
                [Extension] => 
            )

    )

)

OTHER TIPS

I had the same problem, fixed with putting primary to blank... 'Primary' => ''

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top