Cổng thanh toán trong PHP là gì?

Tìm hiểu cách tích hợp Cổng thanh toán Zaakpay trong PHP. Vui lòng làm theo hướng dẫn Bắt đầu của chúng tôi để tích hợp Cổng thanh toán vào trang web PHP của bạn

Đề xuất chỉnh sửa

📘Bạn chưa tạo tài khoản?

Vui lòng làm theo hướng dẫn Bắt đầu của chúng tôi

1. Cài đặt Bộ công cụ

  1. Chúng tôi có 2 phiên bản bộ PHP. Bạn có thể tải xuống một trong số chúng
  • Tải xuống Bộ công cụ PHP Cổng thanh toán Zaakpay. Số tiền tính bằng Paisa
  • Tải xuống Bộ công cụ PHP Cổng thanh toán Zaakpay phiên bản 1. 1. Số tiền bằng Rupee
  1. Sao chép thư mục Zaakpay_PHP_Integration_Kit trong tài liệu gốc của máy chủ của bạn (ví dụ: /var/www/html)

2. Bắt đầu thanh toán

Cổng thanh toán trong PHP là gì?
Cổng thanh toán trong PHP là gì?
  1. Các tham số yêu cầu phải được cung cấp tại trang web của bạn sẽ tiếp tục chuyển đến Thanh toán. php ( API giao dịch ) để biết thêm quy trình thanh toán

Bạn cũng có thể chuyển trực tiếp các tham số tới Thanh toán. php để bỏ qua biểu mẫu nhập liệu

Cổng thanh toán trong PHP là gì?
Cổng thanh toán trong PHP là gì?
  1. Để kiểm tra các tham số tùy chọn và bắt buộc, vui lòng tham khảo Tài liệu này

Bạn cũng có thể thêm/xóa các tham số tùy chọn khỏi Thanh toán. php

  1. Tất cả các tham số yêu cầu bao gồm tổng kiểm tra sẽ chuyển hướng tiếp đến Zaakpay bằng cách sử dụng yêu cầu đăng bài như được đề cập trong Thanh toán. php, chuỗi tổng kiểm tra và tổng kiểm tra được tính toán sẽ được tạo như bên dưới
Cổng thanh toán trong PHP là gì?
Cổng thanh toán trong PHP là gì?

📘Giao dịch thất bại?

Đảm bảo rằng bạn đang sử dụng thẻ Trực tiếp cho các Giao dịch Trực tiếp

  1. Sau khi giao dịch hoàn tất, bạn sẽ nhận được phản hồi cho Phản hồi. php

    (Bạn cũng có thể sử dụng tệp Phản hồi của riêng mình để xử lý Gọi lại của Zaakpay)

Cổng thanh toán trong PHP là gì?
Cổng thanh toán trong PHP là gì?

📘Không thể nhận được phản hồi?

Vui lòng kiểm tra URL trả về ( Đường dẫn tệp phản hồi ) là chính xác và có thể truy cập được

3. API nổi bật

  1. Kiểm tra API

    Điều này được sử dụng để kiểm tra trạng thái của giao dịch

Cổng thanh toán trong PHP là gì?
Cổng thanh toán trong PHP là gì?
Cổng thanh toán trong PHP là gì?
Cổng thanh toán trong PHP là gì?

Sao cho việc chuyển các tham số trên tới TransactionStatus. php bạn có thể kiểm tra trạng thái của giao dịch

Cổng thanh toán trong PHP là gì?
Cổng thanh toán trong PHP là gì?

Ngoài ra tổng kiểm tra sẽ được tính theo cách tương tự như đã đề cập ở trên

  1. API hoàn tiền

    Điều này được sử dụng để hoàn trả giao dịch

    Bạn có thể bắt đầu hoàn trả toàn bộ hoặc hoàn trả một phần đối với một giao dịch cụ thể

Cổng thanh toán trong PHP là gì?
Cổng thanh toán trong PHP là gì?

Ngoài ra, chuỗi tổng kiểm tra được tạo ở đây sẽ là một chuỗi được nối với tất cả các tham số được phân tách bằng các khóa học đơn lẻ như được đề cập bên dưới

  • Tải về

    Ứng dụng mẫu Razorpay PHP

    .
  • Đảm bảo rằng bạn đang sử dụng 5. 6 hoặc phiên bản cao hơn của SDK

    Tải xuống

    phiên bản mới nhất của SDK từ GitHub

Xem video này để biết cách tích hợp Cổng thanh toán Razorpay trên ứng dụng PHP của bạn

  • Tạo một

    tài khoản dao cạo

    .
  • Đăng nhập vào Bảng điều khiển Razorpay và

    trong chế độ thử nghiệm

Thực hiện theo các bước tích hợp này

  1. Xây dựng tích hợp

  2. Tích hợp thử nghiệm

  3. Danh sách kiểm tra phát trực tiếp

Cổng thanh toán Stripe cung cấp một cách dễ dàng và mạnh mẽ để chấp nhận thẻ tín dụng trực tiếp trên ứng dụng web. Stripe giúp dễ dàng tích hợp hệ thống thanh toán và thu tiền thanh toán trên trang web. Stripe API là một giải pháp mạnh mẽ để tích hợp hệ thống thanh toán vào ứng dụng web nhằm mang lại trải nghiệm thanh toán mượt mà

Nếu bạn muốn chấp nhận thanh toán bằng thẻ tín dụng trên trang web của mình, Stripe sẽ là lựa chọn tốt nhất cho điều đó. Bạn có thể dễ dàng tích hợp hệ thống thanh toán vào trang web dựa trên PHP của mình, cho phép người dùng thực hiện thanh toán qua thẻ tín dụng hoặc thẻ ghi nợ mà không cần rời khỏi trang web của bạn. Hướng dẫn này sẽ chỉ cho bạn cách tích hợp cổng thanh toán Stripe trong PHP để thu tiền thanh toán trực tuyến bằng thẻ tín dụng hoặc thẻ ghi nợ

Trong tập lệnh ví dụ, chúng tôi sẽ triển khai chức năng sau để minh họa quy trình tích hợp cổng thanh toán Stripe

  • Tạo biểu mẫu HTML để thu thập thông tin thẻ tín dụng
  • Tạo PaymentIntent bằng thư viện Stripe PHP
  • Đính kèm các yếu tố đầu vào thẻ vào biểu mẫu HTML bằng thư viện Stripe JS
  • Truyền an toàn thông tin thẻ, xác thực, tính phí và xác nhận thanh toán bằng Stripe API
  • Truy xuất PaymentIntent và thông tin khách hàng bằng Stripe API
  • Chèn chi tiết giao dịch vào cơ sở dữ liệu và hiển thị trạng thái thanh toán
  • Tích hợp thanh toán 3D Secure để hỗ trợ Xác thực khách hàng mạnh mẽ (SCA)

Dữ liệu khóa API kiểm tra sọc

Trước khi tích hợp cổng thanh toán Stripe của bạn hoạt động, bạn cần kiểm tra kỹ lưỡng. Để kiểm tra quy trình thanh toán bằng thẻ tín dụng với Stripe, cần có Khóa API kiểm tra. Bạn có thể tạo và nhận DỮ LIỆU THỬ NGHIỆM trong tài khoản Stripe của mình

  • Đăng nhập vào tài khoản Stripe của bạn và điều hướng đến trang Nhà phát triển » Khóa API
  • Trong DỮ LIỆU KIỂM TRA, bạn sẽ thấy các khóa API (Khóa có thể xuất bản và Khóa bí mật) được liệt kê trong phần Khóa tiêu chuẩn. Để hiển thị Khóa bí mật, nhấp vào nút Hiển thị khóa kiểm tra.
    Cổng thanh toán trong PHP là gì?

Thu thập khóa Có thể xuất bản và khóa Bí mật để sử dụng sau này trong tập lệnh

Trước khi bắt đầu triển khai cổng thanh toán Stripe bằng PHP, hãy xem cấu trúc tệp

stripe_integration_php/
├── config.php
├── dbConnect.php
├── index.php
├── payment_init.php
├── payment-status.php
├── stripe-php/
├── js/
|    └── checkout.js
└── css/
    └── style.css

Tạo bảng cơ sở dữ liệu

Để lưu trữ các chi tiết giao dịch, một bảng được yêu cầu phải được tạo trong cơ sở dữ liệu. SQL sau đây tạo một bảng

CREATE TABLE `transactions` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `customer_name` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
  `customer_email` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
  `item_name` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
  `item_price` float(10,2) NOT NULL,
  `item_price_currency` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
  `paid_amount` float(10,2) NOT NULL,
  `paid_amount_currency` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
  `txn_id` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
  `payment_status` varchar(25) COLLATE utf8_unicode_ci NOT NULL,
  `created` datetime NOT NULL,
  `modified` datetime NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
1 trong cơ sở dữ liệu MySQL

CREATE TABLE `transactions` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `customer_name` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
  `customer_email` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
  `item_name` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
  `item_price` float(10,2) NOT NULL,
  `item_price_currency` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
  `paid_amount` float(10,2) NOT NULL,
  `paid_amount_currency` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
  `txn_id` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
  `payment_status` varchar(25) COLLATE utf8_unicode_ci NOT NULL,
  `created` datetime NOT NULL,
  `modified` datetime NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

Stripe API và cấu hình cơ sở dữ liệu (config. php)

Trong tệp

CREATE TABLE `transactions` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `customer_name` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
  `customer_email` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
  `item_name` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
  `item_price` float(10,2) NOT NULL,
  `item_price_currency` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
  `paid_amount` float(10,2) NOT NULL,
  `paid_amount_currency` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
  `txn_id` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
  `payment_status` varchar(25) COLLATE utf8_unicode_ci NOT NULL,
  `created` datetime NOT NULL,
  `modified` datetime NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
0, các biến không đổi của API Stripe và cài đặt cơ sở dữ liệu được xác định

Thông tin sản phẩm

  • CREATE TABLE `transactions` (
      `id` int(11) NOT NULL AUTO_INCREMENT,
      `customer_name` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
      `customer_email` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
      `item_name` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
      `item_price` float(10,2) NOT NULL,
      `item_price_currency` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
      `paid_amount` float(10,2) NOT NULL,
      `paid_amount_currency` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
      `txn_id` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
      `payment_status` varchar(25) COLLATE utf8_unicode_ci NOT NULL,
      `created` datetime NOT NULL,
      `modified` datetime NOT NULL,
      PRIMARY KEY (`id`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
    1 – Tên sản phẩm
  • CREATE TABLE `transactions` (
      `id` int(11) NOT NULL AUTO_INCREMENT,
      `customer_name` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
      `customer_email` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
      `item_name` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
      `item_price` float(10,2) NOT NULL,
      `item_price_currency` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
      `paid_amount` float(10,2) NOT NULL,
      `paid_amount_currency` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
      `txn_id` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
      `payment_status` varchar(25) COLLATE utf8_unicode_ci NOT NULL,
      `created` datetime NOT NULL,
      `modified` datetime NOT NULL,
      PRIMARY KEY (`id`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
    2 – Giá sản phẩm
  • CREATE TABLE `transactions` (
      `id` int(11) NOT NULL AUTO_INCREMENT,
      `customer_name` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
      `customer_email` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
      `item_name` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
      `item_price` float(10,2) NOT NULL,
      `item_price_currency` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
      `paid_amount` float(10,2) NOT NULL,
      `paid_amount_currency` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
      `txn_id` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
      `payment_status` varchar(25) COLLATE utf8_unicode_ci NOT NULL,
      `created` datetime NOT NULL,
      `modified` datetime NOT NULL,
      PRIMARY KEY (`id`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
    3 – Mã tiền tệ

Hằng số API sọc

  • STRIPE_API_KEY – Chỉ định khóa Bí mật API
  • STRIPE_PUBLISHABLE_KEY – Chỉ định khóa API có thể xuất bản

Hằng cơ sở dữ liệu

  • DB_HOST – Chỉ định máy chủ cơ sở dữ liệu
  • DB_USERNAME – Chỉ định tên người dùng cơ sở dữ liệu
  • DB_PASSWORD – Chỉ định mật khẩu cơ sở dữ liệu
  • DB_NAME – Chỉ định tên cơ sở dữ liệu

// Product Details
// Minimum amount is $0.50 US
$itemName = "Demo Product";
$itemPrice = 25;
$currency = "USD";

/* Stripe API configuration
 * Remember to switch to your live publishable and secret key in production!
 * See your keys here: https://dashboard.stripe.com/account/apikeys
 */
define('STRIPE_API_KEY', 'Insert_Stripe_API_Secret_key');
define('STRIPE_PUBLISHABLE_KEY', 'Insert_Stripe_API_Publishable_key');

// Database configuration
define('DB_HOST', 'localhost');
define('DB_USERNAME', 'root');
define('DB_PASSWORD', 'root');
define('DB_NAME', 'codexworld');

?>

Lưu ý rằng. Khóa bí mật API Stripe và khóa có thể xuất bản sẽ được tìm thấy trong phần Dữ liệu khóa API trong tài khoản Stripe của bạn

Kết nối cơ sở dữ liệu (dbConnect. php)

File

CREATE TABLE `transactions` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `customer_name` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
  `customer_email` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
  `item_name` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
  `item_price` float(10,2) NOT NULL,
  `item_price_currency` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
  `paid_amount` float(10,2) NOT NULL,
  `paid_amount_currency` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
  `txn_id` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
  `payment_status` varchar(25) COLLATE utf8_unicode_ci NOT NULL,
  `created` datetime NOT NULL,
  `modified` datetime NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
4 giúp kết nối cơ sở dữ liệu bằng PHP và MySQL

________số 8

Biểu mẫu thanh toán sọc (chỉ mục. php)

Lúc đầu, bao gồm các tập tin cấu hình

// Include configuration file
require_once 'config.php';
?>

Thư viện JS sọc.
Bao gồm sọc. thư viện js v3 giúp gửi an toàn thông tin nhạy cảm tới Stripe trực tiếp từ trình duyệt.

Thanh toán tập lệnh JS.
Bao gồm tập lệnh tùy chỉnh (

CREATE TABLE `transactions` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `customer_name` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
  `customer_email` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
  `item_name` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
  `item_price` float(10,2) NOT NULL,
  `item_price_currency` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
  `paid_amount` float(10,2) NOT NULL,
  `paid_amount_currency` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
  `txn_id` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
  `payment_status` varchar(25) COLLATE utf8_unicode_ci NOT NULL,
  `created` datetime NOT NULL,
  `modified` datetime NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
5) để xử lý thanh toán với Stripe API bằng JavaScript.

  • Truyền Khóa API Stripe cho tập lệnh JS trong thuộc tính
    CREATE TABLE `transactions` (
      `id` int(11) NOT NULL AUTO_INCREMENT,
      `customer_name` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
      `customer_email` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
      `item_name` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
      `item_price` float(10,2) NOT NULL,
      `item_price_currency` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
      `paid_amount` float(10,2) NOT NULL,
      `paid_amount_currency` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
      `txn_id` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
      `payment_status` varchar(25) COLLATE utf8_unicode_ci NOT NULL,
      `created` datetime NOT NULL,
      `modified` datetime NOT NULL,
      PRIMARY KEY (`id`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
    6
CREATE TABLE `transactions` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `customer_name` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
  `customer_email` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
  `item_name` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
  `item_price` float(10,2) NOT NULL,
  `item_price_currency` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
  `paid_amount` float(10,2) NOT NULL,
  `paid_amount_currency` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
  `txn_id` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
  `payment_status` varchar(25) COLLATE utf8_unicode_ci NOT NULL,
  `created` datetime NOT NULL,
  `modified` datetime NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
2

Mẫu thanh toán HTML.
Ban đầu, chi tiết sản phẩm được hiển thị dưới dạng HTML để thu thập thông tin người dùng (tên và email) và chi tiết thẻ (Số thẻ, Ngày hết hạn và Số CVC. ).

  • Xác định phần tử HTML (
    CREATE TABLE `transactions` (
      `id` int(11) NOT NULL AUTO_INCREMENT,
      `customer_name` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
      `customer_email` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
      `item_name` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
      `item_price` float(10,2) NOT NULL,
      `item_price_currency` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
      `paid_amount` float(10,2) NOT NULL,
      `paid_amount_currency` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
      `txn_id` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
      `payment_status` varchar(25) COLLATE utf8_unicode_ci NOT NULL,
      `created` datetime NOT NULL,
      `modified` datetime NOT NULL,
      PRIMARY KEY (`id`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
    7) để đính kèm Phần tử thanh toán theo Stripe. thư viện js
  • Xác định phần tử để hiển thị thông báo xử lý thanh toán
  • Xác định phần tử để hiển thị nút khởi tạo lại thanh toán

Tập lệnh thanh toán (thanh toán. js)

Đoạn mã JavaScript sau được sử dụng để khởi tạo Stripe Elements và tạo PaymentElement với thư viện Stripe JS v3

  • Tạo một phiên bản của đối tượng Stripe và đặt khóa API có thể xuất bản
  • Hàm
    CREATE TABLE `transactions` (
      `id` int(11) NOT NULL AUTO_INCREMENT,
      `customer_name` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
      `customer_email` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
      `item_name` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
      `item_price` float(10,2) NOT NULL,
      `item_price_currency` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
      `paid_amount` float(10,2) NOT NULL,
      `paid_amount_currency` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
      `txn_id` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
      `payment_status` varchar(25) COLLATE utf8_unicode_ci NOT NULL,
      `created` datetime NOT NULL,
      `modified` datetime NOT NULL,
      PRIMARY KEY (`id`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
    8 được sử dụng để,
    • Lấy mục đích thanh toán từ tập lệnh phía máy chủ (
      CREATE TABLE `transactions` (
        `id` int(11) NOT NULL AUTO_INCREMENT,
        `customer_name` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
        `customer_email` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
        `item_name` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
        `item_price` float(10,2) NOT NULL,
        `item_price_currency` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
        `paid_amount` float(10,2) NOT NULL,
        `paid_amount_currency` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
        `txn_id` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
        `payment_status` varchar(25) COLLATE utf8_unicode_ci NOT NULL,
        `created` datetime NOT NULL,
        `modified` datetime NOT NULL,
        PRIMARY KEY (`id`)
      ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
      9) và nắm bắt bí mật của khách hàng
    • Tạo một phiên bản của thư viện Giao diện người dùng thành phần và đính kèm bí mật ứng dụng khách
    • Gắn kết các phần tử thanh toán với phần tử HTML (

      // Product Details
      // Minimum amount is $0.50 US
      $itemName = "Demo Product";
      $itemPrice = 25;
      $currency = "USD";

      /* Stripe API configuration
       * Remember to switch to your live publishable and secret key in production!
       * See your keys here: https://dashboard.stripe.com/account/apikeys
       */
      define('STRIPE_API_KEY', 'Insert_Stripe_API_Secret_key');
      define('STRIPE_PUBLISHABLE_KEY', 'Insert_Stripe_API_Publishable_key');

      // Database configuration
      define('DB_HOST', 'localhost');
      define('DB_USERNAME', 'root');
      define('DB_PASSWORD', 'root');
      define('DB_NAME', 'codexworld');

      ?>

      0) được xác định trong biểu mẫu thanh toán
  • Chức năng

    // Product Details
    // Minimum amount is $0.50 US
    $itemName = "Demo Product";
    $itemPrice = 25;
    $currency = "USD";

    /* Stripe API configuration
     * Remember to switch to your live publishable and secret key in production!
     * See your keys here: https://dashboard.stripe.com/account/apikeys
     */
    define('STRIPE_API_KEY', 'Insert_Stripe_API_Secret_key');
    define('STRIPE_PUBLISHABLE_KEY', 'Insert_Stripe_API_Publishable_key');

    // Database configuration
    define('DB_HOST', 'localhost');
    define('DB_USERNAME', 'root');
    define('DB_PASSWORD', 'root');
    define('DB_NAME', 'codexworld');

    ?>

    1 được sử dụng để,
    • Đăng thông tin chi tiết về khách hàng lên tập lệnh phía máy chủ (
      CREATE TABLE `transactions` (
        `id` int(11) NOT NULL AUTO_INCREMENT,
        `customer_name` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
        `customer_email` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
        `item_name` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
        `item_price` float(10,2) NOT NULL,
        `item_price_currency` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
        `paid_amount` float(10,2) NOT NULL,
        `paid_amount_currency` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
        `txn_id` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
        `payment_status` varchar(25) COLLATE utf8_unicode_ci NOT NULL,
        `created` datetime NOT NULL,
        `modified` datetime NOT NULL,
        PRIMARY KEY (`id`)
      ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
      9)
    • Xác nhận Mục đích thanh toán bằng cách sử dụng

      // Product Details
      // Minimum amount is $0.50 US
      $itemName = "Demo Product";
      $itemPrice = 25;
      $currency = "USD";

      /* Stripe API configuration
       * Remember to switch to your live publishable and secret key in production!
       * See your keys here: https://dashboard.stripe.com/account/apikeys
       */
      define('STRIPE_API_KEY', 'Insert_Stripe_API_Secret_key');
      define('STRIPE_PUBLISHABLE_KEY', 'Insert_Stripe_API_Publishable_key');

      // Database configuration
      define('DB_HOST', 'localhost');
      define('DB_USERNAME', 'root');
      define('DB_PASSWORD', 'root');
      define('DB_NAME', 'codexworld');

      ?>

      3 của API JS Mục đích thanh toán Stripe
  • Hàm

    // Product Details
    // Minimum amount is $0.50 US
    $itemName = "Demo Product";
    $itemPrice = 25;
    $currency = "USD";

    /* Stripe API configuration
     * Remember to switch to your live publishable and secret key in production!
     * See your keys here: https://dashboard.stripe.com/account/apikeys
     */
    define('STRIPE_API_KEY', 'Insert_Stripe_API_Secret_key');
    define('STRIPE_PUBLISHABLE_KEY', 'Insert_Stripe_API_Publishable_key');

    // Database configuration
    define('DB_HOST', 'localhost');
    define('DB_USERNAME', 'root');
    define('DB_PASSWORD', 'root');
    define('DB_NAME', 'codexworld');

    ?>

    4 được sử dụng để,
    • Tìm nạp trạng thái PaymentIntent sau khi gửi thanh toán bằng cách sử dụng phương thức

      // Product Details
      // Minimum amount is $0.50 US
      $itemName = "Demo Product";
      $itemPrice = 25;
      $currency = "USD";

      /* Stripe API configuration
       * Remember to switch to your live publishable and secret key in production!
       * See your keys here: https://dashboard.stripe.com/account/apikeys
       */
      define('STRIPE_API_KEY', 'Insert_Stripe_API_Secret_key');
      define('STRIPE_PUBLISHABLE_KEY', 'Insert_Stripe_API_Publishable_key');

      // Database configuration
      define('DB_HOST', 'localhost');
      define('DB_USERNAME', 'root');
      define('DB_PASSWORD', 'root');
      define('DB_NAME', 'codexworld');

      ?>

      5 của Stripe Payment Intents JS API
    • Đăng thông tin giao dịch lên tập lệnh phía máy chủ (
      CREATE TABLE `transactions` (
        `id` int(11) NOT NULL AUTO_INCREMENT,
        `customer_name` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
        `customer_email` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
        `item_name` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
        `item_price` float(10,2) NOT NULL,
        `item_price_currency` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
        `paid_amount` float(10,2) NOT NULL,
        `paid_amount_currency` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
        `txn_id` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
        `payment_status` varchar(25) COLLATE utf8_unicode_ci NOT NULL,
        `created` datetime NOT NULL,
        `modified` datetime NOT NULL,
        PRIMARY KEY (`id`)
      ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
      9) và chuyển hướng đến trang trạng thái thanh toán (

      // Product Details
      // Minimum amount is $0.50 US
      $itemName = "Demo Product";
      $itemPrice = 25;
      $currency = "USD";

      /* Stripe API configuration
       * Remember to switch to your live publishable and secret key in production!
       * See your keys here: https://dashboard.stripe.com/account/apikeys
       */
      define('STRIPE_API_KEY', 'Insert_Stripe_API_Secret_key');
      define('STRIPE_PUBLISHABLE_KEY', 'Insert_Stripe_API_Publishable_key');

      // Database configuration
      define('DB_HOST', 'localhost');
      define('DB_USERNAME', 'root');
      define('DB_PASSWORD', 'root');
      define('DB_NAME', 'codexworld');

      ?>

      7)
  • Hàm

    // Product Details
    // Minimum amount is $0.50 US
    $itemName = "Demo Product";
    $itemPrice = 25;
    $currency = "USD";

    /* Stripe API configuration
     * Remember to switch to your live publishable and secret key in production!
     * See your keys here: https://dashboard.stripe.com/account/apikeys
     */
    define('STRIPE_API_KEY', 'Insert_Stripe_API_Secret_key');
    define('STRIPE_PUBLISHABLE_KEY', 'Insert_Stripe_API_Publishable_key');

    // Database configuration
    define('DB_HOST', 'localhost');
    define('DB_USERNAME', 'root');
    define('DB_PASSWORD', 'root');
    define('DB_NAME', 'codexworld');

    ?>

    8 giúp hiển thị thông báo trạng thái
  • Chức năng

    // Product Details
    // Minimum amount is $0.50 US
    $itemName = "Demo Product";
    $itemPrice = 25;
    $currency = "USD";

    /* Stripe API configuration
     * Remember to switch to your live publishable and secret key in production!
     * See your keys here: https://dashboard.stripe.com/account/apikeys
     */
    define('STRIPE_API_KEY', 'Insert_Stripe_API_Secret_key');
    define('STRIPE_PUBLISHABLE_KEY', 'Insert_Stripe_API_Publishable_key');

    // Database configuration
    define('DB_HOST', 'localhost');
    define('DB_USERNAME', 'root');
    define('DB_PASSWORD', 'root');
    define('DB_NAME', 'codexworld');

    ?>

    9 vô hiệu hóa nút gửi và hiển thị công cụ quay vòng khi gửi thanh toán
  • Chức năng
    // Connect with the database
    $db = new mysqli(DB_HOST, DB_USERNAME, DB_PASSWORD, DB_NAME);

    // Display error if failed to connect
    if ($db->connect_errno) {
        printf("Connect failed: %s\n", $db->connect_error);
        exit();
    }

    0 vô hiệu hóa hình thức thanh toán và hiển thị thông báo về xử lý thanh toán
  • Chức năng
    // Connect with the database
    $db = new mysqli(DB_HOST, DB_USERNAME, DB_PASSWORD, DB_NAME);

    // Display error if failed to connect
    if ($db->connect_errno) {
        printf("Connect failed: %s\n", $db->connect_error);
        exit();
    }

    1 giúp tắt hình thức thanh toán và hiển thị nút khởi tạo lại thanh toán

Thư viện sọc PHP

Thư viện Stripe PHP SDK được sử dụng để tạo PaymentIntent, tính phí và xử lý thanh toán bằng thẻ. Tất cả các tệp thư viện cần thiết đều được bao gồm trong mã nguồn của chúng tôi, bạn không cần tải xuống riêng chúng

Xử lý thanh toán và tính phí thẻ (payment_init. php)

Tập lệnh phía máy chủ này được API tìm nạp phía máy khách truy cập trong mã JavaScript để tạo PaymentIntent và xử lý phí thẻ tín dụng bằng thư viện Stripe API với PHP

  • Bao gồm thư viện Stripe PHP
  • Đặt khóa bí mật API bằng phương thức setApiKey() của lớp Stripe
  • Truy xuất JSON từ nội dung POST bằng cách sử dụng
    // Connect with the database
    $db = new mysqli(DB_HOST, DB_USERNAME, DB_PASSWORD, DB_NAME);

    // Display error if failed to connect
    if ($db->connect_errno) {
        printf("Connect failed: %s\n", $db->connect_error);
        exit();
    }

    2 và
    // Connect with the database
    $db = new mysqli(DB_HOST, DB_USERNAME, DB_PASSWORD, DB_NAME);

    // Display error if failed to connect
    if ($db->connect_errno) {
        printf("Connect failed: %s\n", $db->connect_error);
        exit();
    }

    3 trong PHP
  • Nếu yêu cầu
    // Connect with the database
    $db = new mysqli(DB_HOST, DB_USERNAME, DB_PASSWORD, DB_NAME);

    // Display error if failed to connect
    if ($db->connect_errno) {
        printf("Connect failed: %s\n", $db->connect_error);
        exit();
    }

    4 được gửi
    • Tạo PaymentIntent với số tiền và đơn vị tiền tệ bằng cách sử dụng phương thức
      // Connect with the database
      $db = new mysqli(DB_HOST, DB_USERNAME, DB_PASSWORD, DB_NAME);

      // Display error if failed to connect
      if ($db->connect_errno) {
          printf("Connect failed: %s\n", $db->connect_error);
          exit();
      }

      5 của Stripe Payment Intents API
    • Trả lại mã thông báo clientSecret cho phía máy khách
  • Nếu yêu cầu
    // Connect with the database
    $db = new mysqli(DB_HOST, DB_USERNAME, DB_PASSWORD, DB_NAME);

    // Display error if failed to connect
    if ($db->connect_errno) {
        printf("Connect failed: %s\n", $db->connect_error);
        exit();
    }

    6 được gửi
    • Tạo khách hàng bằng cách sử dụng phương thức tạo() của Stripe Customer API
    • Cập nhật Mục đích thanh toán với ID khách hàng bằng cách sử dụng phương thức
      // Connect with the database
      $db = new mysqli(DB_HOST, DB_USERNAME, DB_PASSWORD, DB_NAME);

      // Display error if failed to connect
      if ($db->connect_errno) {
          printf("Connect failed: %s\n", $db->connect_error);
          exit();
      }

      7 của API Mục đích thanh toán
  • Nếu yêu cầu
    // Connect with the database
    $db = new mysqli(DB_HOST, DB_USERNAME, DB_PASSWORD, DB_NAME);

    // Display error if failed to connect
    if ($db->connect_errno) {
        printf("Connect failed: %s\n", $db->connect_error);
        exit();
    }

    8 được gửi
    • Truy xuất chi tiết khách hàng bằng phương pháp
      // Connect with the database
      $db = new mysqli(DB_HOST, DB_USERNAME, DB_PASSWORD, DB_NAME);

      // Display error if failed to connect
      if ($db->connect_errno) {
          printf("Connect failed: %s\n", $db->connect_error);
          exit();
      }

      9 của Stripe Customer API
    • Chèn dữ liệu giao dịch vào cơ sở dữ liệu bằng cách sử dụng Câu lệnh chuẩn bị sẵn của MySQL với PHP
    • Trả lại ID giao dịch ở định dạng được mã hóa base64 cho phía máy khách
CREATE TABLE `transactions` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `customer_name` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
  `customer_email` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
  `item_name` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
  `item_price` float(10,2) NOT NULL,
  `item_price_currency` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
  `paid_amount` float(10,2) NOT NULL,
  `paid_amount_currency` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
  `txn_id` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
  `payment_status` varchar(25) COLLATE utf8_unicode_ci NOT NULL,
  `created` datetime NOT NULL,
  `modified` datetime NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
6

Trạng thái thanh toán (trạng thái thanh toán. php)

Dựa trên

// Include configuration file
require_once 'config.php';
?>
0, người dùng được chuyển hướng đến trang này

  • Lấy dữ liệu giao dịch từ cơ sở dữ liệu bằng PHP và MySQL
  • Hiển thị trạng thái thanh toán với chi tiết khách hàng
CREATE TABLE `transactions` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `customer_name` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
  `customer_email` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
  `item_name` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
  `item_price` float(10,2) NOT NULL,
  `item_price_currency` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
  `paid_amount` float(10,2) NOT NULL,
  `paid_amount_currency` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
  `txn_id` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
  `payment_status` varchar(25) COLLATE utf8_unicode_ci NOT NULL,
  `created` datetime NOT NULL,
  `modified` datetime NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
8

Chi tiết thẻ kiểm tra

Để kiểm tra quy trình thanh toán, bạn cần kiểm tra chi tiết thẻ. Sử dụng bất kỳ số thẻ kiểm tra nào sau đây, ngày hết hạn hợp lệ trong tương lai và bất kỳ số CVC ngẫu nhiên nào để kiểm tra tích hợp cổng thanh toán Stripe trong PHP

  • 4242 4242 4242 4242 – Visa
  • 4000 0566 5566 5556 – Visa (ghi nợ)
  • 5555 5555 5555 4444 – Mastercard
  • 5200 8282 8282 8210 – Mastercard (ghi nợ)
  • 3782 822463 10005 – American Express
  • 6011 1111 1111 1117 – Khám phá
  • 3566 0020 2036 0505 – JCB
  • 6200 0000 0000 0005 – UnionPay

Xác thực an toàn 3D

Tính năng Bảo mật 3D yêu cầu xác thực bổ sung cho các giao dịch thẻ tín dụng. Sử dụng các thẻ kiểm tra sau để mô phỏng quy trình thanh toán liên quan đến xác thực 3D Secure

  • 4000 0027 6000 3184
  • 4000 0000 0000 3063

Làm cho cổng thanh toán Stripe hoạt động

Khi quá trình tích hợp hoàn tất và quy trình thanh toán hoạt động bình thường, hãy làm theo các bước bên dưới để làm cho cổng thanh toán Stripe hoạt động

  • Đăng nhập vào tài khoản Stripe của bạn và điều hướng đến trang Nhà phát triển » Khóa API
  • Thu thập các khóa API (Khóa có thể xuất bản và Khóa bí mật) từ Dữ liệu trực tiếp
  • Trong tệp
    CREATE TABLE `transactions` (
      `id` int(11) NOT NULL AUTO_INCREMENT,
      `customer_name` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
      `customer_email` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
      `item_name` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
      `item_price` float(10,2) NOT NULL,
      `item_price_currency` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
      `paid_amount` float(10,2) NOT NULL,
      `paid_amount_currency` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
      `txn_id` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
      `payment_status` varchar(25) COLLATE utf8_unicode_ci NOT NULL,
      `created` datetime NOT NULL,
      `modified` datetime NOT NULL,
      PRIMARY KEY (`id`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
    0, thay thế các khóa API Kiểm tra (Khóa có thể xuất bản và Khóa bí mật) bằng các khóa API Trực tiếp (Khóa có thể xuất bản và Khóa bí mật).
    CREATE TABLE `transactions` (
      `id` int(11) NOT NULL AUTO_INCREMENT,
      `customer_name` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
      `customer_email` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
      `item_name` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
      `item_price` float(10,2) NOT NULL,
      `item_price_currency` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
      `paid_amount` float(10,2) NOT NULL,
      `paid_amount_currency` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
      `txn_id` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
      `payment_status` varchar(25) COLLATE utf8_unicode_ci NOT NULL,
      `created` datetime NOT NULL,
      `modified` datetime NOT NULL,
      PRIMARY KEY (`id`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
    0

Tích hợp cổng thanh toán PayPal trong PHP

Phần kết luận

Cổng thanh toán Stripe là cách dễ dàng nhất để chấp nhận thanh toán bằng thẻ tín dụng trên ứng dụng web. Mã ví dụ của chúng tôi sử dụng thư viện Stripe PHP để tạo khoản phí và thanh toán bằng thẻ tín dụng/thẻ ghi nợ. Xác thực Bảo mật 3D được tích hợp để làm cho tập lệnh tích hợp Stripe này sẵn sàng cho SCA (Xác thực khách hàng mạnh mẽ). Để làm cho quy trình thanh toán bằng thẻ tín dụng thân thiện hơn với người dùng, bạn có thể tích hợp Stripe Checkout trong PHP

Bạn có muốn nhận trợ giúp triển khai hay sửa đổi hoặc nâng cao chức năng của tập lệnh này không?

Cổng thanh toán hoạt động như thế nào trong PHP?

Cách tích hợp cổng thanh toán với cửa hàng trực tuyến của bạn bằng PHP .
Bước 1. Tạo biểu mẫu HTML để thu thập thông tin nguồn thanh toán của khách hàng. .
Bước 2. Tạo mã thông báo để truyền dữ liệu được mã hóa một cách an toàn. .
Bước 3. Cho phép gửi biểu mẫu cùng với thông tin thanh toán. .
Bước 4. Xác minh và xác thực các khoản phí

Ví dụ về cổng thanh toán là gì?

Trong các cửa hàng thực tế, cổng thanh toán bao gồm các thiết bị đầu cuối tại điểm bán hàng (POS) được sử dụng để chấp nhận thông tin thẻ tín dụng bằng thẻ hoặc bằng điện thoại thông minh. Trong các cửa hàng trực tuyến, cổng thanh toán là cổng "thanh toán" được sử dụng để nhập thông tin thẻ tín dụng hoặc thông tin đăng nhập cho các dịch vụ như PayPal

Cổng thanh toán là gì và nó hoạt động như thế nào?

Cổng thanh toán là cơ chế đọc và chuyển thông tin thanh toán từ khách hàng đến tài khoản ngân hàng của người bán . Công việc của nó là thu thập dữ liệu, đảm bảo có sẵn tiền và nhận thanh toán cho người bán. Trực tuyến, cổng thanh toán là phần mềm dựa trên đám mây kết nối khách hàng với người bán.

Có bao nhiêu loại cổng thanh toán trong PHP?

4 loại cổng thanh toán. Cổng thanh toán tự lưu trữ. Cổng thanh toán được lưu trữ trên API. Cổng tích hợp ngân hàng địa phương.