xyo-sdk 1.1.3

XYO Financial Official SDK for Rust
Documentation
# XYO Financial SDK for Rust
![workflow](https://github.com/syniol/xyo-sdk-rust/actions/workflows/makefile.yml/badge.svg)    ![workflow](https://github.com/syniol/xyo-sdk-rust/actions/workflows/crates_xyo_http_publish.yml/badge.svg)    ![workflow](https://github.com/syniol/xyo-sdk-rust/actions/workflows/crates_publish.yml/badge.svg)

<p align="center">
    <a href="https://xyo.financial" target="blank"><img alt="Rust Crab Mascot" width="50%" src="https://github.com/syniol/xyo-sdk-rust/blob/main/docs/mascot.png?raw=true" /></a>
    <sup><br />Official Rust Mascot (Crab) for XYO.Financial Generated by Adobe AI and Imagined by Syniol Limited</sup>
</p>

This SDK is official XYO.Financial and maintained by [Syniol Limited](https://syniol.com) for Rust Language. It can 
be utilised for Trial and Premium accounts, given that a valid API key is available to connect to and access the 
Enrichment services.


## Quickstart Guide
First you need to install the XYO SDK for Rust Foundation ecosystem via [Crates](https://crates.io/crates/xyo-sdk) package management.

```shell
cargo add xyo-sdk
```

Client is an entry point to use the SDK. You need a valid API Key obtainable from https://xyo.financial/dashboard

```rust
use xyo_sdk::client::{new, ClientConfig};

fn main() {
    let client = new(ClientConfig {
        api_key: "your-api-key-from:xyo.Financial"
    });
}
```

__Enrich a Single Payment Transaction__:
```rust
use xyo_sdk::enrichment::EnrichmentRequest;

fn main() {
    let result = client.enrich_transaction(&EnrichmentRequest{
        content: String::from("Syniol Tech"),
        country_code: String::from("GB"),
    });

    println!("Merchant Name: {}", result.merchant);
    println!("Merchant Description: {}", result.description);
    println!("Merchant Categories: {}", result.categories);
    println!("Merchant Logo in embedded base64 encoded: {}", result.logo);
    println!("Merchant Location (Optional field): {}", result.location);
    println!("Merchant Address (Optional field): {}", result.address);
}
```

__Enrich Payment Transaction Collection _(Bulk Enrichment)___:
```rust
use xyo_sdk::enrichment::EnrichmentRequest;

fn main() {
    let result = client.enrich_transaction_collection(vec![
        &EnrichmentRequest {
            content: String::from("Syniol AI Payment Enrichment Software"),
            country_code: String::from("GB"),
        },
        &EnrichmentRequest {
            content: String::from("Costa PICKUP"),
            country_code: String::from("GB"),
        },
    ]);

    println!("Work Id: {}", result.id);
    println!("Downloadable Link: {}", result.link);
}
```

__Payment Transaction Collection Status__:
```rust
use xyo_sdk::enrichment::EnrichmentRequest;

fn main() {
    let result = client.enrich_transaction_collection_status(enrich_transaction_collection.id);

    println!("Status: {}", result);
}
```


#### Credits
Copyright &copy; 2025 Syniol Limited. All rights reserved.