image

ShurjoPay

Test Status Crate Book API API Minimum rustc version

Shurjopaypayment gateway Rust Crate

It handles many of the things that most people need to do manually

Shurjopay Rust integration steps

📝 NOTE For shurjoPay live engine integration's all necessary credential will be given to merchant after subscription completed on shurjoPay gateway.

Usage

Add this to your Cargo.toml:

toml [dependencies] sp-plugin-rust-test = "0.1.0"

Shurjopay-Rust-Plugin

To integrate the shurjoPay Payment Gateway in your Rust project do the following tasks sequentially.

step:1 Cargo.toml file Configuration

toml [dependencies] sp-plugin-rust-test = "0.1.0" open = "3.0.3"

step:2 Import Crate into your project

use sp_plugin_rust_test::Shurjopay::ShurjopayPlugin; use open; use std::io;

step:3 creating a new instance of Shurjopayplugin

let mut sp_instance = ShurjopayPlugin::new();

Configure Shurjopay

step:4 setting configuration of Shurjopayplugin

you can configure ShurjopayPlugin two ways

* keep the .toml and .evn file in the same directiory *

// .env POST_DEFAULT_ADDRESS="https://sandbox.shurjopayment.com" TOKEN_END_POINT="/api/get_token" SECURE_PAYMENT_END_POINT="/api/secret-pay" VERIFICATION_END_POINT="/api/verification" PAYMENT_STATUS_END_POINT="/api/payment-status" SP_USER="sp_sandbox" SP_PASS="pyyk97hu&6u6" DEFAULT_RETURN_URL="https://www.sandbox.shurjopayment.com/response" DEFAULT_CANCEL_URL="https://www.sandbox.shurjopayment.com/response" DEFAULT_CLIENT_IP="192.168.0.99"

Make Payment

step:5 To intiate make payment fisrt you need configure payment request object using the following function and pass the object into MakePayment() function

let payment_req_obj = sp_instance.make_payment_request_object( "786".to_string(), "abc123".to_string(), "BDT".to_string(), "Mahmudul Islam".to_string(), "Dhaka".to_string(), "01811177722".to_string(), "Dhaka".to_string(), "1203".to_string(), );

if let Some(checkout_url) = sp_instance.MakePayment(payment_req_obj) { // opeing the returned checkout url in the default browser match open::that(checkout_url.clone()) { Ok(()) => { }, Err(err) => eprintln!("An error occurred when opening '{}': {}", checkout_url, err), }

Verify Payment

step:6 to verify payment you need use this function

let response = sp_instance.verifyPayment(Some("sp63935da67dfd3".to_string())); println!("verify Payment Response: {:?}",response); if response.is_some() { println!("{:#?}", response.unwrap().clone().sp_message.unwrap()); }

License

Licensed under:

Who do I talk to?

For any technical assistance please contact to: https://shurjopay.com.bd/#contacts