All Projects → salyangoz → pazaryeri-parasut

salyangoz / pazaryeri-parasut

Licence: MIT license
N11, Gittigidiyor, Hepsiburada Pazaryerlerini; Paraşüt Web Tabanlı Fatura ve Tahsilat Yönetimine bağlayan API

Programming Languages

PHP
23972 projects - #3 most used programming language
HTML
75241 projects

Projects that are alternatives of or similar to pazaryeri-parasut

taracode
Hotels booking system
Stars: ✭ 28 (-36.36%)
Mutual labels:  ecommerce
grandnode2
Free, Open source, Fast, Headless, Multi-tenant eCommerce platform built with .NET Core, MongoDB, AWS DocumentDB, Azure CosmosDB, LiteDB, Vue.js.
Stars: ✭ 626 (+1322.73%)
Mutual labels:  ecommerce
awesome-medusajs
A curated list of awesome resources related to MedusaJS 😎
Stars: ✭ 113 (+156.82%)
Mutual labels:  ecommerce
FoodDelivery
E-Commerce demo project. Food delivery application project made with.
Stars: ✭ 106 (+140.91%)
Mutual labels:  ecommerce
magento-2-pronko-consulting-theme
Pronko Consulting Theme for Magento 2
Stars: ✭ 47 (+6.82%)
Mutual labels:  ecommerce
spartacus-capybara
SAP Spartacus Theme based on https://storefrontui.io look and feel and design system. Headless storefront solution for Hybris. Always Open Source, MIT license. Made with 💙 by Divante
Stars: ✭ 44 (+0%)
Mutual labels:  ecommerce
taxjar-woocommerce-plugin
WooCommerce Sales Tax Plugin by TaxJar
Stars: ✭ 26 (-40.91%)
Mutual labels:  ecommerce
commercetools-sync-java
Java library for importing and syncing (taking care of changes) data into one or more commercetools projects from external data files or from another commercetools project.
Stars: ✭ 26 (-40.91%)
Mutual labels:  ecommerce
therack
Laravel 7 e-commerce website
Stars: ✭ 77 (+75%)
Mutual labels:  ecommerce
Shopping-Cart-MERN
💸 Simple Online Shopping Cart made with the MERN Stack
Stars: ✭ 34 (-22.73%)
Mutual labels:  ecommerce
dress-shop
A full stack server side rendered e-commerce built with Next.js, TypeScript, Node.js, Express and MongoDB.
Stars: ✭ 164 (+272.73%)
Mutual labels:  ecommerce
headstart
A complete and opinionated eCommerce solution using OrderCloud as the backbone - built with .NET Core and Angular
Stars: ✭ 28 (-36.36%)
Mutual labels:  ecommerce
magento2-freeshipping-progress-bar
Add a free shipping eligibility progress bar to your Magento 2 websites cart to promote increased order value.
Stars: ✭ 37 (-15.91%)
Mutual labels:  ecommerce
retailbox
🛍️RetailBox - eCommerce Recommender System using Machine Learning
Stars: ✭ 32 (-27.27%)
Mutual labels:  ecommerce
grav-skeleton-gravcart
The Grav Shopping Cart skeleton
Stars: ✭ 11 (-75%)
Mutual labels:  ecommerce
frontend-developer-coding-challenge
Are your looking for a remote developer job? Solve this frontend developer challenge and show us what you can do and what you are an expert at!
Stars: ✭ 112 (+154.55%)
Mutual labels:  ecommerce
shop-acai
🍇 Full stacks de um sistema de açai simples para estudos
Stars: ✭ 18 (-59.09%)
Mutual labels:  ecommerce
production
Shopware 6 production template
Stars: ✭ 156 (+254.55%)
Mutual labels:  ecommerce
core-next
core-next microservice framework
Stars: ✭ 14 (-68.18%)
Mutual labels:  ecommerce
taxjar.net
Sales Tax API Client for .NET / C#
Stars: ✭ 21 (-52.27%)
Mutual labels:  ecommerce

N11, Gittigidiyor, Hepsiburada "Pazaryeri Paraşüt Entegrasyonu"

Paraşüt ön muhasebe ve fatura programının pazaryerleri ile otomatik entegrasyonunu sağlayan PHP(Laravel) kodudur. Bu paket sayesinde N11, Gittigidiyor ve Hepsiburada satışlarınızı gerekli ayarları yaparak satışlarınızın belirlediğiniz aralıklarda paraşüte işlenmesini sağlar. Eğer e-Fatura veya e-Arşiv müşterisiyseniz paraşüt üzerinde bunların gerekli bilgilere göre e-Arşiv veya e-Fatura olarak gönderilmesini sağlar. Paraşüt'ün http://api.parasut.com/docs bölümündeki Satış Faturaları - Yeni Fatura ve e-Arşiv/e-Fatura kayıt atmasını kullanır.

Framework : Laravel

Latest Version on Packagist Software License

Nasıl Yüklenir?

Step: 1

Paket bir Laravel paketi olduğu için öncelikle bir Laravel kurulumunuzun yapılmış olması gerekiyor. Laravel nasıl kurulur.

Step: 2

Paketi yüklemek için Laravel'in yüklü olduğu root klasörde aşağıdaki komutu çalıştırmanız gerekli

$ composer require salyangoz/pazaryeri-parasut

Step: 3

Eklentinin mevcut Laravel'de kullanılabilmesi için Laravel klasörünüzdeki Config/app.php'ye şu değişiklikleri eklemeniz gerekli:

    'providers' => [
        salyangoz\pazaryeriparasut\PazaryeriParasutServiceProvider::class
    ],

Step: 4

İşlenen siparişlerin tekrar aktarılmaması için, Paraşüte işlenen faturaların kayıt numaralarının tutulduğu Local store olarak kullanılacak parasut-data.json dosyasını storage/app dizinin içerisine oluşturmanız ve dosyanın yazılabilir olduğundan emin olmanız gerekli.

Linux için örnek komut (Laravel root klasörüündeyken) :

$ touch storage/app/parasut-data.json
$ chmod 777 storage/app/parasut-data.json

Step 5: Enviroment ayarlamaları

Paket, proje için kullanılacak N11,Gittigidiyor,Hepsiburada ve Paraşüt bilgilerinizi Laravel projenizdeki .env dosyasından alır. Hangi değişkenlerin tanımlanacağını bu repodaki .env.example dosyasından bakabilirsiniz.

Opsiyonel:

Eğer projeniz için paketteki sabitleri değiştirmeniz gerekirse (ya da paketi geliştirmek isterseniz) config değerleri paket ayarlarını publish etmeniz gerekir bunu yapmak için aşağıdaki komutu kullanabilirsiniz:

php artisan vendor:publish --provider="salyangoz\pazaryeriparasut\PazaryeriParasutServiceProvider"

Bu komutu çalıştırmanız ardından paketin config.php dosyası Laravel projenizin config dizinine pazaryeri-parasut.php olarak kopyalanacaktır ve burda yaptığınız değişiklikler paket içindeki config dosyası ile birleşecek ya da overrite olacaktır.

Step 6: Laravel task

Paket siparişleri belirlenen aralıklarla Pazaryeri api servislerine istek yaparak göndermekte. Bunun da gerçekleşmesi için Laravel'e task eklememiz ve zamanlamak gerekli. Bunun için aşağıdaki örneği kullanabilirsiniz.

App\Console\Kernel.php

namespace App\Console;

use Illuminate\Console\Scheduling\Schedule;
use Illuminate\Foundation\Console\Kernel as ConsoleKernel;

class Kernel extends ConsoleKernel
{

    protected $commands = [
        \salyangoz\pazaryeriparasut\Commands\Transfer::class
    ];

    /**
     * Define the application's command schedule.
     *
     * @param  \Illuminate\Console\Scheduling\Schedule  $schedule
     * @return void
     */
    protected function schedule(Schedule $schedule)
    {
		      $schedule->command('pazaryeriparasut:transfer')->everyFiveMinutes();
    }

    /**
     * Register the Closure based commands for the application.
     *
     * @return void
     */
    protected function commands()
    {
        require base_path('routes/console.php');
    }
}

Önemli Not: Laravel task zamanlayıcının çalışması için Web sunucunuzda cron'un çalışıyor olması gerekli.

Laravel task zamanlama nasıl tanımlanır

Laravel task zamanlamanın da çalışır halde olduğundan emin olduktan olduğumuzda artık hazırız demektir!

Aşağıdaki Konfigurasyonları da tamamladığınızda, taskın doğru çalışıp çalışmadığını, komut satırından doğrudan çalıştırarak test edebilirsiniz:

$ php artisan pazaryeriparasut:transfer

Nasıl Kullanılır?

Paraşüt API Konfigürasyon Süreçleri

  1. [email protected] adresine Paraşüt'e kayıtlı olduğunuz e-posta adresinden API kullanmak istediğinizi ve bunun bilgilerini sizinle paylaşılmasını istediğiniz bir e-posta gönderiniz.
  2. Gelen bilgilerden Application Id, Secret ve paraşüte giriş yaptığınızda üst linkte bulunan 6 haneyle başlayan numara bölümünü ve faturalarınız için açacağınız kategori idsini projenizin .env dosyasına girin.
PARASUT_CLIENT_ID=
PARASUT_CLIENT_SECRET=
PARASUT_USERNAME=
PARASUT_COMPANY_ID=
PARASUT_PASSWORD=
PARASUT_CATEGORY_ID=
PARASUT_ACCOUNT_ID=

Pazaryeri paraşüt entegrasyonu pazaryerlerinde kesilen Satış faturalarının otomatik olarak belirleyeceğiniz dakika aralıklarında Paraşüt'e işlenmesi için kullanılır. Paraşüt üzerinden e-Fatura mükellefi olan kullanıcılar bu sistemi kullandığında otomatik olarak Pazaryerlerinde onaylanmış veya kargoya hazır hale getirilmiş durumlarda faturaları kesilir.

Gittigidiyor API Konfigürasyon Süreçleri

  1. http://dev.gittigidiyor.com adresinden mağazanızın bilgileri ile giriş yapın.
  2. Menüden API Anahtarları bölümüne girin.
  3. Yeni API anahtarı almak için tıklayın.
  4. Anahtar bilgilerini Config/Parasut-Pazaryeri.php dosyası içindeki bilgilere girin.
  5. Daha sonra gittigidiyor üzerinde AUTH_USERNAME ve AUTH_PASSWORD alabilmek için gittigidiyor destek ekibine [email protected] mail adresine mesaj atın. Aşağıda demo mesajı görebilirsiniz.
  6. Gelen bilgileri laravel projenizin .env dosyası içindeki bilgilere işleyebilirsiniz.
GITTIGIDIYOR_API_KEY=
GITTIGIDIYOR_SECRET_KEY=
GITTIGIDIYOR_USERNAME=
GITTIGIDIYOR_PASSWORD=
GITTIGIDIYOR_AUTH_USER=
GITTIGIDIYOR_AUTH_PASSWORD=
GITTIGIDIYOR_LANG=tr

Paraşüt gittigidiyor entegrasyonunun çalışabilmesi için Server veya Hosting ayarlarınızda 8080 ve 8443 portlarının açık olması gerekmektedir.


API girişinizi yapabilmek için API kullanıcı rolü tanımlaması rica ediyoruz. Aşağıda kullanıcı bilgilerimiz mevcuttur. Mağaza adımız “mağaza-adınız”.  

Dilerseniz bu mail sonrası gittigidiyor size bazı bilgiler soracaktır. Bu bilgileri hazır tutmanız için aşağıda bu bilgilerin neler olduğunu paylaşıyoruz.

Hesap sahibinin;

Ad:
Soyad:
Mail adresi:
Telefonu:
Firma Ad:
Firma Telefonu:
Firma Web sitesi:
GittiGidiyor Kullanıcı Adı:
Kullanım amacınız ve uygulamanız hakkında detaylı bilgi:

Entegrasyon Firması Adı:
Firma Email Adresi:
Firma Telefonu:

### N11 API Konfigürasyon Süreçleri

  1. http://so.n11.com adresinden mağazanızın bilgileri ile giriş yapın.
  2. Yukarıda bulunan Hesabım - API Hesapları menüsüne girdikten sonra +Yeni Hesap Oluştur buttonuna tıklayın. Bilgilerinizi mağazanızın kayıtlı olduğu e-posta adresinize gelecektir.
  3. Bu bilgileri laravel projenizin .env dosyasına girin.
N11_APP_KEY=
N11_APP_SECRET=

Hepsiburada Konfigürasyon Süreçleri

  1. [email protected] adresine Hepsiburada mağazasına kayıtlı olan e-posta ile Test ve Canlı entegrasyon bilgilerini isteyiniz.
  2. Gönderilen Portal Kullanıcı Adı, Şifre ve Merchant ID bölümlerini laravel projenizdeki .env dosyasına girin.
HEPSIBURADA_USERNAME=
HEPSIBURADA_MERCHANT_ID=
HEPSIBURADA_PASSWORD=

Güvenlik

Herhangi bir güvenlik açığı yakalarsanız, issue açmak yerine [email protected] adresine bildirim yapabilirsiniz.

Geliştirilme Platformu

  • Laravel - PHP Framework For Web Artisans

Versiyonlama

  • SemVer versiyonlamayı kullanıyoruz. Versiyonlamaları görebilmek için tag bölümünü ziyaret edin.

Katılımcılar

Lisans

The MIT License (MIT). Please see License File for more information.

Ekstralar

Salyangoz Web Adresi

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].