Impacted versions: 
9.0x

Steps to reproduce:
1. Go to Accounting, create customer invoice and validate. Check the Invoice-Number (for example: INV/2016/0010)
2.  Go to Point of Sale and select New Session
3. Add any product or just close & confirm the session
4. Close the POS Session (Validate Closing & Post Entries)
5. Create new customer invoice and validate it. Check the Invoice-Number. 

Current behavior:
Gap between the first and the last invoice because of the closed POS-Session. 

Expected behavior:
No Gap between the two invoices like in Version 8. 

I've tested this behaviour on a 8 and a 9 runbot and my own system. There is no gap on 8 but on 9. I think this is not a feature but a bug. I can't find the missing sequence-numbers in any Journals or in the invoice-list. 

The only way to avoid this, is to select another Sales Journal in the POS-Configuration. But then you can't create an invoice from the POS. 

Is it possible to get the "lost" invoice-numbers somewhere? We are not allowed to have gaps in the invoice-numbering here in Germany. 

context = dict(self.env.context)
        context.pop('pos_session_id', False)
        for statement in self.session_id.statement_ids:
            if statement.id == statement_id:
                journal_id = statement.journal_id.id
                break
            elif statement.journal_id.id == journal_id:
                statement_id = statement.id
                break
        if not statement_id:
            raise UserError(_('You have to open at least one cashbox.'))
        args.update({
            'statement_id': statement_id,
            'pos_statement_id': self.id,
            'journal_id': journal_id,
            'ref': self.session_id.name,
        })
        self.env['account.bank.statement.line'].with_context(context).create(args)
        return statement_id
    @api.multi
    def refund(self):
        """Create a copy of order  for refund order"""
        PosOrder = self.env['pos.order']
        current_session = self.env['pos.session'].search([('state', '!=', 'closed'), ('user_id', '=', self.env.uid)], limit=1)
        if not current_session:
            raise UserError(_('To return product(s), you need to open a session that will be used to register the refund.'))
        for order in self:
            clone = order.copy({
                
                'name': order.name + _(' REFUND'),