Jump to content

paypal


phunsanit

Recommended Posts

ทำเว็บเสร็จแล้วครับติดตรง palpal ครับ

 

- paypal จำเป็นต้องลง 2 ตัวรึเปล่าครับทั้ง us / eu มีวิธีสั่งเลือกรึเปล่าใช้ตัวไหน กับประเทศไหน

- user จ่ายเงิน แล้วมันขึ้น  We're sorry, PayPal Thailand accounts cannot shop to Brazil. มันเป็นที่อะไรครับ

- ส่งของในไทยจะขึ้น undefined index: PAYMENTREQUEST_0_SHIPTOCOUNTERYCODE มันคืออะไรครับ

- อ่านเจอว่า account ต้องเป็น business ใช้เป็น personal ได้รึเปล่าครับ

 

ขอบคุณครับ

Edited by phunsanit (see edit history)
Link to comment
Share on other sites

ปัญหา ส่งของในไทยจะขึ้น undefined index: PAYMENTREQUEST_0_SHIPTOCOUNTERYCODE มันคืออะไรครับ แก้ได้แล้วครับ

 

ตั้งเป็น Choose Website Payments Standard แล้วเปิด ไฟล์ \modules\paypal\express_checkout\process.php

แก้

    private function setShippingAddress(&$fields, $id_address)
    {
        $address = new Address($id_address);

        $fields['ADDROVERRIDE'] = '1';
        $fields['EMAIL'] = $this->context->customer->email;
        $fields['PAYMENTREQUEST_0_SHIPTONAME'] = $address->firstname.' '.$address->lastname;
        $fields['PAYMENTREQUEST_0_SHIPTOPHONENUM'] = (empty($address->phone)) ? $address->phone_mobile : $address->phone;
        $fields['PAYMENTREQUEST_0_SHIPTOSTREET'] = $address->address1;
        $fields['PAYMENTREQUEST_0_SHIPTOSTREET2'] = $address->address2;
        $fields['PAYMENTREQUEST_0_SHIPTOCITY'] = $address->city;

        if ($address->id_state)
        {
            $state    = new State((int)$address->id_state);
            $fields['PAYMENTREQUEST_0_SHIPTOSTATE'] = $state->iso_code;
        }

        $country    = new Country((int)$address->id_country);
        $fields['PAYMENTREQUEST_0_SHIPTOCOUNTRYCODE'] = $country->iso_code;
        $fields['PAYMENTREQUEST_0_SHIPTOZIP'] = $address->postcode;
    }

 

เป็น

 

    private function setShippingAddress(&$fields, $id_address)
    {
        $address = new Address($id_address);

        $fields['ADDROVERRIDE'] = '1';
        $fields['EMAIL'] = $this->context->customer->email;
        $fields['PAYMENTREQUEST_0_SHIPTONAME'] = $address->firstname.' '.$address->lastname;
        $fields['PAYMENTREQUEST_0_SHIPTOPHONENUM'] = (empty($address->phone)) ? $address->phone_mobile : $address->phone;
        $fields['PAYMENTREQUEST_0_SHIPTOSTREET'] = $address->address1;
        $fields['PAYMENTREQUEST_0_SHIPTOSTREET2'] = $address->address2;
        $fields['PAYMENTREQUEST_0_SHIPTOCITY'] = $address->city;

        $country = new Country((int)$address->id_country);
        $fields['PAYMENTREQUEST_0_SHIPTOCOUNTRYCODE'] = $country->iso_code;

        if ($address->id_state)
        {
            $state    = new State((int)$address->id_state);
            $fields['PAYMENTREQUEST_0_SHIPTOSTATE'] = $state->iso_code;
        }
        else
        {
            $fields['PAYMENTREQUEST_0_SHIPTOSTATE'] = $country->iso_code;
        }
        $fields['PAYMENTREQUEST_0_SHIPTOZIP'] = $address->postcode;
    }

 

คือ ถ้่า ไม่มี $address->id_state ให้เอา $country->iso_code; ไปใส่แทน

 

http://www.prestashop.com/forums/topic/225187-solvedpaypal-express-checkout-error-the-field-shipping-address-state-is-required/page-4

  • Like 1
Link to comment
Share on other sites

  • 3 months later...
  • 1 month later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...