2 releases
0.1.1 | Jan 1, 2023 |
---|---|
0.1.0 | Jan 1, 2023 |
#786 in Encoding
31 downloads per month
44KB
697 lines
Shurjopay Rust Crate (plugin)
Official shurjoPay Rust Crate (plugin) for merchants or service providers to connect with shurjoPay Payment Gateway v2.1 developed and maintained by ShurjoMukhi Limited.
This plugin package can be used with any rust application or framework (e.g. yew, rocket etc). It makes it easy for developers to integrate with shurjoPay v2.1 with just three API calls:
- makePayment: create and send payment request
- verifyPayment: verify payment status at shurjoPay
- paymentStatus: Check payment details and status
Also it reduces many of the things that you had to do manually
- Handles http request and request errors
- JSON serialization and deserialization
- Authentication during checkout and verification of payments
Audience
This document is intended for the developers and technical personnel of merchants and service providers who want to integrate the shurjoPay online payment gateway using python.
How to use this shurjoPay Plugin
To integrate the shurjoPay Payment Gateway in your Rust project do the following tasks sequentially.
Step 1: Cargo.toml file Configuration
[dependencies]
shurjopay-plugin = "0.1.1"
Step 2: Import Crate into your project
use shurjopay_plugin::Shurjopay::ShurjopayPlugin;
Step 3: Create a new instance of ShurjopayPlugin
let mut sp_instance = ShurjopayPlugin::new();
Step 4: Setting configuration of ShurjopayPlugin
you can configure ShurjopayPlugin two ways
- Option 1: configure plugin using .env file
sp_instance.set_config_from_env_file();
in this way you need to configure .env file in this way.
keep the .toml and .env file in the same directiory
# .env
SP_USERNAME="sp_sandbox"
SP_PASSWORD="pyyk97hu&6u6"
POST_DEFAULT_ADDRESS="https://sandbox.shurjopayment.com"
DEFAULT_RETURN_URL="https://sandbox.shurjopayment.com/response"
DEFAULT_CANCEL_URL="https://sandbox.shurjopayment.com/response"
- Option 2: Configure plugin using this function
sp_instance.set_all_config(
"sp_sandbox".to_string(), // SP_USERNAME
"pyyk97hu&6u6".to_string(), // SP_PASSWORD
"https://sandbox.shurjopayment.com".to_string(), // POST_DEFAULT_ADDRESS
"https://sandbox.shurjopayment.com/response".to_string(), // DEFAULT_RETURN_URL
"https://sandbox.shurjopayment.com/response".to_string(), // DEFAULT_CANCEL_URL
);
Step 5: To intiate make payment fisrt you need configure payment request object using the following function and pass the object into make_payment_no_auto_redirect() function
let payment_req_obj = sp_instance.make_payment_request_object(
"786".to_string(), // amount
"abc123".to_string(), // order_id
"BDT".to_string(), // currency
"Mahmudul Islam".to_string(), // customer_name
"Dhaka".to_string(), // customer_address
"01800000000".to_string(), // customer_phone
"Dhaka".to_string(), // customer_city
"1203".to_string(), // customer_post_code
);
let checkout_url = sp_instance.make_payment(payment_req_obj);
References
- shurjoPay Rust Crate (plugin) API documentation plugin API documentation
- Rust example application showing usage of the Rust crate.
- Sample applications and projects in many different languages and frameworks showing shurjopay integration.
- shurjoPay Postman site illustrating the request and response flow using the sandbox system.
- shurjopay Plugins home page on github
License
This code is under the MIT open source License.
Please contact with shurjoPay team for more detail.
Copyright ©️2022 ShurjoMukhi Limited
Dependencies
~7–19MB
~282K SLoC