Shams.Api.WebService API Reference

FaturaHub provides API service to allow developers and third party appllications to perform some of the operations that are available in FaturaHub system.

API Endpoint
https://ws.faturahub.com
Schemes: https
Version: v1

Account

Login

POST /api/Account/Login

This function allows the user to login and returns a token that is used in other Api calls

Request Content-Types: application/json, text/json, application/xml, text/xml, application/x-www-form-urlencoded
Request Example
{
                                    "Username": "string",
                                    "Password": "string"
}
200 OK

OK

Response Content-Types: application/json, text/json, application/xml, text/xml
Response Example (200 OK)
{
                                "Token": "string",
                                "ExpirationTime": "string (date-time)",
                                "ErrorCode": "string",
                                "ErrorMessage": "string",
                                "ErrorCategory": "string",
                                "Result": "boolean"
}

GetUserServices

POST /api/Account/GetUserServices

This function retrieves the current active user services.

Request Content-Types: application/json, text/json, application/xml, text/xml, application/x-www-form-urlencoded
Request Example
{
                            "Token": "string"
}
Response Content-Types: application/json, text/json, application/xml, text/xml
Response Example (200 OK)
{
                        "UserServices": [
    {
                        "AzUserServiceId": "string",
                        "AzServiceId": "integer (int32)",
                        "Quantity": "number (double)",
                        "StartDate": "string (date-time)",
                        "EndDate": "string (date-time)",
                        "UsedQuantity": "number (double)",
                        "ServiceName": "string",
                        "ServiceDesc": "string",
                        "PaymentId": "string",
                        "ReferenceType": "string",
                        "ReferenceKey": "string"
    }
  ],
                        "ErrorCode": "string",
                        "ErrorMessage": "string",
                        "ErrorCategory": "string",
                        "Result": "boolean"
}

Invoice

SendInvoice

POST /api/Invoice/SendInvoice

This function sends the given order to the associated integrator to issue an E-Fatura or E-Archive At least OrderId or one OrderItemId should be given in the request

Request Content-Types: application/json, text/json, application/xml, text/xml, application/x-www-form-urlencoded
Request Example
{
                    "OrderId": "string",
                    "OrderItemIds": [
                    "string"
  ],
                    "InvoiceTime": "string (date-time)",
                    "VatExemptionReason": "string",
                    "VatExemptionReasonText": "string",
                    "InvoiceType": "string",
                    "InvoiceProfile": "string",
                    "ReturnInvoiceId": "string",
                    "ReturnDate": "string (date-time)",
                    "Token": "string"
}
Response Content-Types: application/json, text/json, application/xml, text/xml
Response Example (200 OK)
{
                "Uiid": "string",
                "InvoiceStatus": "integer (int32)",
                "InvoiceType": "integer (int32)",
                "InvoiceId": "string",
                "InvoiceScenario": "string",
                "InvoiceTime": "string (date-time)",
                "InvoiceExists": "boolean",
                "References": [
    {
                "Key1": "string",
                "Key2": "string",
                "Param": "object"
    }
  ],
                "ErrorCode": "string",
                "ErrorMessage": "string",
                "ErrorCategory": "string",
                "Result": "boolean"
}

Order

SetOrder

POST /api/Order/SetOrder

This function allows the user to manually create an order.

Request Content-Types: application/json, text/json, application/xml, text/xml, application/x-www-form-urlencoded
Request Example
{
                    "Order": {
                    "OrderId": "string",
                    "StoreId": "string",
                    "IntegrationOrderCode": "string",
                    "OrderDate": "string (date-time)",
                    "CustomerName": "string",
                    "InvoiceTitle": "string",
                    "CustomerEmail": "string",
                    "TaxNumber": "string",
                    "TaxAuthority": "string",
                    "Address": "string",
                    "Neighborhood": "string",
                    "District": "string",
                    "City": "string",
                    "PostalCode": "string",
                    "Telephone": "string",
                    "StoreName": "string",
                    "MarketplaceId": "integer (int32)",
                    "MarketplaceName": "string",
                    "MarketplaceShortName": "string",
                    "IntegratorProfileId": "string",
                    "IntegratorProfileName": "string",
                    "IntegratorCompanyName": "string",
                    "IntegratorCompanyId": "string",
                    "TotalAmount": "number (double)",
                    "NetTotalAmount": "number (double)",
                    "TotalTaxAmount": "number (double)",
                    "OrderItems": [
      {
                    "OrderItemId": "string",
                    "IntegrationOrderItemCode": "string",
                    "IntegrationProductCode": "string",
                    "MerchantSku": "string",
                    "OrderItemStatus": "string",
                    "OrderItemStatusDescription": "string",
                    "Quantity": "number (double)",
                    "Price": "number (double)",
                    "CurrencyId": "integer (int32)",
                    "DeliveryTitle": "string",
                    "Address": "string",
                    "Neighborhood": "string",
                    "District": "string",
                    "City": "string",
                    "PostalCode": "string",
                    "Telephone": "string",
                    "ShippingCompany": "string",
                    "ShippingTrackingCode": "string",
                    "ProductName": "string",
                    "ProductImage": "string",
                    "ProductTaxRate": "number (double)",
                    "Unread": "boolean",
                    "ProductVariantPhrase": "string",
                    "Amount": "number (double)",
                    "NetAmount": "number (double)",
                    "TaxAmount": "number (double)",
                    "NetPrice": "number (double)",
                    "OrderItemInvoiceTypeId": "integer (int32)",
                    "OrderItemInvoiceScenarioId": "integer (int32)",
                    "OrderItemInvoiceStatusId": "integer (int32)",
                    "OrderItemInvoiceUiid": "integer (int32)",
                    "OrderItemInvoiceId": "integer (int32)",
                    "OrderItemInvoiceScenario": "string",
                    "OrderItemInvoiceStatus": "string",
                    "OrderItemInvoiceType": "string",
                    "OrderItemInvoiceTime": "string (date-time)"
      }
    ],
                    "Token": "string"
  },
                    "Token": "string"
}

OK

Response Content-Types: application/json, text/json, application/xml, text/xml
Response Example (200 OK)
{
                "OrderId": "string",
                "ErrorCode": "string",
                "ErrorMessage": "string",
                "ErrorCategory": "string",
                "Result": "boolean"
}

Store

GetStores

POST /api/Store/GetStores

This function gets the list of user stores

Request Content-Types: application/json, text/json, application/xml, text/xml, application/x-www-form-urlencoded
Request Example
{
                    "Token": "string"
}

OK

Response Content-Types: application/json, text/json, application/xml, text/xml
Response Example (200 OK)
{
                "Stores": [
    {
                "StoreId": "string",
                "StoreName": "string",
                "MarketPlaceId": "integer (int32)",
                "MarketPlaceName": "string",
                "MarketPlaceShortName": "string",
                "StoreStatus": "integer (int32)",
                "ApiStatus": "integer (int32)"
    }
  ],
                "ErrorCode": "string",
                "ErrorMessage": "string",
                "ErrorCategory": "string",
                "Result": "boolean"
}

Schema Definitions

LoginRequest: object

Username: string
Password: string
Example
{
                    "Username": "string",
                    "Password": "string"
}

LoginResponse: object

Token: string
ExpirationTime: string (date-time)
ErrorCode: string
ErrorMessage: string
ErrorCategory: string
Result: boolean
Example
{
                    "Token": "string",
                    "ExpirationTime": "string (date-time)",
                    "ErrorCode": "string",
                    "ErrorMessage": "string",
                    "ErrorCategory": "string",
                    "Result": "boolean"
}

GetUserServicesRequest: object

Token: string
Example
{
                    "Token": "string"
}

GetUserServicesResponse: object

UserServices: UserService
UserService
ErrorCode: string
ErrorMessage: string
ErrorCategory: string
Result: boolean
Example
{
                    "UserServices": [
    {
                    "AzUserServiceId": "string",
                    "AzServiceId": "integer (int32)",
                    "Quantity": "number (double)",
                    "StartDate": "string (date-time)",
                    "EndDate": "string (date-time)",
                    "UsedQuantity": "number (double)",
                    "ServiceName": "string",
                    "ServiceDesc": "string",
                    "PaymentId": "string",
                    "ReferenceType": "string",
                    "ReferenceKey": "string"
    }
  ],
                    "ErrorCode": "string",
                    "ErrorMessage": "string",
                    "ErrorCategory": "string",
                    "Result": "boolean"
}

UserService: object

AzUserServiceId: string
AzServiceId: integer (int32)
Quantity: number (double)
StartDate: string (date-time)
EndDate: string (date-time)
UsedQuantity: number (double)
ServiceName: string
ServiceDesc: string
PaymentId: string
ReferenceType: string
ReferenceKey: string
Example
{
                    "AzUserServiceId": "string",
                    "AzServiceId": "integer (int32)",
                    "Quantity": "number (double)",
                    "StartDate": "string (date-time)",
                    "EndDate": "string (date-time)",
                    "UsedQuantity": "number (double)",
                    "ServiceName": "string",
                    "ServiceDesc": "string",
                    "PaymentId": "string",
                    "ReferenceType": "string",
                    "ReferenceKey": "string"
}

SendInvoiceRequest: object

OrderId: string
OrderItemIds: string[]
string
InvoiceTime: string (date-time)
VatExemptionReason: string
VatExemptionReasonText: string
InvoiceType: string
InvoiceProfile: string
ReturnInvoiceId: string
ReturnDate: string (date-time)
Token: string
Example
{
                    "OrderId": "string",
                    "OrderItemIds": [
                    "string"
  ],
                    "InvoiceTime": "string (date-time)",
                    "VatExemptionReason": "string",
                    "VatExemptionReasonText": "string",
                    "InvoiceType": "string",
                    "InvoiceProfile": "string",
                    "ReturnInvoiceId": "string",
                    "ReturnDate": "string (date-time)",
                    "Token": "string"
}

SendInvoiceResponse: object

Uiid: string
InvoiceStatus: integer (int32)
InvoiceType: integer (int32)
InvoiceId: string
InvoiceScenario: string
InvoiceTime: string (date-time)
InvoiceExists: boolean
References: InvoiceItemResultReference
InvoiceItemResultReference
ErrorCode: string
ErrorMessage: string
ErrorCategory: string
Result: boolean
Example
{
                    "Uiid": "string",
                    "InvoiceStatus": "integer (int32)",
                    "InvoiceType": "integer (int32)",
                    "InvoiceId": "string",
                    "InvoiceScenario": "string",
                    "InvoiceTime": "string (date-time)",
                    "InvoiceExists": "boolean",
                    "References": [
    {
                    "Key1": "string",
                    "Key2": "string",
                    "Param": "object"
    }
  ],
                    "ErrorCode": "string",
                    "ErrorMessage": "string",
                    "ErrorCategory": "string",
                    "Result": "boolean"
}

InvoiceItemResultReference: object

Key1: string
Key2: string
Param: object
Example
{
                    "Key1": "string",
                    "Key2": "string",
                    "Param": "object"
}

SetOrderRequest: object

Order: Order
Token: string
Example
{
                    "Order": {
                    "OrderId": "string",
                    "StoreId": "string",
                    "IntegrationOrderCode": "string",
                    "OrderDate": "string (date-time)",
                    "CustomerName": "string",
                    "InvoiceTitle": "string",
                    "CustomerEmail": "string",
                    "TaxNumber": "string",
                    "TaxAuthority": "string",
                    "Address": "string",
                    "Neighborhood": "string",
                    "District": "string",
                    "City": "string",
                    "PostalCode": "string",
                    "Telephone": "string",
                    "StoreName": "string",
                    "MarketplaceId": "integer (int32)",
                    "MarketplaceName": "string",
                    "MarketplaceShortName": "string",
                    "IntegratorProfileId": "string",
                    "IntegratorProfileName": "string",
                    "IntegratorCompanyName": "string",
                    "IntegratorCompanyId": "string",
                    "TotalAmount": "number (double)",
                    "NetTotalAmount": "number (double)",
                    "TotalTaxAmount": "number (double)",
                    "OrderItems": [
      {
                    "OrderItemId": "string",
                    "IntegrationOrderItemCode": "string",
                    "IntegrationProductCode": "string",
                    "MerchantSku": "string",
                    "OrderItemStatus": "string",
                    "OrderItemStatusDescription": "string",
                    "Quantity": "number (double)",
                    "Price": "number (double)",
                    "CurrencyId": "integer (int32)",
                    "DeliveryTitle": "string",
                    "Address": "string",
                    "Neighborhood": "string",
                    "District": "string",
                    "City": "string",
                    "PostalCode": "string",
                    "Telephone": "string",
                    "ShippingCompany": "string",
                    "ShippingTrackingCode": "string",
                    "ProductName": "string",
                    "ProductImage": "string",
                    "ProductTaxRate": "number (double)",
                    "Unread": "boolean",
                    "ProductVariantPhrase": "string",
                    "Amount": "number (double)",
                    "NetAmount": "number (double)",
                    "TaxAmount": "number (double)",
                    "NetPrice": "number (double)",
                    "OrderItemInvoiceTypeId": "integer (int32)",
                    "OrderItemInvoiceScenarioId": "integer (int32)",
                    "OrderItemInvoiceStatusId": "integer (int32)",
                    "OrderItemInvoiceUiid": "integer (int32)",
                    "OrderItemInvoiceId": "integer (int32)",
                    "OrderItemInvoiceScenario": "string",
                    "OrderItemInvoiceStatus": "string",
                    "OrderItemInvoiceType": "string",
                    "OrderItemInvoiceTime": "string (date-time)"
      }
    ],
                    "Token": "string"
  },
                    "Token": "string"
}

Order: object

OrderId: string
StoreId: string
IntegrationOrderCode: string
OrderDate: string (date-time)
CustomerName: string
InvoiceTitle: string
CustomerEmail: string
TaxNumber: string
TaxAuthority: string
Address: string
Neighborhood: string
District: string
City: string
PostalCode: string
Telephone: string
StoreName: string
MarketplaceId: integer (int32)
MarketplaceName: string
MarketplaceShortName: string
IntegratorProfileId: string
IntegratorProfileName: string
IntegratorCompanyName: string
IntegratorCompanyId: string
TotalAmount: number (double)
NetTotalAmount: number (double)
TotalTaxAmount: number (double)
OrderItems: OrderItem
OrderItem
Token: string
Example
{
                    "OrderId": "string",
                    "StoreId": "string",
                    "IntegrationOrderCode": "string",
                    "OrderDate": "string (date-time)",
                    "CustomerName": "string",
                    "InvoiceTitle": "string",
                    "CustomerEmail": "string",
                    "TaxNumber": "string",
                    "TaxAuthority": "string",
                    "Address": "string",
                    "Neighborhood": "string",
                    "District": "string",
                    "City": "string",
                    "PostalCode": "string",
                    "Telephone": "string",
                    "StoreName": "string",
                    "MarketplaceId": "integer (int32)",
                    "MarketplaceName": "string",
                    "MarketplaceShortName": "string",
                    "IntegratorProfileId": "string",
                    "IntegratorProfileName": "string",
                    "IntegratorCompanyName": "string",
                    "IntegratorCompanyId": "string",
                    "TotalAmount": "number (double)",
                    "NetTotalAmount": "number (double)",
                    "TotalTaxAmount": "number (double)",
                    "OrderItems": [
    {
                    "OrderItemId": "string",
                    "IntegrationOrderItemCode": "string",
                    "IntegrationProductCode": "string",
                    "MerchantSku": "string",
                    "OrderItemStatus": "string",
                    "OrderItemStatusDescription": "string",
                    "Quantity": "number (double)",
                    "Price": "number (double)",
                    "CurrencyId": "integer (int32)",
                    "DeliveryTitle": "string",
                    "Address": "string",
                    "Neighborhood": "string",
                    "District": "string",
                    "City": "string",
                    "PostalCode": "string",
                    "Telephone": "string",
                    "ShippingCompany": "string",
                    "ShippingTrackingCode": "string",
                    "ProductName": "string",
                    "ProductImage": "string",
                    "ProductTaxRate": "number (double)",
                    "Unread": "boolean",
                    "ProductVariantPhrase": "string",
                    "Amount": "number (double)",
                    "NetAmount": "number (double)",
                    "TaxAmount": "number (double)",
                    "NetPrice": "number (double)",
                    "OrderItemInvoiceTypeId": "integer (int32)",
                    "OrderItemInvoiceScenarioId": "integer (int32)",
                    "OrderItemInvoiceStatusId": "integer (int32)",
                    "OrderItemInvoiceUiid": "integer (int32)",
                    "OrderItemInvoiceId": "integer (int32)",
                    "OrderItemInvoiceScenario": "string",
                    "OrderItemInvoiceStatus": "string",
                    "OrderItemInvoiceType": "string",
                    "OrderItemInvoiceTime": "string (date-time)"
    }
  ],
                    "Token": "string"
}

OrderItem: object

OrderItemId: string
IntegrationOrderItemCode: string
IntegrationProductCode: string
MerchantSku: string
OrderItemStatus: string
OrderItemStatusDescription: string
Quantity: number (double)
Price: number (double)
CurrencyId: integer (int32)
DeliveryTitle: string
Address: string
Neighborhood: string
District: string
City: string
PostalCode: string
Telephone: string
ShippingCompany: string
ShippingTrackingCode: string
ProductName: string
ProductImage: string
ProductTaxRate: number (double)
Unread: boolean
ProductVariantPhrase: string
Amount: number (double)
NetAmount: number (double)
TaxAmount: number (double)
NetPrice: number (double)
OrderItemInvoiceTypeId: integer (int32)
OrderItemInvoiceScenarioId: integer (int32)
OrderItemInvoiceStatusId: integer (int32)
OrderItemInvoiceUiid: integer (int32)
OrderItemInvoiceId: integer (int32)
OrderItemInvoiceScenario: string
OrderItemInvoiceStatus: string
OrderItemInvoiceType: string
OrderItemInvoiceTime: string (date-time)
Example
{
                    "OrderItemId": "string",
                    "IntegrationOrderItemCode": "string",
                    "IntegrationProductCode": "string",
                    "MerchantSku": "string",
                    "OrderItemStatus": "string",
                    "OrderItemStatusDescription": "string",
                    "Quantity": "number (double)",
                    "Price": "number (double)",
                    "CurrencyId": "integer (int32)",
                    "DeliveryTitle": "string",
                    "Address": "string",
                    "Neighborhood": "string",
                    "District": "string",
                    "City": "string",
                    "PostalCode": "string",
                    "Telephone": "string",
                    "ShippingCompany": "string",
                    "ShippingTrackingCode": "string",
                    "ProductName": "string",
                    "ProductImage": "string",
                    "ProductTaxRate": "number (double)",
                    "Unread": "boolean",
                    "ProductVariantPhrase": "string",
                    "Amount": "number (double)",
                    "NetAmount": "number (double)",
                    "TaxAmount": "number (double)",
                    "NetPrice": "number (double)",
                    "OrderItemInvoiceTypeId": "integer (int32)",
                    "OrderItemInvoiceScenarioId": "integer (int32)",
                    "OrderItemInvoiceStatusId": "integer (int32)",
                    "OrderItemInvoiceUiid": "integer (int32)",
                    "OrderItemInvoiceId": "integer (int32)",
                    "OrderItemInvoiceScenario": "string",
                    "OrderItemInvoiceStatus": "string",
                    "OrderItemInvoiceType": "string",
                    "OrderItemInvoiceTime": "string (date-time)"
}

SetOrderResponse: object

OrderId: string
ErrorCode: string
ErrorMessage: string
ErrorCategory: string
Result: boolean
Example
{
                    "OrderId": "string",
                    "ErrorCode": "string",
                    "ErrorMessage": "string",
                    "ErrorCategory": "string",
                    "Result": "boolean"
}

GetStoresRequest: object

Token: string
Example
{
                    "Token": "string"
}

GetStoresResponse: object

Stores: Store
Store
ErrorCode: string
ErrorMessage: string
ErrorCategory: string
Result: boolean
Example
{
                    "Stores": [
    {
                    "StoreId": "string",
                    "StoreName": "string",
                    "MarketPlaceId": "integer (int32)",
                    "MarketPlaceName": "string",
                    "MarketPlaceShortName": "string",
                    "StoreStatus": "integer (int32)",
                    "ApiStatus": "integer (int32)"
    }
  ],
                    "ErrorCode": "string",
                    "ErrorMessage": "string",
                    "ErrorCategory": "string",
                    "Result": "boolean"
}

Store: object

StoreId: string
StoreName: string
MarketPlaceId: integer (int32)
MarketPlaceName: string
MarketPlaceShortName: string
StoreStatus: integer (int32)
ApiStatus: integer (int32)
Example
{
                    "StoreId": "string",
                    "StoreName": "string",
                    "MarketPlaceId": "integer (int32)",
                    "MarketPlaceName": "string",
                    "MarketPlaceShortName": "string",
                    "StoreStatus": "integer (int32)",
                    "ApiStatus": "integer (int32)"
}