mollie

Crates.iomollie
lib.rsmollie
version0.1.1
created_at2025-10-14 07:24:10.677329+00
updated_at2025-12-03 10:07:47.769691+00
descriptionMollie API client for Rust
homepage
repositoryhttps://github.com/brainpodnl/mollie-api-rust
max_upload_size
id1881801
size5,769,358
Rick van Assen (Rick-VA)

documentation

https://docs.rs/mollie

README

Introduction

Mollie API client generated with progenitor using Mollie openapi spec

Usage

Create a Client

use mollie::Client;
use reqwest::header::{HeaderMap, HeaderValue, AUTHORIZATION};

fn create_client() -> Result<Client, Box<dyn std::error::Error>> {
    let api_key = "your_api_key";
    let mut headers = HeaderMap::new();
    headers.insert(
        AUTHORIZATION,
        HeaderValue::from_str(&format!("Bearer {}", api_key))?,
    );

    let http_client = reqwest::Client::builder()
        .default_headers(headers)
        .build()?;

    Ok(Client::new_with_client(
        "https://api.mollie.com/v2",
        http_client,
    ))
}

Create a Payment

use mollie::types::{Amount, PaymentRequest};

#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
    let client = create_client()?;

    // Create a payment request
    let payment_request = PaymentRequest {
        amount: Some(Amount {
            currency: "EUR".to_string(),
            value: "10.00".to_string(),
        }),
        description: Some("Order #12345".parse()?),
        redirect_url: Some("https://example.com/return".to_string()),
        webhook_url: Some("https://example.com/webhook".to_string()),
        ..Default::default()
    };

    let response = client
        .create_payment(None, None, &payment_request)
        .await?;

    let payment = response.into_inner();
    println!("Payment created: {:?}", payment);

    Ok(())
}
Commit count: 0

cargo fmt