Đã xóa phương thức thanh toán, đơn hàng cũ không tải


7

Tóm tắt: Tôi đã xóa tiện ích mở rộng phương thức thanh toán cổ từ cài đặt magento của mình và bây giờ các đơn hàng được thực hiện bằng phương thức thanh toán này không thể được xem và dẫn đến một ngoại lệ.

Cụ thể, cửa hàng của chúng tôi đã sử dụng tiện ích mở rộng phương thức thanh toán cổ xưa mà hiện tôi đang trong quá trình nâng cấp lên thương hiệu phiên bản mới, từ một nhà cung cấp khác.

Phần mở rộng cũ được viết xấu và một mớ hỗn độn, vì vậy tôi chỉ muốn thoát khỏi nó. Tiện ích mở rộng mới dành cho cùng một nhà cung cấp thanh toán, nhưng sử dụng một mã $ _ khác nhau và không tương thích với tiện ích mở rộng cũ.

Cố gắng xem bất kỳ đơn hàng nào sử dụng phương thức thanh toán này, ở mặt sau hoặc trang tài khoản khách hàng, dẫn đến một ngoại lệ: "Phương thức thanh toán được yêu cầu không khả dụng."

Làm thế nào để tôi có được xung quanh này? Tôi không quan tâm đến phương thức thanh toán cho các đơn hàng cũ này, tôi chỉ muốn có thể xem thêm chi tiết về đơn hàng mà không bị sập.

Tôi không thể thay đổi mã phương thức thanh toán trên các đơn đặt hàng thành mã phương thức thanh toán mới vì chúng không tương thích và phát sinh thêm lỗi. Có thể tạo phương thức thanh toán "khung xương" sử dụng $ _code từ phương thức thanh toán cũ cho mục đích duy nhất là thỏa mãn nhu cầu magento, và điều này sẽ khó khăn như thế nào? Hoặc có cách nào khác để giải quyết vấn đề này không liên quan đến việc tôi giữ phần mở rộng di sản cũ không?

Câu trả lời:


4

Có, có thể loại bỏ phần mở rộng để chỉ cung cấp phương thức thanh toán. Gần đây tôi đã làm tương tự cho phần mở rộng thay thế Saferpay_Business. chỉ cần xóa tiện ích mở rộng sẽ ngăn người dùng xem lịch sử đặt hàng của họ và ném ngoại lệ vào phụ trợ cửa hàng bất cứ khi nào mở đơn hàng cũ.

Chỉ cần vô hiệu hóa đầu ra mô-đun là không đủ: người quan sát vẫn sẽ được gọi có thể dẫn đến các tác dụng phụ khó chịu. trong trường hợp của chúng tôi, tiện ích mở rộng an toàn hơn đã thêm các tệp js bổ sung và thay đổi tiêu đề thông qua một người quan sát, điều này ngăn cản thanh toán onepage hoạt động bình thường.

đây là những gì chúng tôi đã làm để loại bỏ phần mở rộng:

  1. loại bỏ <resources>, <events><routers>mục từSaferpay_Business/etc/config.xml

  2. bộ <show_in_default>, <show_in_website>, <show_in_store>0 trong Saferpay_Business / etc / System.Xml (sẽ ẩn cài đặt thanh toán cụ thể trong quản trị)

  3. mục thay đổi bố trí loại bỏ / ghi đè trong <layout>từapp/design/base/default/layout/saferpaybe.xml

  4. thay đổi thông tin phiên bản Saferpay_Business/etc/config.xmlđể tránh cập nhật tiện ích mở rộng nếu nó vẫn khả dụng trong kết nối magento.

các bước của bạn có thể khác nhau - trước tiên hãy thử trong môi trường thử nghiệm.


Cảm ơn, điều này đã đưa tôi đi đúng hướng. Tôi đã tạo một phần mở rộng bộ xương đơn giản và cung cấp cho nó cùng $ _code và đảm bảo rằng nó không có sẵn ở mặt trước hoặc mặt sau.
Turpachull

@Turpachull đó cũng là một giải pháp tốt. trong trường hợp của chúng tôi, chúng tôi vẫn muốn giữ thông tin thanh toán bổ sung (như id giao dịch cc) mà tiện ích mở rộng được lưu trữ trong hồ sơ thanh toán, do đó, cách thức phức tạp hơn.
thay thế

1

Tại sao bạn vẫn không gia hạn thanh toán cũ và chỉ vô hiệu hóa nó? Để thực hiện, bạn cũng có thể đi đến Cấu hình -> Nâng cao -> Nâng cao để tắt đầu ra của nó.


Điều này có thể làm việc với một số người nhưng nó không hoạt động đối với tôi vì mô-đun ban đầu được viết quá tệ đến nỗi việc vô hiệu hóa đầu ra không có tác dụng. Phải vô hiệu hóa hoàn toàn thông qua / app / etc / mô-đun.
Turpachull

0

Tôi đã có vấn đề tương tự trong Magento 2 và đã giải quyết nó theo chi tiết trong Gist của tôi . Thêm vào đây vì đây là một trong những liên kết hàng đầu từ các tìm kiếm Google có liên quan.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.