با هر پایگاه دادهای؛ بدون تغییر در نرمافزار شما
اتصال ERP و نرمافزار اختصاصی به آسا از طریق پایگاه داده
یک ایجنت روی سیستم شما نصب میشود، دادههای فروش را از پایگاه داده نرمافزارتان میخواند و امن برای آسا میفرستد. نوع پایگاه داده محدودیتی ندارد و ایجنت میتواند در محیط ایزوله و با دسترسی محدود کار کند.
- دانش فنی لازم
- مدیر پایگاه داده یا تیم فنی
- حجم مناسب صورتحساب
- متوسط تا بسیار زیاد
- راهاندازی
- یکبار نگاشت داده؛ با تیم شما یا تیم فنی آسا
- میزان خودکاربودن
- دستی، گروهی یا کاملاً خودکار
روش «پایگاه داده اختصاصی» چیست و برای چه کسی مناسب است؟
اگر نرمافزار فروش، ERP یا سامانه اختصاصی دارید، لازم نیست آن را تغییر دهید یا وبسرویس بنویسید. ایجنت آسا (برنامه ASA TSP Sync) روی سیستم شما نصب میشود، دادههای صورتحساب را از پایگاه داده میخواند و از یک کانال رمزنگاریشده برای آسا میفرستد. کنترل، ثبت و ارسال به سامانه مؤدیان از پنل آسا انجام میشود.
ایجنت میتواند در محیط کاملاً ایزوله کار کند: هیچ پورت ورودی باز نمیکند، فقط خودش به سرور آسا وصل میشود و با حسابی محدود کار میکند که تنها دادههای صورتحساب را میبیند. رمز پایگاه داده روی سیستم خودتان میماند و برای آسا فرستاده نمیشود.
نوع پایگاه داده محدودیتی ایجاد نمیکند. روی SQL Server، ایجنت مستقیم از پایگاه داده نرمافزار میخواند. برای پایگاههای داده دیگر، مثل Access، MySQL، PostgreSQL یا Oracle، تیم فنی آسا راه اتصال را متناسب با سیستم شما پیاده میکند؛ برای نمونه با یک پایگاه داده واسط که دادههای فروش به آن منتقل میشود.
تنها کاری که یکبار باید انجام شود «نگاشت» است: دادههای فروش شما در قالب یک View استاندارد در اختیار ایجنت قرار میگیرد. نام و ساختار جدولهای شما آزاد است و راهنمای این View بهصورت عمومی منتشر شده است.
نتیجه هر صورتحساب، شامل شماره مالیاتی و وضعیت ارسال، در جدول گزارش کنار همان View نوشته و بهروز نگه داشته میشود تا اگر خواستید در نرمافزار خودتان هم نمایش دهید.
مناسب است اگر…
- نرمافزار فروش، ERP یا سامانه اختصاصی با پایگاه داده خودتان دارید؛ SQL Server یا هر پایگاه داده دیگر.
- نمیخواهید کد نرمافزار را تغییر دهید یا وبسرویس تازه بنویسید و منتشر کنید.
- سیاست امنیتی شما اجازه باز کردن پورت یا دسترسی گسترده به پایگاه داده را نمیدهد.
- میخواهید از امکانات پنل (بازبینی، ثبت گروهی و حالت خودکار) استفاده کنید.
روش دیگری انتخاب کنید اگر…
- نرمافزارتان ابری است یا رایانه ویندوزی برای نصب ایجنت ندارید: وبسرویس (API)
- از سپیدار، هلو، تدبیر یا سیبا استفاده میکنید و اتصال آماده دارید: اتصال نرمافزار حسابداری
صورتحساب در این روش چه مسیری را طی میکند؟
- پایگاه داده نرمافزار شمابا هر نوع و هر ساختاری
- ایجنت آسا روی سیستم شماخواندن داده صورتحساب با دسترسی محدود
- پنل آسادریافت امن، کنترل و ثبت
- سامانه مؤدیانارسال و بازگشت نتیجه به سیستم شما
مراحل راهاندازی و استفاده
هماهنگی اولیه
نوع نرمافزار و پایگاه داده خود را به پشتیبانی آسا اعلام کنید. روی SQL Server، تیم فنی شما میتواند کار را با راهنمای عمومی آسا انجام دهد؛ برای سایر پایگاههای داده، تیم فنی آسا اتصال را پیاده میکند.
آمادهسازی View صورتحساب
دادههای فروش به ستونهای استاندارد آسا نگاشت میشود. هر ردیف View یک قلم از صورتحساب است و ستونهایی که کاربرد ندارند خالی میمانند.
ساخت حساب محدود
برای ایجنت یک حساب جدا در پایگاه داده بسازید که فقط همان View را بخواند و در جدولهای گزارش بنویسد. نمونه مجوزها در راهنمای فنی آمده است.
نصب ایجنت و اتصال به پنل
ASA TSP Sync را روی سیستمی که به پایگاه داده دسترسی دارد نصب کنید و با کد یکبارمصرفی که از پنل میگیرید به کسبوکار خود وصل کنید.
آزمایش
در پنل، «صورتحسابهای حسابداری» را بازخوانی کنید و چند صورتحساب را با داده واقعی مقایسه کنید. بررسی ساختار View هم از همان پنل انجام میشود.
راهاندازی
صورتحسابها را تکی یا گروهی ثبت کنید و پس از اطمینان، در صورت تمایل حالت خودکار را روشن کنید.
مزایا و معایب روش «پایگاه داده اختصاصی»
مزایا
- با هر پایگاه دادهایSQL Server مستقیم وصل میشود و برای سایر پایگاههای داده، تیم فنی آسا اتصال را پیاده میکند.
- امن و قابل استفاده در محیط ایزولهایجنت فقط ارتباط خروجی رمزنگاریشده دارد، پورتی باز نمیکند و با حساب محدود کار میکند.
- بدون تغییر در نرمافزار شماکد نرمافزار دست نمیخورد و وبسرویسی لازم نیست؛ دادههای موجود فقط خوانده میشود.
- ساختار جدولهای شما آزاد استفقط ستونهای خروجی View باید استاندارد باشد، نه مدل داده داخلی شما.
- راهنمای فنی عمومیمشخصات ستونها، قواعد، نمونه View و مجوزهای لازم در راهنمای عمومی آسا آمده است.
- پوشش همه الگوهای صورتحسابفروش، ارز، طلا، پیمانکاری، قبض، پرواز، صادرات، بارنامه، نفتی، بورس، بیمه و فروش زنجیرهای با همان View پشتیبانی میشود.
- بازگشت نتیجه به سیستم شماوضعیت و شماره مالیاتی در جدول گزارش نوشته میشود و میتوانید آن را به نرمافزار خودتان منتقل کنید.
معایب و محدودیتها
- غیر از SQL Server، اتصال اختصاصی استاتصال مستقیم و آماده برای SQL Server است؛ برای سایر پایگاههای داده، طراحی و پیادهسازی با تیم فنی آسا انجام میشود و زمان بیشتری میبرد.
- نگاشت داده به شناخت نرمافزار نیاز داردکسی که ساختار دادههای فروش شما را میشناسد باید در نگاشت همکاری کند: تیم فنی شما یا شرکت پشتیبان نرمافزار.
- نیاز به نگهداری Viewاگر ساختار نرمافزار شما عوض شود، View هم باید بهروز شود.
- خطای نگاشت یعنی خطای صورتحساباگر ستونی اشتباه نگاشت شود، صورتحساب با داده نادرست یا خطا نمایش داده میشود؛ آزمایش پیش از راهاندازی ضروری است.
- ایجنت روی ویندوز نصب میشودایجنت به یک رایانه ویندوزیِ همیشهروشن نیاز دارد که به پایگاه داده دسترسی داشته باشد.
امنیت روش «پایگاه داده اختصاصی»
فقط ارتباط خروجی
ایجنت هیچ پورت ورودی باز نمیکند و از بیرون قابل دسترسی نیست؛ فقط خودش با HTTPS به سرور آسا وصل میشود.
کار در محیط ایزوله
کافی است سیستم فقط به سرور آسا (api.mega-pay.ir) دسترسی خروجی داشته باشد؛ بقیه شبکه میتواند بسته بماند. بهروزرسانی خودکار ایجنت به مرکز دانلود آسا (download.mega-pay.ir) هم نیاز دارد.
دسترسی حداقلی به پایگاه داده
حساب ایجنت فقط View صورتحساب را میخواند و در جدولهای گزارش خودش مینویسد؛ نه مالک پایگاه داده است و نه به جدولهای دیگر دسترسی دارد.
فقط داده صورتحساب خوانده میشود
ایجنت تنها ردیفهای همان View را برای آسا میفرستد؛ آنچه در View نگذاشتهاید دیده نمیشود.
رمز پایگاه داده نزد شما میماند
رمز فقط روی سیستم خودتان و رمزنگاریشده ذخیره میشود و هرگز برای آسا فرستاده نمیشود.
اتصال قابل کنترل
ایجنت با کد یکبارمصرف به کسبوکار وصل میشود، نصاب آن امضای دیجیتال دارد و هر زمان بخواهید دسترسیاش را از پنل قطع میکنید.
آسا شرکت معتمد مالیاتی نوع اول با مجوز سازمان امور مالیاتی است و با دادههای شما طبق ضوابط محرمانگی و حریم خصوصی رفتار میکند.
پیشنیازها
- دسترسی به پایگاه داده نرمافزار و امکان ساخت View و حساب محدود
- فردی آشنا با ساختار دادههای فروش نرمافزار
- رایانه ویندوزی (ویندوز ۱۰ یا ۱۱، یا ویندوز سرور ۲۰۱۶ به بالا) برای نصب ایجنت
- دسترسی خروجی HTTPS از آن رایانه به api.mega-pay.ir؛ بدون نیاز به پورت ورودی
- برای پایگاه دادههای غیر از SQL Server: هماهنگی با پشتیبانی آسا و ارائه ساختار دادههای فروش
- نگهداری شناسه کالا/خدمت و اطلاعات خریدار در نرمافزار مبدأ
پیشنیاز مشترک همه روشها، ثبتنام در پنل آسا و دریافت شناسه یکتای حافظه مالیاتی با کلید معتمد آسا است. راهنمای ثبتنام و دریافت شناسه یکتا را ببینید.
مستندات و لینکهای این روش
- راهنمای ساخت View و Stored Procedureراهنمای فنی عمومی: مشخصات کامل ستونها، قواعد، نمونه View، مجوزهای حساب محدود و خطاهای رایج.
- دانلود ایجنت (ASA TSP Sync) و راهنمای نصبنصاب ایجنت و راهنمای گامبهگام نصب و راهاندازی.
- اتصال نرمافزار حسابداریشیوه کار ایجنت و حالت خودکار که در این روش هم یکسان است.
- هماهنگی اتصال با پشتیبانی آسابرای طراحی اتصال، بهویژه اگر پایگاه داده شما SQL Server نیست، با پشتیبانی آسا تماس بگیرید.
کدام پایگاه دادهها قابل اتصالاند؟
هر پایگاه دادهای که دادههای فروش شما در آن نگهداری میشود قابل اتصال است. تفاوت فقط در شیوه پیادهسازی است.
| پایگاه داده | شیوه اتصال | پیادهسازی |
|---|---|---|
| SQL Server | ایجنت مستقیم از View روی پایگاه داده نرمافزار میخواند | تیم فنی شما با راهنمای عمومی آسا |
| Access، MySQL، PostgreSQL، Oracle و سایر پایگاههای داده | اتصال اختصاصی؛ برای نمونه انتقال دادههای فروش به پایگاه داده واسط و خواندن با همان View | تیم فنی آسا با همکاری شما |
برای تیم فنی: چه چیزهایی در پایگاه داده ساخته میشود؟
| شیء | سازنده | کاربرد |
|---|---|---|
dbo.MegaPayInvoiceView | تیم فنی (الزامی) | View اصلی؛ هر ردیف یک قلم از صورتحساب اصلی، اصلاحی یا ابطالی |
dbo.MegaPayInvoiceViewReturn | تیم فنی (در صورت نیاز) | صورتحسابهای برگشت از فروش |
dbo.MegaPayInvoiceLog | ایجنت | جدول گزارش؛ نتیجه ثبت، شماره مالیاتی و وضعیت هر صورتحساب |
dbo.MegaPayInvoiceReturnLog | ایجنت | جدول گزارش برگشت از فروش |
dbo.MegaPayUpdateData | تیم فنی (اختیاری) | رویهای برای انتقال نتیجه از جدول گزارش به جدولهای نرمافزار |
نمونهای از ستونهای View
جدول زیر فقط ستونهای پرکاربرد را نشان میدهد. فهرست کامل، همراه ستونهای اختصاصی هر الگو، در راهنمای فنی آمده است.
| ستون | توضیح |
|---|---|
InvoiceId | شناسه داخلی صورتحساب؛ ردیفهای همشناسه یک صورتحساب را میسازند |
InvoiceNo | شماره صورتحساب |
InvoiceDateGregorian | تاریخ و زمان صدور |
InvoiceType | نوع صورتحساب ۱ یا ۲؛ اگر خالی باشد از اطلاعات خریدار تعیین میشود |
InvoicePattern | الگوی صورتحساب؛ اگر خالی باشد فروش (۱) |
InvoiceIssue | موضوع: اصلی ۱، اصلاحی ۲، ابطالی ۳ |
InvoiceSourceTaxId | شماره مالیاتی صورتحساب مرجع؛ برای اصلاحی و ابطالی الزامی |
ItemID | شناسه ردیف |
ItemStuffid | شناسه کالا/خدمت |
ItemQty | تعداد یا مقدار |
ItemFee | مبلغ واحد (ریال) |
ItemDiscount | تخفیف ردیف |
ItemVatRate | نرخ مالیات بر ارزش افزوده |
چند قاعده مهم برای تیم فنی
- هر ردیف View یک قلم است؛ اطلاعات سربرگ و خریدار باید در همه ردیفهای یک صورتحساب یکسان باشد.
- ستونهایی که کاربرد ندارند حذف نمیشوند و با مقدار خالی (NULL) برمیگردند.
- تغییر صورتحسابی که ثبت شده باعث ارسال مجدد نمیشود؛ برای اصلاح، صورتحساب جدید با موضوع اصلاحی بسازید.
- حذف ردیف از View صورتحساب را ابطال نمیکند؛ ابطال باید با موضوع ابطالی ثبت شود.
- برگشت کامل همه اقلام بهصورت صورتحساب ابطالی ثبت میشود، نه برگشت از فروش.
پرسشهای متداول درباره روش «پایگاه داده اختصاصی»
ایجنت دقیقاً چه کاری میکند؟
ایجنت برنامه کوچکی است که روی سیستم شما نصب میشود، دادههای صورتحساب را از پایگاه داده میخواند و با ارتباط رمزنگاریشده برای آسا میفرستد. نتیجه هر صورتحساب را هم در جدول گزارش مینویسد. کار دیگری روی سیستم شما انجام نمیدهد.
آیا میتوان ایجنت را در شبکه ایزوله نصب کرد؟
بله. ایجنت به پورت ورودی نیاز ندارد و فقط باید بتواند با HTTPS به سرور آسا وصل شود. میتوانید بقیه دسترسیهای شبکه را ببندید و برای ایجنت حسابی بسازید که فقط View صورتحساب را میبیند.
آیا این روش با MySQL، PostgreSQL، Oracle یا Access هم کار میکند؟
بله. نوع پایگاه داده محدودیتی ندارد. ایجنت مستقیم از SQL Server میخواند و برای پایگاههای داده دیگر، تیم فنی آسا راه اتصال را طراحی و پیاده میکند. برای شروع با پشتیبانی آسا تماس بگیرید.
نگاشت داده را چه کسی انجام میدهد؟
روی SQL Server، تیم فنی، مدیر پایگاه داده یا شرکت پشتیبان نرمافزار شما با راهنمای عمومی آسا View را میسازد. اگر پایگاه داده دیگری دارید، پیادهسازی را تیم فنی آسا با همکاری شما انجام میدهد.
آیا ایجنت به همه دادههای ما دسترسی دارد؟
خیر. ایجنت با حسابی کار میکند که شما میسازید و فقط View صورتحساب را میخواند. چیزی که در View نباشد خوانده و ارسال نمیشود و ایجنت مستقیم در جدولهای نرمافزار شما نمینویسد.
تفاوت این روش با وبسرویس چیست؟
در این روش نرمافزار شما تغییر نمیکند و ایجنت داده را میخواند؛ در وبسرویس، نرمافزار شما خودش صورتحساب را برای آسا میفرستد. اگر تغییر کد نرمافزار سخت است، اتصال از طریق پایگاه داده سادهتر است؛ اگر ثبت لحظهای یا استقلال از ویندوز میخواهید، وبسرویس مناسبتر است.
اطلاعات فروشنده را هم باید در View بیاوریم؟
خیر. هویت فروشنده از کسبوکار و حافظه مالیاتی تعریفشده در آسا گرفته میشود و در View فقط اطلاعات صورتحساب، اقلام و خریدار میآید.
روشهای دیگر اتصال به آسا
- پنل تحت وبسادهترین راه شروع؛ بدون نصب و بدون دانش فنی
- فایل اکسلدهها یا صدها صورتحساب با یک بار بارگذاری
- وبسرویس (API)یکپارچهسازی کامل برای تیمهای فنی و سامانههای فروش
- اتصال نرمافزار حسابداریصورتحسابهای سپیدار، هلو، تدبیر و سیبا، مستقیم در پنل آسا
- کارتخوانتراکنشهای پوز را به صورتحساب تبدیل کنید
برای شروع با این روش آمادهاید؟
ثبتنام در آسا رایگان است. اگر مطمئن نیستید این روش برای کسبوکار شما مناسب است، کارشناسان آسا راهنماییتان میکنند.

