| name | rs-waybill |
| description | Integrate with the Georgian Revenue Service (RS.GE) Electronic Waybill SOAP web service. Use this skill when working with waybill creation, activation, closing, querying, goods management, transporter operations, invoices, templates, bar codes, car numbers, and all RS.GE WayBillService API methods. |
RS.GE Electronic Waybill Service Integration
Service Overview
This skill provides integration with the Georgian Revenue Service (RS.GE) Electronic Waybill (แแแแฅแขแ แแแฃแแ แแแแแแแแแ) SOAP Web Service.
- WSDL/Endpoint:
https://services.rs.ge/WayBillService/WayBillService.asmx
- Protocol: SOAP XML Web Service
- Authentication: Service user credentials (
su, sp) passed with every method call
Test Credentials
| Parameter | Account 1 | Account 2 |
|---|
| Username (su) | tbilisi | satesto2 |
| Password (sp) | 123456 | 123456 |
| TIN (tax ID) | 206322102 | 12345678910 |
Waybill Types
| ID | Type |
|---|
| 1 | Internal transfer (แจแแแ แแแแแแแแแ) |
| 2 | Delivery with transportation (แแแฌแแแแแ แขแ แแแกแแแ แขแแ แแแแ) |
| 3 | Delivery without transportation (แแแฌแแแแแ แขแ แแแกแแแ แขแแ แแแแก แแแ แแจแ) |
| 4 | Distribution - main waybill with sub-waybills (แแแกแขแ แแแฃแชแแ) |
| 5 | Goods return (แกแแฅแแแแแก แฃแแแ แแแแ แฃแแแแ) |
| 6 | Sub-waybill (แฅแแ-แแแแแแแแแ) |
CRITICAL: Type-Specific Field Requirements
Type 1 - Internal Transfer (แจแแแ แแแแแแแแแ)
BUYER_TIN must be empty
- Driver info required for transport types
Type 2 - Delivery (แแแฌแแแแแ)
START_ADDRESS: Required
END_ADDRESS: Required
DRIVER_TIN: Required (11 digits, or set CHEK_DRIVER_TIN=0 for foreigner)
DRIVER_NAME: Required
CAR_NUMBER: Required (format: AA123BB, no dashes!)
TRANS_ID: 1 (automobile) or other valid transport type
Type 3 - Without Transport (แขแ แแแกแแแ แขแแ แแแแก แแแ แแจแ) โ ๏ธ
CRITICAL: These fields MUST be EMPTY - otherwise RS.ge returns misleading errors!
START_ADDRESS: "" (empty!)
END_ADDRESS: "" (empty!)
DRIVER_TIN: ""
DRIVER_NAME: ""
CAR_NUMBER: ""
TRANS_ID: 0
WARNING: If addresses are provided for Type 3, RS.ge returns error -1036 "Invalid unit" which is completely misleading! The actual problem is the non-empty addresses.
Type 6 - Sub-waybill (แฅแแ-แแแแแแแแแ)
PAR_ID: Required - must specify parent waybill ID
Valid Unit IDs
| ID | Name | Note |
|---|
| 1 | แชแแแ (Piece) | |
| 2 | แแ (Kilogram) | |
| 3 | แแ แแแ (Gram) | |
| 4 | แแแขแ แ (Liter) | |
| 5 | แขแแแ (Ton) | |
| 7 | แกแแแขแแแแขแ แ | |
| 8 | แแแขแ แ (Meter) | |
| 9 | แแแแแแแขแ แ | |
| 10 | แแ.แกแ | |
| 11 | แแ.แ (Sq Meter) | |
| 12 | แยณ (Cubic Meter) | |
| 13 | แแแแแแแขแ แ | |
| 14 | แจแแแแ แ (Package) | |
| 99 | แกแฎแแ (Other) | Requires UNIT_TXT |
Note: Unit ID 6 does NOT exist!
Valid Transport Type IDs
| ID | Name |
|---|
| 1 | แกแแแแขแแแแแแแ (Automobile) |
| 2 | แกแแ แแแแแแแ (Railway) |
| 3 | แกแแแแแแชแแ (Aviation) |
| 4 | แกแฎแแ (Other) - requires TRANS_TXT |
| 6 | แกแแแแขแแแแแแแ - แฃแชแฎแ แฅแแแงแแแก (Foreign) |
| 7 | แแแแแแแแแแแ (Carrier) |
| 8 | แแแแแแ/แแแขแแชแแแแ |
Car Number Format
Georgian plates must be in format AA123BB (no dashes). Examples:
- Correct:
AA123BB, TT999ZZ
- Wrong:
AA-123-BB, aa123bb
Common Error Codes and Solutions
| Code | Meaning | Solution |
|---|
| -1005 | Buyer TIN not found | Check TIN or set CHEK_BUYER_TIN=0 |
| -1012 | Driver info required | Add driver_tin, driver_name |
| -1014 | Invalid driver TIN | Check TIN or set CHEK_DRIVER_TIN=0 |
| -1026 | Invalid car number | Use format AA123BB (no dashes) |
| -1035 | Buyer TIN must be empty | For Type 1, clear buyer_tin |
| -1036 | Invalid unit | Often misleading! For Type 3, check that addresses are EMPTY |
| -1037 | TRANS_TXT required | Set trans_txt when trans_id=4 |
| -2006 | Invalid goods status | Set goods STATUS=1 (not 0) |
Waybill Statuses
| Code | Status |
|---|
| 0 | Saved (แจแแแแฎแฃแแ) |
| 1 | Activated (แแฅแขแแฃแ แ) |
| 2 | Completed/Closed (แแแกแ แฃแแแแฃแแ) |
| 8 | Sent to transporter (แแแแแแแแแแแแแ แแแแแแแแแแแแ) |
| -1 | Deleted (แฌแแจแแแแ) |
| -2 | Cancelled (แแแฃแฅแแแแฃแแ) |
Workflow
- Create/Save waybill with
save_waybill (status=0)
- Activate with
send_waybill or send_waybill_vd (status=1, gets unique number)
- Close/Complete with
close_waybill or close_waybill_vd (status=2)
- Optionally cancel with
ref_waybill or delete with del_waybill
- Optionally create invoice with
save_invoice
For transporter flow: seller sends to transporter -> transporter fills fields with save_waybill_transporter -> activates with send_waybill_transporter -> closes with close_waybill_transporter.
Implementation Guidelines
When implementing RS Waybill integration:
- All methods require
su and sp (service username and password) as the first two parameters.
- XML format: The service uses XML nodes for complex data structures (waybills, goods lists, wood documents).
- Date format: Use ISO format
yyyy-MM-ddTHH:mm:ss (e.g., 2024-10-07T12:08:47).
- Status filter format: Comma-delimited with leading/trailing commas for single status:
,1, for one status, ,1,2, for multiple.
- Error handling: Check
STATUS in response XML. Negative values indicate errors. Use get_error_codes to get error descriptions.
- CATEGORY field: Empty or
0 = normal, 1 = wood/timber.
- IS_MED field: Empty or
0 = normal, 1 = medication.
- CHEK_BUYER_TIN / CHEK_DRIVER_TIN:
0 = foreigner, 1 = Georgian citizen.
- TRAN_COST_PAYER:
1 = buyer pays, 2 = seller pays.
- VAT_TYPE:
0 = normal, 1 = zero-rated, 2 = non-taxable.
For full API method signatures and XML structures, see the reference document: references/api-methods.md